diff options
Diffstat (limited to 'gcc-4.7/gcc/config/i386/constraints.md')
-rw-r--r-- | gcc-4.7/gcc/config/i386/constraints.md | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc-4.7/gcc/config/i386/constraints.md b/gcc-4.7/gcc/config/i386/constraints.md index 5a19307a0..f4a19b1af 100644 --- a/gcc-4.7/gcc/config/i386/constraints.md +++ b/gcc-4.7/gcc/config/i386/constraints.md @@ -18,7 +18,7 @@ ;; <http://www.gnu.org/licenses/>. ;;; Unused letters: -;;; B H T W +;;; B H T ;;; h jk v ;; Integer register constraints. @@ -188,6 +188,16 @@ instructions)." (match_operand 0 "x86_64_immediate_operand")) +;; We use W prefix to denote any number of +;; constant-or-symbol-reference constraints + +(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"))) + (define_constraint "Z" "32-bit unsigned integer constant, or a symbolic reference known to fit that range (for immediate operands in zero-extending x86-64 |