diff options
author | Bernd Schmidt <bernds@codesourcery.com> | 2015-03-27 12:50:01 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2015-03-27 12:50:01 +0000 |
commit | f50e5fcc32825c186ed32dbdf35dbf03c0fd0bcf (patch) | |
tree | cbdccfd2c6d4ed0b1a4bf4527346098f0b6f71f7 /gcc/config/c6x | |
parent | 04f69fda7ae6968e9def27a8b0ec97aef653d368 (diff) | |
download | gcc-f50e5fcc32825c186ed32dbdf35dbf03c0fd0bcf.zip gcc-f50e5fcc32825c186ed32dbdf35dbf03c0fd0bcf.tar.gz gcc-f50e5fcc32825c186ed32dbdf35dbf03c0fd0bcf.tar.bz2 |
Fix c6x-uclinux build failure.
* config/c6x/constraints.md (S3): New constraint.
* config/c6x/c6x.md (real_jump): Use it.
From-SVN: r221731
Diffstat (limited to 'gcc/config/c6x')
-rw-r--r-- | gcc/config/c6x/c6x.md | 2 | ||||
-rw-r--r-- | gcc/config/c6x/constraints.md | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/config/c6x/c6x.md b/gcc/config/c6x/c6x.md index 892aac4..fafefa6 100644 --- a/gcc/config/c6x/c6x.md +++ b/gcc/config/c6x/c6x.md @@ -1519,7 +1519,7 @@ ;; ------------------------------------------------------------------------- (define_insn "real_jump" - [(unspec [(match_operand 0 "c6x_jump_operand" "a,b,s") (const_int 0)] + [(unspec [(match_operand 0 "c6x_jump_operand" "a,b,S3") (const_int 0)] UNSPEC_REAL_JUMP)] "" { diff --git a/gcc/config/c6x/constraints.md b/gcc/config/c6x/constraints.md index 9d88912..b8cdc0e 100644 --- a/gcc/config/c6x/constraints.md +++ b/gcc/config/c6x/constraints.md @@ -160,6 +160,11 @@ not C64X or higher).") Any SYMBOL_REF or LABEL_REF." (ior (match_code "symbol_ref") (match_code "label_ref"))) +(define_constraint "S3" + "Matches a symbolic integer constant, even if invalid for PIC." + (and (match_test "CONSTANT_P (op)") + (match_test "!CONST_SCALAR_INT_P (op)"))) + (define_constraint "Si" "@internal Any immediate value, unless it matches the S0 constraint." |