aarch64 : Mark rotate immediates with '#' as per DDI0487iFc.

The armv8_arm manual [C6.2.226, ROR (immediate)] uses a # in front
of the immediate rotation quantity.

Although, it seems, GAS is able to infer the # (or is leninent about
its absence) assemblers based on the LLVM back end expect it.

gcc/ChangeLog:

	* config/aarch64/aarch64.md (<optab>_rol<mode>3): Add a '#'
	mark in front of the immediate quantity.
	(<optab>_rolsi3_uxtw): Likewise.
This commit is contained in:
Iain Sandoe 2020-08-25 21:20:12 +01:00
parent 44ab1cc1df
commit 5051c12173

View File

@ -4429,7 +4429,7 @@
(match_operand:QI 2 "aarch64_shift_imm_<mode>" "n"))
(match_operand:GPI 3 "register_operand" "r")))]
""
"<logical>\\t%<w>0, %<w>3, %<w>1, ror (<sizen> - %2)"
"<logical>\\t%<w>0, %<w>3, %<w>1, ror #(<sizen> - %2)"
[(set_attr "type" "logic_shift_imm")]
)
@ -4454,7 +4454,7 @@
(match_operand:QI 2 "aarch64_shift_imm_si" "n"))
(match_operand:SI 3 "register_operand" "r"))))]
""
"<logical>\\t%w0, %w3, %w1, ror (32 - %2)"
"<logical>\\t%w0, %w3, %w1, ror #(32 - %2)"
[(set_attr "type" "logic_shift_imm")]
)