eldk bug?how to fix
Wolfgang Denk
wd at denx.de
Mon Dec 19 01:44:53 EST 2005
In message <4440987.1134894054475.JavaMail.postfix at mx3.mail.sohu.com> you wrote:
> [root at localhost atmlz]# ppc_6xx-gcc -c -o temp atm_aalx.c
> atm_aalx.c: In function `main':
> atm_aalx.c:201: warning: return type of `main' is not `int'
> /tmp/cciJlehe.s: Assembler messages:
> /tmp/cciJlehe.s:916: Error: unsupported relocation against r3
> /tmp/cciJlehe.s:917: Error: unsupported relocation against r3
> /tmp/cciJlehe.s:917: Error: unsupported relocation against r3
> /tmp/cciJlehe.s:918: Error: unsupported relocation against r3
> /tmp/cciJlehe.s:918: Error: unsupported relocation against r3
> /tmp/cciJlehe.s:919: Error: unsupported relocation against r3
> /tmp/cciJlehe.s:3655: Error: unsupported relocation against r3
Are you by any chance using inline assembler code in your source
file? This is the only explanation I have, since GCC does not
generate "r3" references in it's assembler code.
It would have been a good idea if you had included your source code
so we could see what you are doing...
> [root at localhost atmlz]# ppc_6xx-gcc -S -o temp.s atm_aalx.c
> [root at localhost atmlz]# vi temp.s
> ...................
> stw 0,4(9)
> .L36:
> #APP
> mfmsr r3
> ori r3,r3,0x8000
> andi. r3,r3,0xffbf
> mtmsr r3
> #NO_APP
> lwz 11,0(1)
> ..............................
I see. This is your own assembler code, not something generated from
C source code.
> I must change those "r3" to "3" manually.
> How to fix?
Don't write incorrect assembler code, or use the required header
files (like ppc_asm.tmpl).
And while we are at it: be careful not to try privileged instructions
in user space.
This is your own error, not a problem with ELDK.
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
If I had to live my life again, I'd make the same mistakes, only
sooner. -- Tallulah Bankhead
More information about the Linuxppc-embedded
mailing list