mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 11:42:57 +01:00
another more interesting test.
llvm-svn: 86445
This commit is contained in:
parent
a8adfad5b9
commit
d8faf7adb4
@ -253,3 +253,34 @@ end:
|
||||
; CHECK: ret i64
|
||||
}
|
||||
|
||||
declare void @test13f(double, i32)
|
||||
|
||||
define void @test13(i1 %cond, i32 %V1, double %Vald) {
|
||||
entry:
|
||||
%tmp42 = zext i32 %V1 to i128
|
||||
br i1 %cond, label %end, label %two
|
||||
|
||||
two:
|
||||
%Val = bitcast double %Vald to i64
|
||||
%tmp36 = zext i64 %Val to i128 ; <i128> [#uses=1]
|
||||
%tmp37 = shl i128 %tmp36, 64 ; <i128> [#uses=1]
|
||||
%ins39 = or i128 %tmp42, %tmp37 ; <i128> [#uses=1]
|
||||
br label %end
|
||||
|
||||
end:
|
||||
%tmp869.0 = phi i128 [ %tmp42, %entry ], [ %ins39, %two ]
|
||||
%tmp32 = trunc i128 %tmp869.0 to i32
|
||||
%tmp29 = lshr i128 %tmp869.0, 64 ; <i128> [#uses=1]
|
||||
%tmp30 = trunc i128 %tmp29 to i64 ; <i64> [#uses=1]
|
||||
%tmp31 = bitcast i64 %tmp30 to double
|
||||
|
||||
call void @test13f(double %tmp31, i32 %tmp32)
|
||||
ret void
|
||||
; CHECK: @test13
|
||||
; CHECK-NOT: zext
|
||||
; CHECK: end:
|
||||
; CHECK-NEXT: phi double [ 0.000000e+00, %entry ], [ %Vald, %two ]
|
||||
; CHECK-NEXT: call void @test13f(double {{[^,]*}}, i32 %V1)
|
||||
; CHECK: ret void
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user