diff options
author | Richard Henderson <rth@redhat.com> | 2012-01-24 09:44:15 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2012-01-24 09:44:15 -0800 |
commit | f1d4a790ec622a2c905b4b1e379731d670450470 (patch) | |
tree | f395ade78f618f512f1d7f0ae79431d1e47102b9 | |
parent | ed6cf3188bc655ef34383f865ca3855585af7096 (diff) | |
download | gcc-f1d4a790ec622a2c905b4b1e379731d670450470.zip gcc-f1d4a790ec622a2c905b4b1e379731d670450470.tar.gz gcc-f1d4a790ec622a2c905b4b1e379731d670450470.tar.bz2 |
sparc: Use match_code in zero_or_v7_operand.
Failure to do so means that genpreds doesn't know that we're
matching a const_int, and it generates the wrong mode test.
* config/sparc/predicates.md (zero_or_v7_operand): Use match_code.
From-SVN: r183481
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/sparc/predicates.md | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4197c18..c06613e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2012-01-25 Richard Henderson <rth@redhat.com> + * config/sparc/predicates.md (zero_or_v7_operand): Use match_code. + +2012-01-25 Richard Henderson <rth@redhat.com> + PR target/51968 * config/arm/arm.c (neon_split_vcombine): Emit deleted note to effect no-op split. diff --git a/gcc/config/sparc/predicates.md b/gcc/config/sparc/predicates.md index 81e5320..308fbd6 100644 --- a/gcc/config/sparc/predicates.md +++ b/gcc/config/sparc/predicates.md @@ -1,5 +1,5 @@ ;; Predicate definitions for SPARC. -;; Copyright (C) 2005, 2007, 2008, 2010 Free Software Foundation, Inc. +;; Copyright (C) 2005, 2007, 2008, 2010, 2012 Free Software Foundation, Inc. ;; ;; This file is part of GCC. ;; @@ -113,8 +113,9 @@ ;; Return true if OP is Zero, or if the target is V7. (define_predicate "zero_or_v7_operand" - (ior (match_test "op == const0_rtx") - (match_test "!TARGET_V8 && !TARGET_V9"))) + (and (match_code "const_int") + (ior (match_test "INTVAL (op) == 0") + (match_test "!TARGET_V8 && !TARGET_V9")))) ;; Predicates for symbolic constants. |