This is the mail archive of the
gdb@sourceware.cygnus.com
mailing list for the GDB project.
Re: exceptionHandler for 68K
- To: davidwilliams at ozemail dot com dot au
- Subject: Re: exceptionHandler for 68K
- From: Todd Whitesel <toddpw at windriver dot com>
- Date: Thu, 2 Dec 1999 23:19:06 -0800 (PST)
- Cc: gdb at sourceware dot cygnus dot com (GDB Developers)
> to the exception handler. My problem is that I dont understand where this
> table of jsr's is located...
Admittedly I have not looked at the code, but it may be generated by a macro,
so it might be easy to miss. You could try building a debug stub and objdump
it to see where all the vector table entries point to.
According to the discussion you posted, it sounds like there's a label called
'exception' and the 256 JSR's are stored underneath that. So maybe you should
search the source for references to that label?
> The m68k-stub has code to determine the exception number by taking the
> return address on the stack (the return address is the location in the jsr
> table) and adding 1530 and then dividing by 6.
Feh. Use BSR.W and divide by 4. Or chop up the table into four pieces, each
a row of BSR.S instructions jumping to slightly different computation code
at the bottom -- that lets you divide by 2 and save another 500 bytes or so.
--
Todd Whitesel
toddpw @ windriver.com