diff options
author | Richard Henderson <rth@redhat.com> | 2011-07-12 11:20:29 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2011-07-12 11:20:29 -0700 |
commit | 3a5e4ad6e2e1293c707721525f896542571d8d85 (patch) | |
tree | aefd2d87c4044296ec5e9bbadda2f75664a0f0b3 /gcc/config | |
parent | 9e9bd455d4cb9df5f0c54858448ebfd699b14f1b (diff) | |
download | gcc-3a5e4ad6e2e1293c707721525f896542571d8d85.zip gcc-3a5e4ad6e2e1293c707721525f896542571d8d85.tar.gz gcc-3a5e4ad6e2e1293c707721525f896542571d8d85.tar.bz2 |
re PR target/49714 (Revision 176128 introduced many ICEs in insn_default_length, at config/i386/i386.md:600)
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
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/i386/i386.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index e75e1b1..325d901 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -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 |