xref: /aosp_15_r20/external/llvm/test/Transforms/EarlyCSE/floatingpoint.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -S -early-cse | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker; Ensure we don't simplify away additions vectors of +0.0's (same as scalars).
4*9880d681SAndroid Build Coastguard Workerdefine <4 x float> @fV( <4 x float> %a) {
5*9880d681SAndroid Build Coastguard Worker       ; CHECK: %b = fadd <4 x float> %a, zeroinitializer
6*9880d681SAndroid Build Coastguard Worker       %b = fadd  <4 x float> %a, <float 0.0,float 0.0,float 0.0,float 0.0>
7*9880d681SAndroid Build Coastguard Worker       ret <4 x float> %b
8*9880d681SAndroid Build Coastguard Worker}
9*9880d681SAndroid Build Coastguard Worker
10*9880d681SAndroid Build Coastguard Workerdefine <4 x float> @fW( <4 x float> %a) {
11*9880d681SAndroid Build Coastguard Worker       ; CHECK: ret <4 x float> %a
12*9880d681SAndroid Build Coastguard Worker       %b = fadd  <4 x float> %a, <float -0.0,float -0.0,float -0.0,float -0.0>
13*9880d681SAndroid Build Coastguard Worker       ret <4 x float> %b
14*9880d681SAndroid Build Coastguard Worker}
15