diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2015-08-07 21:52:07 +0300 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2015-08-07 22:02:03 +0300 |
commit | 31cf34f84903dec0c8fae716f80e46e57501ff19 (patch) | |
tree | f5fe85394ff94ab22edc40eb252ae9276f0041ab /libgloss/acinclude.m4 | |
parent | 4098f69c4302664c4dc65812779a8849ccc323b6 (diff) |
or1k: Allow exception nesting
Allow exceptions to be nested, which is especially useful with urgent
interrupts while processing an exception.
The implementation counts up the nesting level with each call to an
exception. In the outer exception (level 1), the exception stack is
started. All nested exceptions just reserve the redzone (scratch
memory that may be used by compiler) and exception context on the
stack, but then process on the same scratch.
Restriction: Impure pointers are shared among all exceptions. This may
be solved by creating an impure data structure in the stack frame with
each nested exception.
* or1k/crt0.S: Add exception nesting
* or1k/exceptions-asm.S: ditto
* or1k/util.c: ditto
Diffstat (limited to 'libgloss/acinclude.m4')
0 files changed, 0 insertions, 0 deletions