diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2019-11-14 13:44:05 +0000 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2019-11-14 05:44:05 -0800 |
commit | 0be72bfaeb94de26a8fcdac98aabe42139f98bbb (patch) | |
tree | 5022f7c4630b24a970435db45daec4c51fe661b4 /gcc/config | |
parent | cc4defc12c7e36137786d122e2f60bef48e575f9 (diff) | |
download | gcc-0be72bfaeb94de26a8fcdac98aabe42139f98bbb.zip gcc-0be72bfaeb94de26a8fcdac98aabe42139f98bbb.tar.gz gcc-0be72bfaeb94de26a8fcdac98aabe42139f98bbb.tar.bz2 |
arm: Fix the "c" constraint
The existing definition using register class CC_REG does not
work because CC_REGNUM does not support normal modes, and so
fails to match register_operand. Use a non-register constraint
and the cc_register predicate instead.
* config/arm/constraints.md (c): Use cc_register predicate.
From-SVN: r278224
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/arm/constraints.md | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/config/arm/constraints.md b/gcc/config/arm/constraints.md index b76de81..e02b678 100644 --- a/gcc/config/arm/constraints.md +++ b/gcc/config/arm/constraints.md @@ -94,8 +94,9 @@ "@internal Thumb only. The union of the low registers and the stack register.") -(define_register_constraint "c" "CC_REG" - "@internal The condition code register.") +(define_constraint "c" + "@internal The condition code register." + (match_operand 0 "cc_register")) (define_register_constraint "Cs" "CALLER_SAVE_REGS" "@internal The caller save registers. Useful for sibcalls.") |