2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2025-04-13 13:41:12 +08:00

mn10300: Add attribute enabled.

This will allow merging am33 and mn103 patterns for which the
set of alternatives can't be merged via constraint letters.

From-SVN: r168674
This commit is contained in:
Richard Henderson 2011-01-11 10:26:16 -08:00 committed by Richard Henderson
parent 0d9e23f4ee
commit a5c727e3ba
2 changed files with 25 additions and 0 deletions
gcc
ChangeLog
config/mn10300

@ -1,5 +1,8 @@
2011-01-11 Richard Henderson <rth@redhat.com>
* config/mn10300/mn10300.md (isa): New attribute.
(enabled): New attribute.
* config/mn10300/mn10300.md (absdf2, negdf2): Remove.
(abssf2, negsf2): Define only for hardware fp.
(sqrtsf2): Reformat.

@ -46,6 +46,28 @@
(define_attr "cpu" "mn10300,am33,am33_2,am34"
(const (symbol_ref "(enum attr_cpu) mn10300_tune_cpu")))
;; Used to control the "enabled" attribute on a per-instruction basis.
(define_attr "isa" "base,am33,am33_2,am34"
(const_string "base"))
(define_attr "enabled" ""
(cond [(eq_attr "isa" "base")
(const_int 1)
(and (eq_attr "isa" "am33")
(ne (symbol_ref "TARGET_AM33") (const_int 0)))
(const_int 1)
(and (eq_attr "isa" "am33_2")
(ne (symbol_ref "TARGET_AM33_2") (const_int 0)))
(const_int 1)
(and (eq_attr "isa" "am34")
(ne (symbol_ref "TARGET_AM34") (const_int 0)))
(const_int 1)
]
(const_int 0))
)
;; Pipeline description.