i386: Clean up constraints.md
No functional changes. 2021-06-06 Uroš Bizjak <ubizjak@gmail.com> gcc/ * config/i386/constraints.md (Bs): Remove boolean operators from match_test RTX. (Bw): Ditto. (L): Ditto. (M): Use "mode" variable instead of GET_MODE (op) in match_test RTX. (Wz): Ditto.
This commit is contained in:
parent
cb4b99be48
commit
09bf5279e8
@ -198,7 +198,8 @@
|
||||
(ior (and (not (match_test "TARGET_INDIRECT_BRANCH_REGISTER"))
|
||||
(not (match_test "TARGET_X32"))
|
||||
(match_operand 0 "sibcall_memory_operand"))
|
||||
(and (match_test "TARGET_X32 && Pmode == DImode")
|
||||
(and (match_test "TARGET_X32")
|
||||
(match_test "Pmode == DImode")
|
||||
(match_operand 0 "GOT_memory_operand"))))
|
||||
|
||||
(define_constraint "Bw"
|
||||
@ -206,7 +207,8 @@
|
||||
(ior (and (not (match_test "TARGET_INDIRECT_BRANCH_REGISTER"))
|
||||
(not (match_test "TARGET_X32"))
|
||||
(match_operand 0 "memory_operand"))
|
||||
(and (match_test "TARGET_X32 && Pmode == DImode")
|
||||
(and (match_test "TARGET_X32")
|
||||
(match_test "Pmode == DImode")
|
||||
(match_operand 0 "GOT_memory_operand"))))
|
||||
|
||||
(define_constraint "Bz"
|
||||
@ -239,8 +241,9 @@
|
||||
"@code{0xFF}, @code{0xFFFF} or @code{0xFFFFFFFF}
|
||||
for AND as a zero-extending move."
|
||||
(and (match_code "const_int")
|
||||
(match_test "ival == 0xff || ival == 0xffff
|
||||
|| ival == (HOST_WIDE_INT) 0xffffffff")))
|
||||
(ior (match_test "ival == 0xff")
|
||||
(match_test "ival == 0xffff")
|
||||
(match_test "ival == (HOST_WIDE_INT) 0xffffffff"))))
|
||||
|
||||
(define_constraint "M"
|
||||
"0, 1, 2, or 3 (shifts for the @code{lea} instruction)."
|
||||
@ -289,14 +292,14 @@
|
||||
to fit that range (for sign-extending conversion operations that
|
||||
require non-VOIDmode immediate operands)."
|
||||
(and (match_operand 0 "x86_64_immediate_operand")
|
||||
(match_test "GET_MODE (op) != VOIDmode")))
|
||||
(match_test "mode != VOIDmode")))
|
||||
|
||||
(define_constraint "Wz"
|
||||
"32-bit unsigned integer constant, or a symbolic reference known
|
||||
to fit that range (for zero-extending conversion operations that
|
||||
require non-VOIDmode immediate operands)."
|
||||
(and (match_operand 0 "x86_64_zext_immediate_operand")
|
||||
(match_test "GET_MODE (op) != VOIDmode")))
|
||||
(match_test "mode != VOIDmode")))
|
||||
|
||||
(define_constraint "Wd"
|
||||
"128-bit integer constant where both the high and low 64-bit word
|
||||
|
Loading…
Reference in New Issue
Block a user