@@ -889,10 +889,7 @@ define <vscale x 2 x double> @fsub_d_sel(<vscale x 2 x double> %a, <vscale x 2 x
889
889
define <vscale x 8 x half > @fadd_h_sel_negzero (<vscale x 8 x half > %a , <vscale x 8 x half > %b , <vscale x 8 x i1 > %mask ) {
890
890
; CHECK-LABEL: fadd_h_sel_negzero:
891
891
; CHECK: // %bb.0:
892
- ; CHECK-NEXT: mov w8, #32768 // =0x8000
893
- ; CHECK-NEXT: mov z2.h, w8
894
- ; CHECK-NEXT: sel z1.h, p0, z1.h, z2.h
895
- ; CHECK-NEXT: fadd z0.h, z0.h, z1.h
892
+ ; CHECK-NEXT: fadd z0.h, p0/m, z0.h, z1.h
896
893
; CHECK-NEXT: ret
897
894
%nz = fneg <vscale x 8 x half > zeroinitializer
898
895
%sel = select <vscale x 8 x i1 > %mask , <vscale x 8 x half > %b , <vscale x 8 x half > %nz
@@ -903,10 +900,7 @@ define <vscale x 8 x half> @fadd_h_sel_negzero(<vscale x 8 x half> %a, <vscale x
903
900
define <vscale x 4 x float > @fadd_s_sel_negzero (<vscale x 4 x float > %a , <vscale x 4 x float > %b , <vscale x 4 x i1 > %mask ) {
904
901
; CHECK-LABEL: fadd_s_sel_negzero:
905
902
; CHECK: // %bb.0:
906
- ; CHECK-NEXT: mov w8, #-2147483648 // =0x80000000
907
- ; CHECK-NEXT: mov z2.s, w8
908
- ; CHECK-NEXT: sel z1.s, p0, z1.s, z2.s
909
- ; CHECK-NEXT: fadd z0.s, z0.s, z1.s
903
+ ; CHECK-NEXT: fadd z0.s, p0/m, z0.s, z1.s
910
904
; CHECK-NEXT: ret
911
905
%nz = fneg <vscale x 4 x float > zeroinitializer
912
906
%sel = select <vscale x 4 x i1 > %mask , <vscale x 4 x float > %b , <vscale x 4 x float > %nz
@@ -917,10 +911,7 @@ define <vscale x 4 x float> @fadd_s_sel_negzero(<vscale x 4 x float> %a, <vscale
917
911
define <vscale x 2 x double > @fadd_d_sel_negzero (<vscale x 2 x double > %a , <vscale x 2 x double > %b , <vscale x 2 x i1 > %mask ) {
918
912
; CHECK-LABEL: fadd_d_sel_negzero:
919
913
; CHECK: // %bb.0:
920
- ; CHECK-NEXT: mov x8, #-9223372036854775808 // =0x8000000000000000
921
- ; CHECK-NEXT: mov z2.d, x8
922
- ; CHECK-NEXT: sel z1.d, p0, z1.d, z2.d
923
- ; CHECK-NEXT: fadd z0.d, z0.d, z1.d
914
+ ; CHECK-NEXT: fadd z0.d, p0/m, z0.d, z1.d
924
915
; CHECK-NEXT: ret
925
916
%nz = fneg <vscale x 2 x double > zeroinitializer
926
917
%sel = select <vscale x 2 x i1 > %mask , <vscale x 2 x double > %b , <vscale x 2 x double > %nz
@@ -931,10 +922,7 @@ define <vscale x 2 x double> @fadd_d_sel_negzero(<vscale x 2 x double> %a, <vsca
931
922
define <vscale x 8 x half > @fsub_h_sel_negzero (<vscale x 8 x half > %a , <vscale x 8 x half > %b , <vscale x 8 x i1 > %mask ) {
932
923
; CHECK-LABEL: fsub_h_sel_negzero:
933
924
; CHECK: // %bb.0:
934
- ; CHECK-NEXT: mov w8, #32768 // =0x8000
935
- ; CHECK-NEXT: mov z2.h, w8
936
- ; CHECK-NEXT: sel z1.h, p0, z1.h, z2.h
937
- ; CHECK-NEXT: fsub z0.h, z0.h, z1.h
925
+ ; CHECK-NEXT: fsub z0.h, p0/m, z0.h, z1.h
938
926
; CHECK-NEXT: ret
939
927
%nz = fneg <vscale x 8 x half > zeroinitializer
940
928
%sel = select <vscale x 8 x i1 > %mask , <vscale x 8 x half > %b , <vscale x 8 x half > %nz
@@ -945,10 +933,7 @@ define <vscale x 8 x half> @fsub_h_sel_negzero(<vscale x 8 x half> %a, <vscale x
945
933
define <vscale x 4 x float > @fsub_s_sel_negzero (<vscale x 4 x float > %a , <vscale x 4 x float > %b , <vscale x 4 x i1 > %mask ) {
946
934
; CHECK-LABEL: fsub_s_sel_negzero:
947
935
; CHECK: // %bb.0:
948
- ; CHECK-NEXT: mov w8, #-2147483648 // =0x80000000
949
- ; CHECK-NEXT: mov z2.s, w8
950
- ; CHECK-NEXT: sel z1.s, p0, z1.s, z2.s
951
- ; CHECK-NEXT: fsub z0.s, z0.s, z1.s
936
+ ; CHECK-NEXT: fsub z0.s, p0/m, z0.s, z1.s
952
937
; CHECK-NEXT: ret
953
938
%nz = fneg <vscale x 4 x float > zeroinitializer
954
939
%sel = select <vscale x 4 x i1 > %mask , <vscale x 4 x float > %b , <vscale x 4 x float > %nz
@@ -959,10 +944,7 @@ define <vscale x 4 x float> @fsub_s_sel_negzero(<vscale x 4 x float> %a, <vscale
959
944
define <vscale x 2 x double > @fsub_d_sel_negzero (<vscale x 2 x double > %a , <vscale x 2 x double > %b , <vscale x 2 x i1 > %mask ) {
960
945
; CHECK-LABEL: fsub_d_sel_negzero:
961
946
; CHECK: // %bb.0:
962
- ; CHECK-NEXT: mov x8, #-9223372036854775808 // =0x8000000000000000
963
- ; CHECK-NEXT: mov z2.d, x8
964
- ; CHECK-NEXT: sel z1.d, p0, z1.d, z2.d
965
- ; CHECK-NEXT: fsub z0.d, z0.d, z1.d
947
+ ; CHECK-NEXT: fsub z0.d, p0/m, z0.d, z1.d
966
948
; CHECK-NEXT: ret
967
949
%nz = fneg <vscale x 2 x double > zeroinitializer
968
950
%sel = select <vscale x 2 x i1 > %mask , <vscale x 2 x double > %b , <vscale x 2 x double > %nz
0 commit comments