From b2bcff191136e4580322ef631f079f2d003be41c Mon Sep 17 00:00:00 2001 From: jgreenhalgh Date: Fri, 20 Nov 2015 16:15:57 +0000 Subject: [PATCH] [AArch64] Add attribute for compatibility with ARM pipeline models gcc/ * config/aarch64/aarch64.md (predicated): Copy attribute from "arm.md". * config/arm/arm.md (predicated): Added description. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230666 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/config/aarch64/aarch64.md | 4 ++++ gcc/config/arm/arm.md | 3 +++ 3 files changed, 13 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a16d09c0a4e2..33e4f41ca3f8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-11-20 Evandro Menezes + + * config/aarch64/aarch64.md (predicated): Copy attribute from + "arm.md". + * config/arm/arm.md (predicated): Added description. + 2015-11-20 Kyrylo Tkachov * config/arm/arm.c (arm_option_override): Require TARGET_32BIT diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 1586256dd348..d46f837df7f0 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -195,6 +195,10 @@ ;; 1 :=: yes (define_attr "far_branch" "" (const_int 0)) +;; Strictly for compatibility with AArch32 in pipeline models, since AArch64 has +;; no predicated insns. +(define_attr "predicated" "yes,no" (const_string "no")) + ;; ------------------------------------------------------------------- ;; Pipeline descriptions and scheduling ;; ------------------------------------------------------------------- diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index effe7eb799d6..5782b357aa2c 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -105,6 +105,9 @@ (define_attr "fpu" "none,vfp" (const (symbol_ref "arm_fpu_attr"))) +; Predicated means that the insn form is conditionally executed based on a +; predicate. We default to 'no' because no Thumb patterns match this rule +; and not all ARM insns do. (define_attr "predicated" "yes,no" (const_string "no")) ; LENGTH of an instruction (in bytes) -- 2.47.2