re PR target/49714 (Revision 176128 introduced many ICEs in insn_default_length...
authorRichard Henderson <rth@redhat.com>
Tue, 12 Jul 2011 18:20:29 +0000 (11:20 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 12 Jul 2011 18:20:29 +0000 (11:20 -0700)
PR target/49714
        * config/i386/i386.c (x86_output_mi_thunk): Use
        machopic_indirect_call_target instead of machopic_indirection_name
        directly.

From-SVN: r176211

gcc/ChangeLog
gcc/config/i386/i386.c

index cb1a354afab4e1443b81ce8f132777506149be51..c55a6aeeb825f3e9551c44eec63555386ceaa515 100644 (file)
@@ -1,3 +1,10 @@
+2011-07-12  Richard Henderson  <rth@redhat.com>
+
+       PR target/49714
+       * config/i386/i386.c (x86_output_mi_thunk): Use
+       machopic_indirect_call_target instead of machopic_indirection_name
+       directly.
+
 2011-07-12  Laurent GUERBY  <laurent@guerby.net>
            Eric Botcazou  <ebotcazou@adacore.com>
 
index e75e1b1d35eb9d998da8d4d85260931c31f76dbc..325d901cd306ba17da47e6e14faf5379cdd9446b 100644 (file)
@@ -29508,12 +29508,8 @@ x86_output_mi_thunk (FILE *file,
 #if TARGET_MACHO
       else if (TARGET_MACHO)
        {
-         rtx sym_ref = XEXP (DECL_RTL (function), 0);
-         if (TARGET_MACHO_BRANCH_ISLANDS)
-           sym_ref = (gen_rtx_SYMBOL_REF
-                  (Pmode,
-                   machopic_indirection_name (sym_ref, /*stub_p=*/true)));
-         fnaddr = gen_rtx_MEM (Pmode, sym_ref);
+         fnaddr = machopic_indirect_call_target (DECL_RTL (function));
+         fnaddr = XEXP (fnaddr, 0);
        }
 #endif /* TARGET_MACHO */
       else