This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Don't run var-tracking for targetm.no_register_allocation targets


Hi!

As discussed earlier, var-tracking assumes no pseudos are in the IL
at the point it is run, which isn't the case for nvptx.
While it would be also reasonable to kill debug stmts earlier or
disable var-tracking, making it clear that var-tracking can't handle this
case is IMHO desirable too.

Ok for trunk?

2015-03-26  Jakub Jelinek  <jakub@redhat.com>

	* var-tracking.c (variable_tracking_main_1): Don't track
	variables for targetm.no_register_allocation targets.

--- gcc/var-tracking.c.jj	2015-03-10 07:35:30.000000000 +0100
+++ gcc/var-tracking.c	2015-03-24 16:55:07.611328164 +0100
@@ -10311,7 +10311,10 @@ variable_tracking_main_1 (void)
 {
   bool success;
 
-  if (flag_var_tracking_assignments < 0)
+  if (flag_var_tracking_assignments < 0
+      /* Var-tracking right now assumes the IR doesn't contain
+	 any pseudos at this point.  */
+      || targetm.no_register_allocation)
     {
       delete_debug_insns ();
       return 0;

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]