llvm/test/Transforms/Reassociate/fp-expr.ll
Owen Anderson 108258ac78 Fix another infinite loop in Reassociate caused by Constant::isZero().
Not all zero vectors are ConstantDataVector's.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@253723 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-20 22:34:48 +00:00

34 lines
670 B
LLVM

; 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
}
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
}
; Function Attrs: optsize
declare <4 x float> @blam()
; Function Attrs: optsize
declare void @wombat(<4 x float>)