Hi,
On Tue, 19 Sep 2006, Richard B. Kreckel wrote:
> Roman Zippel wrote:
>
> > I checked the compile failure and it seems to be an assembler problem,
> > but the constructor/desctructor hack is not completely blameless.
> > It seems the assembler doesn't know how to generate the GOT entry for
> > the duplicated jump destination.
> >
> That causes a "can't close cl_MI.o" error message?
> What on earth is happening when it cannot close an output file?
"close" means here that the assembler writes out some final data and
stumbles across this symbol. I didn't look deeply what really goes wrong.
> > #endif
> > #if defined(__m68k__)
> > - #define CL_JUMP_TO(addr) ASM_VOLATILE("jmp %0@" : : "a"
> > ((void*)(addr)))
> > + #define CL_JUMP_TO(addr) ASM_VOLATILE("jmp (" ASM_UNDERSCORE_PREFIX
> > #addr ",%pc)")
> > #endif
> > #if defined(__mips__) || defined(__mipsel__)
> > //#define CL_JUMP_TO(addr) ASM_VOLATILE("%*j %0" : : "d"
> > ((void*)(addr)))
> >
> One question: are you aware of restrictions this patch poses on the assembler
> used?
What kind of restrictions? This part is specific to gcc and practically
gas is the only assembler left, which is supported.
bye, Roman
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]