Skip to content

Commit a71dd58

Browse files
committed
Fix asm codegen for vfpclasss* and vcvtph2* instructions when using -masm=intel
1 parent c4ee893 commit a71dd58

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

gcc/config/i386/sse.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -7548,7 +7548,8 @@
75487548
[(match_operand:<ssePHmode> 1 "<round_nimm_predicate>" "<round_constraint>")]
75497549
UNSPEC_US_FIX_NOTRUNC))]
75507550
"TARGET_AVX512FP16 && <round_mode_condition>"
7551-
"vcvtph2<sseintconvertsignprefix><sseintconvert>\t{<round_mask_op2>%1, %0<mask_operand2>|%0<mask_operand2>, %1<round_mask_op2>}"
7551+
;; %X1 so that we don't emit any *WORD PTR for -masm=intel.
7552+
"vcvtph2<sseintconvertsignprefix><sseintconvert>\t{<round_mask_op2>%1, %0<mask_operand2>|%0<mask_operand2>, %X1<round_mask_op2>}"
75527553
[(set_attr "type" "ssecvt")
75537554
(set_attr "prefix" "evex")
75547555
(set_attr "mode" "<sseinsnmode>")])
@@ -29820,7 +29821,8 @@
2982029821
UNSPEC_FPCLASS)
2982129822
(const_int 1)))]
2982229823
"TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(<MODE>mode)"
29823-
"vfpclass<ssescalarmodesuffix>\t{%2, %1, %0<mask_scalar_merge_operand3>|%0<mask_scalar_merge_operand3>, %1, %2}";
29824+
;; %X1 so that we don't emit any *WORD PTR for -masm=intel.
29825+
"vfpclass<ssescalarmodesuffix>\t{%2, %1, %0<mask_scalar_merge_operand3>|%0<mask_scalar_merge_operand3>, %X1, %2}";
2982429826
[(set_attr "type" "sse")
2982529827
(set_attr "length_immediate" "1")
2982629828
(set_attr "prefix" "evex")

0 commit comments

Comments
 (0)