leon.md (leon_load): Enable for all LEON variants if -mfix-ut699 is not specified.
authorEric Botcazou <ebotcazou@adacore.com>
Tue, 30 Jun 2015 11:05:11 +0000 (11:05 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Tue, 30 Jun 2015 11:05:11 +0000 (11:05 +0000)
* config/sparc/leon.md (leon_load): Enable for all LEON variants if
-mfix-ut699 is not specified.
(leon3_load): Rename into...
(ut699_load): ...this.  Enable for all LEON variants if -mfix-ut699
is specified.

From-SVN: r225173

gcc/ChangeLog
gcc/config/sparc/leon.md

index 5f2e14ee42aa60c257de0ff24bd83a8fdc366cd4..6a36140057e2aa2aca2368d2a7cf3e62a3b7bd38 100644 (file)
@@ -1,3 +1,11 @@
+2015-06-30  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/sparc/leon.md (leon_load): Enable for all LEON variants if
+       -mfix-ut699 is not specified.
+       (leon3_load): Rename into...
+       (ut699_load): ...this.  Enable for all LEON variants if -mfix-ut699
+       is specified.
+
 2015-06-30  Marek Polacek  <polacek@redhat.com>
 
        * fold-const.c (fold_binary_loc): Move ~X | X folding ...
index aca92fc7bf88f0a4c303f0c03c0f3ddf219b0db4..c579e394b58d4baaa85d4749194de22c3bdcee51 100644 (file)
 (define_cpu_unit "leon_memory" "leon")
 
 (define_insn_reservation "leon_load" 1
-  (and (eq_attr "cpu" "leon") (eq_attr "type" "load,sload"))
+  (and (eq_attr "cpu" "leon,leon3,leon3v7")
+       (and (eq_attr "fix_ut699" "false") (eq_attr "type" "load,sload")))
   "leon_memory")
 
 ;; Use a double reservation to work around the load pipeline hazard on UT699.
-(define_insn_reservation "leon3_load" 1
-  (and (eq_attr "cpu" "leon3,leon3v7") (eq_attr "type" "load,sload"))
+(define_insn_reservation "ut699_load" 1
+  (and (eq_attr "cpu" "leon,leon3,leon3v7")
+       (and (eq_attr "fix_ut699" "true") (eq_attr "type" "load,sload")))
   "leon_memory*2")
 
 (define_insn_reservation "leon_store" 2