brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.4 KiB · cfc0bd0 Raw
69 lines · plain
1; RUN: llc -mtriple=hexagon < %s2; REQUIRES: asserts3; Used to fail with: Assertion `VT.getSizeInBits() == Operand.getValueType().getSizeInBits() && "Cannot BITCAST between types of different sizes!"' failed.4 5target datalayout = "e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:32:32-f64:64:64-f32:32:32-a0:0-n32"6target triple = "hexagon-unknown-linux-gnu"7 8define void @foo() nounwind {9entry:10  br label %while.body11 12while.body:                                       ; preds = %if.then155, %if.then12, %entry13  %cmp.i = icmp eq ptr undef, null14  br i1 %cmp.i, label %lab_ci.exit, label %if.end.i15 16if.end.i:                                         ; preds = %while.body17  unreachable18 19lab_ci.exit:      ; preds = %while.body20  br i1 false, label %if.then, label %if.else21 22if.then:                                          ; preds = %lab_ci.exit23  unreachable24 25if.else:                                          ; preds = %lab_ci.exit26  br i1 undef, label %if.then12, label %if.else1727 28if.then12:                                        ; preds = %if.else29  br label %while.body30 31if.else17:                                        ; preds = %if.else32  br i1 false, label %if.then22, label %if.else3533 34if.then22:                                        ; preds = %if.else1735  unreachable36 37if.else35:                                        ; preds = %if.else1738  br i1 false, label %if.then40, label %if.else8339 40if.then40:                                        ; preds = %if.else3541  unreachable42 43if.else83:                                        ; preds = %if.else3544  br i1 false, label %if.then88, label %if.else15045 46if.then88:                                        ; preds = %if.else8347  unreachable48 49if.else150:                                       ; preds = %if.else8350  %cmp154 = icmp eq i32 undef, 051  br i1 %cmp154, label %if.then155, label %if.else20852 53if.then155:                                       ; preds = %if.else15054  %call191 = call i32 @strtol() nounwind55  %conv192 = trunc i32 %call191 to i1656  %_p_splat_one = insertelement <1 x i16> undef, i16 %conv192, i32 057  %_p_splat = shufflevector <1 x i16> %_p_splat_one, <1 x i16> undef, <2 x i32> zeroinitializer58  %0 = sext <2 x i16> %_p_splat to <2 x i32>59  %mul198p_vec = shl <2 x i32> %0, <i32 2, i32 2>60  %1 = extractelement <2 x i32> %mul198p_vec, i32 061  store i32 %1, ptr null, align 462  br label %while.body63 64if.else208:                                       ; preds = %if.else15065  unreachable66}67 68declare i32 @strtol() nounwind69