re PR target/63171 (Segfault in rs6000.c:rs6000_emit_move for multiple tls tests...
authorRichard Sandiford <rdsandiford@googlemail.com>
Sat, 6 Sep 2014 10:04:44 +0000 (10:04 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Sat, 6 Sep 2014 10:04:44 +0000 (10:04 +0000)
gcc/
PR middle-end/63171
* rtlanal.c (tls_referenced_p): Don't skip constant subrtxes.

From-SVN: r214989

gcc/ChangeLog
gcc/rtlanal.c

index 97408f1ee11b34dd0f06f4d554e45bdff9a956d0..dcf4e2a95654c37b34e1b947c7b7448a2e204b30 100644 (file)
@@ -1,3 +1,8 @@
+2014-09-06  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       PR middle-end/63171
+       * rtlanal.c (tls_referenced_p): Don't skip constant subrtxes.
+
 2014-09-06  Tom de Vries  <tom@codesourcery.com>
 
        * ira-costs.c (ira_tune_allocno_costs): Don't conditionalize
index 3fe2cd4efd4159cf8cc7777ddba1a956c826cff6..ece51c8c31296942165bac8ca50d659c4898a9db 100644 (file)
@@ -6072,7 +6072,7 @@ tls_referenced_p (const_rtx x)
     return false;
 
   subrtx_iterator::array_type array;
-  FOR_EACH_SUBRTX (iter, array, x, NONCONST)
+  FOR_EACH_SUBRTX (iter, array, x, ALL)
     if (GET_CODE (*iter) == SYMBOL_REF && SYMBOL_REF_TLS_MODEL (*iter) != 0)
       return true;
   return false;