|TRAPB placement (Re: Alpha and IEEE exceptions) firstname.lastname@example.org (1994-01-13)|
|From:||email@example.com (Mark Smotherman)|
|Date:||Thu, 13 Jan 1994 14:30:10 GMT|
firstname.lastname@example.org (John R. Grout) writes:
[to get precise FP exceptions with reasonable performance
>Here's one possible approach... code compiled in debugging mode takes
>checkpoints every so often (doing a TRAPB, then saving intermediate results
>somewhere: DEC suggested once per basic block). If an FP exception is
>trapped, the debugger gets control, dynamically restores program status,
>builds the specific code sequence to trace the failure one FP instruction at
>a time, and executes that sequence of instructions to recreate the failure
>(this time precisely).
Are there methods to do minimum TRAPB insertion without saving register
- TRAPB at least once at end of each BB due to control dependencies.
- for a given BB, divide the registers into "source" and "working", then
generated code must not overwrite any "source" register, or there must
be a TRAPB prior to the update of any "source" register
- TRAPB prior to the second update of any "working" register
- the debugger should then know how to reconstruct the original contents
of the source registers
Is this sufficient?
Mark Smotherman, CS Dept., Clemson University, Clemson, SC 29634-1906
(803) 656-5878, email@example.com or firstname.lastname@example.org
Return to the
Search the comp.compilers archives again.