[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Unidentified subject!



On 01/11/2002 01:35:51 PM CET Andreas Schwab wrote:
>
>Richard Zidlicky <Richard.Zidlicky@stud.informatik.uni-erlangen.de> writes:
>
>|> On Wed, Jan 09, 2002 at 11:20:52PM +0100, Christian Groessler wrote:
>|>
>|> >
>|> > .L1239:
>|> > #APP
>|> > 	.chip 68040
>|> > 	pflush (%a0)
>|> > 	.chip 68k
>|> > #NO_APP
>|> > 	clr.l %d1
>|> > 	jbra .L1196
>|> > 	.align	2
>|> > .L1193:
>|> > #APP
>|> > 	ptestr (%a0)
>|> > #NO_APP
>|> > 	jbra .L1194
>|> > 	.align	2
>|> >
>|> > There is the .chip 68k currently in effect.
>|>
>|> I see, the compiler reordered the statements somewhat so the '.chip'
>|> got lexicaly separated from the statements where it belongs to
>|> logically.
>|>
>I'd prefer this, to allow more freedom to the compiler:
>
>static inline unsigned long probe040(int iswrite, unsigned long addr, int wbs)
>{
>	unsigned long mmusr;
>	mm_segment_t old_fs = get_fs();
>
>	set_fs(MAKE_MM_SEG(wbs));
>
>	if (iswrite)
>		asm volatile (".chip 68040; ptestw (%0); chip 68k" : : "a" (addr));
>	else
>		asm volatile (".chip 68040; ptestr (%0); chip 68k" : : "a" (addr));
>
>	asm volatile (".chip 68040; movec %%mmusr,%0; chip 68k" : "=r" (mmusr));
>
>	set_fs(old_fs);
>
>	return mmusr;
>}

Ok, with this change traps.c compiles, but later I get

/opt/m68kcross/bin/m68k-unknown-linux-gcc -D__KERNEL__ -I/local/m68k-linux-cvs/linux-2.4/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -fno-strength-reduce -ffixed-a2 -Wa,-m68040 -m68040    -DEXPORT_SYMTAB -c mac_ksyms.c
rm -f mac.o
/opt/m68kcross/bin/m68k-unknown-linux-ld -m m68kelf  -r -o mac.o config.o bootparse.o macints.o iop.o via.o oss.o psc.o baboon.o macboing.o debug.o misc.o mac_ksyms.o
bootparse.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
macints.o(.bss+0x0): multiple definition of `mac_hw_present'
config.o(.bss+0x4): first defined here
macints.o(.bss+0x2): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
iop.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
via.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
via.o(.bss+0x4): multiple definition of `mac_hw_present'
config.o(.bss+0x4): first defined here
oss.o(.bss+0x0): multiple definition of `mac_hw_present'
config.o(.bss+0x4): first defined here
oss.o(.bss+0x2): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
psc.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
baboon.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
macboing.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
debug.o(.bss+0x0): multiple definition of `mac_hw_present'
config.o(.bss+0x4): first defined here
misc.o(.bss+0x0): multiple definition of `macintosh_config'
config.o(.bss+0x0): first defined here
make[2]: *** [mac.o] Error 1

I'm using
:pserver:anon@linux-m68k-cvs.apia.dhs.org:/home/linux-m68k/cvsroot,
module linux-2.4, and tried tag m68k-2_4_16 and head revision.

regards,
chris



Reply to: