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 <ja...@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