https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61550

--- Comment #1 from Kazumoto Kojima <kkojima at gcc dot gnu.org> ---
sh.c:prepare_move_operands has the code for TLS addresses which
shouldn't be run when reload in progress in the first place.
I'm testing the patch below.

--- ORIG/trunk/gcc/config/sh/sh.c    2014-06-17 21:21:32.043445314 +0900
+++ trunk/gcc/config/sh/sh.c    2014-06-18 08:26:27.846157153 +0900
@@ -1758,7 +1758,8 @@ prepare_move_operands (rtx operands[], e
       else
     opc = NULL_RTX;

-      if ((tls_kind = tls_symbolic_operand (op1, Pmode)) != TLS_MODEL_NONE)
+      if (! reload_in_progress && ! reload_completed
+      && (tls_kind = tls_symbolic_operand (op1, Pmode)) != TLS_MODEL_NONE)
     {
       rtx tga_op1, tga_ret, tmp, tmp2;

Reply via email to