aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/aarch64/iterators.md
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2016-01-11 14:44:22 +0000
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>2016-01-11 14:44:22 +0000
commit2b8568fe565d23e8cb9f02334d81c21428eb7cd3 (patch)
tree5f838f445f94024a719619366722b2aa255063b9 /gcc/config/aarch64/iterators.md
parent0d58938ed798882063737dedfe897a9b484295ad (diff)
downloadgcc-2b8568fe565d23e8cb9f02334d81c21428eb7cd3.zip
gcc-2b8568fe565d23e8cb9f02334d81c21428eb7cd3.tar.gz
gcc-2b8568fe565d23e8cb9f02334d81c21428eb7cd3.tar.bz2
[AArch64] PR rtl-optimization/68796: Add patterns for QImode and HImode comparison with zero
PR rtl-optimization/68796 * config/aarch64/aarch64.md (*and<mode>_compare0): New pattern. * config/aarch64/aarch64.c (aarch64_select_cc_mode): Handle HImode and QImode comparisons against zero with CC_NZmode. * config/aarch64/iterators.md (short_mask): New mode_attr. * gcc.target/aarch64/tst_5.c: New test. * gcc.target/aarch64/tst_6.c: Likewise. From-SVN: r232228
Diffstat (limited to 'gcc/config/aarch64/iterators.md')
-rw-r--r--gcc/config/aarch64/iterators.md2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/aarch64/iterators.md b/gcc/config/aarch64/iterators.md
index 549d47a..49598a2 100644
--- a/gcc/config/aarch64/iterators.md
+++ b/gcc/config/aarch64/iterators.md
@@ -345,6 +345,8 @@
(define_mode_attr w1 [(SF "w") (DF "x")])
(define_mode_attr w2 [(SF "x") (DF "w")])
+(define_mode_attr short_mask [(HI "65535") (QI "255")])
+
;; For constraints used in scalar immediate vector moves
(define_mode_attr hq [(HI "h") (QI "q")])