Illegal execution error message

Marc J. Stephenson/140000;1C-22 marc at stingray.austin.ibm.com
Wed Apr 10 05:38:03 AEST 1991


In article <1991Apr9.134802.26440 at eagle.lerc.nasa.gov> fsfrick at bones (David Fricker) writes:
>I'm porting a local graphics program which uses the GL calls, and I
>get the error message 'illegal execution' when it bombs.
>I tried running 'xde' to track down the offending call, but the following
>is all I get from the debugger:
>	Unreadable instruction at address 0x0
>	warning: could not locate trace table from starting address 0x0
>	Could not determine current function
>As you can see, this is not very helpful.  I would appreciate any hints...
>Thanks for any help.
>david fricker

As already mentioned, your problem is that your program has jumped to address
0.  Once it gets to that point, the debuggers can't tell where you've been
because there's no context.  Useful information that you can possibly get
from the debuggers is the value of the link register ($link in xde/dbx) which
might have a value of where that attempted call was supposed to return to.
The GPRs may still have your calling parameter values in general purpose
registers 3-10 ($r3, $r4, etc.).  After you get the return address, you can
find out what routine that was in by doing a "listi <address>" - the debugger
will show you the instruction, with the routine name + offset in parens.

Usually this type of error shows up because of an uninitialized function
pointer call.

Hope that helps.

-- 
Marc Stephenson		      IBM PSPA (Personal System Programming - Austin,TX)
DISCLAIMER: The content of this posting is independent of official IBM position.
marc at stingray.austin.ibm.com 	VNET: MARC at AUSVMQ  	IBM T/L: 793-3796



More information about the Comp.unix.aix mailing list