26 lines · plain
1; RUN: llc -mtriple=hexagon < %s2;3; Used to fail with "Cannot select: v2i32,ch = load 0x16c5890, 0x16f76e0, 0x16f76e0<LD2[undef](align=8), sext from v2i8>"4 5target triple = "hexagon-unknown-linux-gnu"6 7define void @foo(ptr %p) nounwind {8entry:9 br label %polly.loop_header10 11polly.loop_after: ; preds = %polly.loop_header12 unreachable13 14polly.loop_header: ; preds = %polly.loop_body, %entry15 %0 = icmp sle i32 undef, 6316 br i1 %0, label %polly.loop_body, label %polly.loop_after17 18polly.loop_body: ; preds = %polly.loop_header19 %_p_vec_full = load <2 x i8>, ptr %p, align 820 %1 = sext <2 x i8> %_p_vec_full to <2 x i32>21 %p_vec = mul <2 x i32> %1, <i32 3, i32 3>22 %mulp_vec = add <2 x i32> %p_vec, <i32 21, i32 21>23 store <2 x i32> %mulp_vec, ptr undef, align 824 br label %polly.loop_header25}26