2015-11-20 16:16:13 +08:00
|
|
|
; RUN: opt -S -reassociate < %s | FileCheck %s
|
|
|
|
|
|
|
|
define void @test1() {
|
|
|
|
; CHECK-LABEL: @test1
|
|
|
|
; CHECK: call
|
|
|
|
; CHECK: fsub
|
|
|
|
; CHECK: fadd
|
|
|
|
%tmp = tail call <4 x float> @blam()
|
|
|
|
%tmp23 = fsub fast <4 x float> undef, %tmp
|
|
|
|
%tmp24 = fadd fast <4 x float> %tmp23, undef
|
|
|
|
tail call void @wombat(<4 x float> %tmp24)
|
|
|
|
ret void
|
|
|
|
}
|
|
|
|
|
2015-11-21 06:34:48 +08:00
|
|
|
define half @test2() {
|
|
|
|
; CHECK-LABEL: @test2
|
|
|
|
; CHECK: fsub
|
|
|
|
; CHECK: fsub
|
|
|
|
; CHECK: fadd
|
|
|
|
%tmp15 = fsub fast half undef, undef
|
|
|
|
%tmp17 = fsub fast half undef, %tmp15
|
|
|
|
%tmp18 = fadd fast half undef, %tmp17
|
|
|
|
ret half %tmp18
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-11-20 16:16:13 +08:00
|
|
|
; Function Attrs: optsize
|
|
|
|
declare <4 x float> @blam()
|
|
|
|
|
|
|
|
; Function Attrs: optsize
|
|
|
|
declare void @wombat(<4 x float>)
|
|
|
|
|