xref: /llvm-project/llvm/test/Bitcode/binaryFloatInstructions.3.2.ll (revision c8eccd1147800b8a2720ded56f42c7342812430e)
19201fb9cSMichael Kuperstein; RUN: llvm-dis < %s.bc| FileCheck %s
2*c8eccd11SDuncan P. N. Exon Smith; RUN: verify-uselistorder < %s.bc
39201fb9cSMichael Kuperstein
49201fb9cSMichael Kuperstein; BinaryFloatOperation.3.2.ll.bc was generated by passing this file to llvm-as-3.2.
59201fb9cSMichael Kuperstein; The test checks that LLVM does not misread binary float instructions from
69201fb9cSMichael Kuperstein; older bitcode files.
79201fb9cSMichael Kuperstein
89201fb9cSMichael Kupersteindefine void @fadd(float %x1, double %x2 ,half %x3, fp128 %x4, x86_fp80 %x5, ppc_fp128 %x6){
99201fb9cSMichael Kupersteinentry:
109201fb9cSMichael Kuperstein; CHECK: %res1 = fadd float %x1, %x1
119201fb9cSMichael Kuperstein  %res1 = fadd float %x1, %x1
129201fb9cSMichael Kuperstein
139201fb9cSMichael Kuperstein; CHECK-NEXT: %res2 = fadd double %x2, %x2
149201fb9cSMichael Kuperstein  %res2 = fadd double %x2, %x2
159201fb9cSMichael Kuperstein
169201fb9cSMichael Kuperstein; CHECK-NEXT: %res3 = fadd half %x3, %x3
179201fb9cSMichael Kuperstein  %res3 = fadd half %x3, %x3
189201fb9cSMichael Kuperstein
199201fb9cSMichael Kuperstein; CHECK-NEXT: %res4 = fadd fp128 %x4, %x4
209201fb9cSMichael Kuperstein  %res4 = fadd fp128 %x4, %x4
219201fb9cSMichael Kuperstein
229201fb9cSMichael Kuperstein; CHECK-NEXT: %res5 = fadd x86_fp80 %x5, %x5
239201fb9cSMichael Kuperstein  %res5 = fadd x86_fp80 %x5, %x5
249201fb9cSMichael Kuperstein
259201fb9cSMichael Kuperstein; CHECK-NEXT: %res6 = fadd ppc_fp128 %x6, %x6
269201fb9cSMichael Kuperstein  %res6 = fadd ppc_fp128 %x6, %x6
279201fb9cSMichael Kuperstein
289201fb9cSMichael Kuperstein  ret void
299201fb9cSMichael Kuperstein}
309201fb9cSMichael Kuperstein
319201fb9cSMichael Kupersteindefine void @faddFloatVec(<2 x float> %x1, <3 x float> %x2 ,<4 x float> %x3, <8 x float> %x4, <16 x float> %x5){
329201fb9cSMichael Kupersteinentry:
339201fb9cSMichael Kuperstein; CHECK: %res1 = fadd <2 x float> %x1, %x1
349201fb9cSMichael Kuperstein  %res1 = fadd <2 x float> %x1, %x1
359201fb9cSMichael Kuperstein
369201fb9cSMichael Kuperstein; CHECK-NEXT: %res2 = fadd <3 x float> %x2, %x2
379201fb9cSMichael Kuperstein  %res2 = fadd <3 x float> %x2, %x2
389201fb9cSMichael Kuperstein
399201fb9cSMichael Kuperstein; CHECK-NEXT: %res3 = fadd <4 x float> %x3, %x3
409201fb9cSMichael Kuperstein  %res3 = fadd <4 x float> %x3, %x3
419201fb9cSMichael Kuperstein
429201fb9cSMichael Kuperstein; CHECK-NEXT: %res4 = fadd <8 x float> %x4, %x4
439201fb9cSMichael Kuperstein  %res4 = fadd <8 x float> %x4, %x4
449201fb9cSMichael Kuperstein
459201fb9cSMichael Kuperstein; CHECK-NEXT: %res5 = fadd <16 x float> %x5, %x5
469201fb9cSMichael Kuperstein  %res5 = fadd <16 x float> %x5, %x5
479201fb9cSMichael Kuperstein
489201fb9cSMichael Kuperstein  ret void
499201fb9cSMichael Kuperstein}
509201fb9cSMichael Kuperstein
519201fb9cSMichael Kupersteindefine void @faddDoubleVec(<2 x double> %x1, <3 x double> %x2 ,<4 x double> %x3, <8 x double> %x4, <16 x double> %x5){
529201fb9cSMichael Kupersteinentry:
539201fb9cSMichael Kuperstein; CHECK: %res1 = fadd <2 x double> %x1, %x1
549201fb9cSMichael Kuperstein  %res1 = fadd <2 x double> %x1, %x1
559201fb9cSMichael Kuperstein
569201fb9cSMichael Kuperstein; CHECK-NEXT: %res2 = fadd <3 x double> %x2, %x2
579201fb9cSMichael Kuperstein  %res2 = fadd <3 x double> %x2, %x2
589201fb9cSMichael Kuperstein
599201fb9cSMichael Kuperstein; CHECK-NEXT: %res3 = fadd <4 x double> %x3, %x3
609201fb9cSMichael Kuperstein  %res3 = fadd <4 x double> %x3, %x3
619201fb9cSMichael Kuperstein
629201fb9cSMichael Kuperstein; CHECK-NEXT: %res4 = fadd <8 x double> %x4, %x4
639201fb9cSMichael Kuperstein  %res4 = fadd <8 x double> %x4, %x4
649201fb9cSMichael Kuperstein
659201fb9cSMichael Kuperstein; CHECK-NEXT: %res5 = fadd <16 x double> %x5, %x5
669201fb9cSMichael Kuperstein  %res5 = fadd <16 x double> %x5, %x5
679201fb9cSMichael Kuperstein
689201fb9cSMichael Kuperstein  ret void
699201fb9cSMichael Kuperstein}
709201fb9cSMichael Kuperstein
719201fb9cSMichael Kupersteindefine void @faddHalfVec(<2 x half> %x1, <3 x half> %x2 ,<4 x half> %x3, <8 x half> %x4, <16 x half> %x5){
729201fb9cSMichael Kupersteinentry:
739201fb9cSMichael Kuperstein; CHECK: %res1 = fadd <2 x half> %x1, %x1
749201fb9cSMichael Kuperstein  %res1 = fadd <2 x half> %x1, %x1
759201fb9cSMichael Kuperstein
769201fb9cSMichael Kuperstein; CHECK-NEXT: %res2 = fadd <3 x half> %x2, %x2
779201fb9cSMichael Kuperstein  %res2 = fadd <3 x half> %x2, %x2
789201fb9cSMichael Kuperstein
799201fb9cSMichael Kuperstein; CHECK-NEXT: %res3 = fadd <4 x half> %x3, %x3
809201fb9cSMichael Kuperstein  %res3 = fadd <4 x half> %x3, %x3
819201fb9cSMichael Kuperstein
829201fb9cSMichael Kuperstein; CHECK-NEXT: %res4 = fadd <8 x half> %x4, %x4
839201fb9cSMichael Kuperstein  %res4 = fadd <8 x half> %x4, %x4
849201fb9cSMichael Kuperstein
859201fb9cSMichael Kuperstein; CHECK-NEXT: %res5 = fadd <16 x half> %x5, %x5
869201fb9cSMichael Kuperstein  %res5 = fadd <16 x half> %x5, %x5
879201fb9cSMichael Kuperstein
889201fb9cSMichael Kuperstein  ret void
899201fb9cSMichael Kuperstein}
909201fb9cSMichael Kuperstein
919201fb9cSMichael Kupersteindefine void @fsub(float %x1){
929201fb9cSMichael Kupersteinentry:
939201fb9cSMichael Kuperstein; CHECK: %res1 = fsub float %x1, %x1
949201fb9cSMichael Kuperstein  %res1 = fsub float %x1, %x1
959201fb9cSMichael Kuperstein
969201fb9cSMichael Kuperstein  ret void
979201fb9cSMichael Kuperstein}
989201fb9cSMichael Kuperstein
999201fb9cSMichael Kupersteindefine void @fmul(float %x1){
1009201fb9cSMichael Kupersteinentry:
1019201fb9cSMichael Kuperstein; CHECK: %res1 = fmul float %x1, %x1
1029201fb9cSMichael Kuperstein  %res1 = fmul float %x1, %x1
1039201fb9cSMichael Kuperstein
1049201fb9cSMichael Kuperstein  ret void
1059201fb9cSMichael Kuperstein}
1069201fb9cSMichael Kuperstein
1079201fb9cSMichael Kupersteindefine void @fdiv(float %x1){
1089201fb9cSMichael Kupersteinentry:
1099201fb9cSMichael Kuperstein; CHECK: %res1 = fdiv float %x1, %x1
1109201fb9cSMichael Kuperstein  %res1 = fdiv float %x1, %x1
1119201fb9cSMichael Kuperstein
1129201fb9cSMichael Kuperstein  ret void
1139201fb9cSMichael Kuperstein}
1149201fb9cSMichael Kuperstein
1159201fb9cSMichael Kupersteindefine void @frem(float %x1){
1169201fb9cSMichael Kupersteinentry:
1179201fb9cSMichael Kuperstein; CHECK: %res1 = frem float %x1, %x1
1189201fb9cSMichael Kuperstein  %res1 = frem float %x1, %x1
1199201fb9cSMichael Kuperstein
1209201fb9cSMichael Kuperstein  ret void
1219201fb9cSMichael Kuperstein}
122