public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [Patch ARM] Fix bootstrap issue with thumb state + neon.
@ 2014-06-05  7:52 Ramana Radhakrishnan
  0 siblings, 0 replies; only message in thread
From: Ramana Radhakrishnan @ 2014-06-05  7:52 UTC (permalink / raw)
  To: gcc-patches@gcc.gnu.org ;

[-- Attachment #1: Type: text/plain, Size: 503 bytes --]

Hi,

In certain configurations of our auto-testers bootstrap fails because 
the enabled attribute depends on "opt_enabled" which is driven by state 
that is not constant for a compilation unit. We probably need a hot/ 
cold alternative which may be useful per insn.

For now, work around this till we know if we really need this attribute 
on these patterns and what the impact in reality is.

Bootstrapped , tested and applied to trunk.


Ramana

  * config/arm/arm.md (enabled): Disable opt_enabled.


[-- Attachment #2: p2-final.txt --]
[-- Type: text/plain, Size: 1572 bytes --]

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2efa59f..484b0c0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2014-06-03  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+
+	* config/arm/arm.md (enabled): Remove opt_enabled.
+
 2014-06-02  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
 
 	PR target/61154
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index bec889a..f58a79b 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -201,6 +201,17 @@
 	 (const_string "no")))
 
 ; Enable all alternatives that are both arch_enabled and insn_enabled.
+; FIXME:: opt_enabled has been temporarily removed till the time we have
+; an attribute that allows the use of such alternatives.
+; This depends on caching of speed_p, size_p on a per
+; alternative basis. The problem is that the enabled attribute
+; cannot depend on any state that is not cached or is not constant
+; for a compilation unit. We probably need a generic "hot/cold"
+; alternative which if implemented can help with this. We disable this
+; until such a time as this is implemented and / or the improvements or
+; regressions with removing this attribute are double checked.
+; See ashldi3_neon and <shift>di3_neon in neon.md.
+
  (define_attr "enabled" "no,yes"
    (cond [(and (eq_attr "predicable_short_it" "no")
 	       (and (eq_attr "predicated" "yes")
@@ -216,9 +227,6 @@
 	  (const_string "no")
 
 	  (eq_attr "arch_enabled" "no")
-	  (const_string "no")
-
-	  (eq_attr "opt_enabled" "no")
 	  (const_string "no")]
 	 (const_string "yes")))
 

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2014-06-05  7:52 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-05  7:52 [Patch ARM] Fix bootstrap issue with thumb state + neon Ramana Radhakrishnan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).