This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix -m64 on powerpc-darwin for pic code



On Nov 2, 2004, at 1:23 AM, Stan Shebs wrote:


Andrew Pinski wrote:

Even for the following simple code we ICE:
int i = 0;
void f(void)
{
 i = 0;
}

Although the ideas of the patch seem generally sensible, I'm curious
how it is you're getting an ICE; I'm trying various combos of flags,
can't get my sources-updated-this-morning build to choke on this bit.

Also, if you're going to do this sort of churn, might as well take the
opportunity to move the macho patterns to darwin.md.
From a clean tree updated last night:
[zhivago:gcc/objdir/gcc] pinskia% ./cc1 -fPIC t.c -m64
 f

t.c: In function 'f':
t.c:5: error: unrecognizable insn:
(insn 29 28 30 (set (reg:DI 65 lr)
(unspec:SI [
(symbol_ref:DI ("<pic base>") [flags 0x180])
] 15)) -1 (nil)
(expr_list:REG_MAYBE_DEAD (const_int 0 [0x0])
(nil)))
t.c:5: internal compiler error: in insn_default_length, at insn-attrtab.c:767
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.


We get the unrecognizable instruction because we only call load_macho_picbase
instead of checking TARGET_64BIT and the appropriate function. This is around
rs6000.c:14022 where the problem is.


Thanks,
Andrew Pinski


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]