This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils 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: [Gcl-devel] Re: BFD relocations


On Tue, Jun 04, 2002 at 05:33:57PM -0400, Camm Maguire wrote:
> Greetings. and thank you again for your reply!
> 
> In brief, I can relocate, but I get SIGILL on apparently correctly
> relocated code when trying to execute.
> 
> I would be very appreciative if you might save me the pain of
> searching through the kernel sources and brief me on what raises
> SIGILL on ppc.  I'm already aware of divide by zero, and of course an
> unknown opcode, but neither seems to be the case here.  Alignment?

Cache.  Are you explicitly flushing the data and instruction caches
over the entire loaded range?  If not, you absolutely should try that.

> Detail:
> 
> gcl builds fine on ppc with bfd relocations, including gcl-tk.  When
> building maxima-5.6 with it, which involves loading several object
> files, I've gotten SIGILL in the following two places when executing
> code from kclmac.o:
> 
> objdump -d kclmac.o |head -40l
> 
> kclmac.o:     file format elf32-powerpc
> 
> Disassembly of section .text:
> 
> 00000000 <init_kclmac>:
> ->   0:	94 21 ff f0 	stwu	r1,-16(r1)
>    4:	7c 08 02 a6 	mflr	r0
>    8:	90 01 00 14 	stw	r0,20(r1)
>    c:	3c 60 00 00 	lis	r3,0
>   10:	38 63 00 00 	addi	r3,r3,0
>   14:	4c c6 31 82 	crclr	4*cr1+eq
>   18:	48 00 00 01 	bl	18 <init_kclmac+0x18>
>   1c:	80 01 00 14 	lwz	r0,20(r1)
> ->  20:	7c 08 03 a6 	mtlr	r0
>   24:	38 21 00 10 	addi	r1,r1,16
>   28:	4e 80 00 20 	blr
> 
> 0000002c <L1>:
>   2c:	94 21 ff e0 	stwu	r1,-32(r1)
>   30:	7c 08 02 a6 	mflr	r0

Those two spots are both apparently undistinguished, and 32 bytes
apart.  Coincidence?  I think not.


-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer


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