From: Stuart Hastings Date: Sat, 25 Jan 2003 01:35:50 +0000 (+0000) Subject: * config/i386/i386.c (x86_output_mi_thunk) Add Darwin/x86 support. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=095fa59493ef3d03074448223ca543acd29eea31;p=gcc.git * config/i386/i386.c (x86_output_mi_thunk) Add Darwin/x86 support. From-SVN: r61755 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1cb8d9ebb19..4512400bd1a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2002-01-24 Stuart Hastings + + * config/i386/i386.c (x86_output_mi_thunk) Add Darwin/x86 support. + 2003-01-25 Michael Hayes * config/c4x/c4x.md (UNSPEC_BU): New constants. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 45165f48c97..eaaf4abef8c 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -14801,6 +14801,17 @@ x86_output_mi_thunk (file, thunk, delta, vcall_offset, function) if (!flag_pic || (*targetm.binds_local_p) (function)) output_asm_insn ("jmp\t%P0", xops); else +#if defined TARGET_MACHO + if (TARGET_MACHO) + { + char *ip = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (function)); + tmp = gen_rtx_SYMBOL_REF (Pmode, machopic_stub_name (ip)); + tmp = gen_rtx_MEM (QImode, tmp); + xops[0] = tmp; + output_asm_insn ("jmp\t%0", xops); + } + else +#endif /* TARGET_MACHO */ { tmp = gen_rtx_REG (SImode, 2 /* ECX */); output_set_got (tmp);