My feeble attempt at fixing complaints that makeinfo makes about

errors in this doc.
This commit is contained in:
Peter Wemm 1996-09-18 06:35:00 +00:00
parent d0fd7b1858
commit 24501dd0c6
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=18343

View File

@ -1285,13 +1285,13 @@ Ln: throw value;
copy value onto heap
jump throw (Ln, id, address of copy of value on heap)
try {
try @{
+Lstart: the start of the main EH region
|... ...
+Lend: the end of the main EH region
} catch (T o) {
@} catch (T o) @{
...1
}
@}
Lresume:
nop used to make sure there is something before
the next region ends, if there is one
@ -1312,7 +1312,7 @@ Lover:
[
[
call throw_type_match
if (eq) {
if (eq) @{
] these lines disappear when there is no catch condition
+Lsregion2:
| ...1
@ -1320,7 +1320,7 @@ Lover:
|Lhandler: handler for the region Lsregion2-Leregion2
| rethrow (Lresume, same id, same obj);
+Leregion2
}
@}
] there are zero or more of these sections, depending upon how many
catch clauses there are
----------------------------- expand_end_all_catch --------------------------
@ -1336,7 +1336,7 @@ Ldone:
start_all_catch emits labels: Lresume,
#end example
@end example
The __unwind_function takes a pointer to the throw handler, and is
expected to pop the stack frame that was built to call it, as well as
@ -1346,7 +1346,7 @@ machine state as determined by the context in which we are unwinding
into. The way I normally start is to compile:
void *g;
foo(void* a) { g = a; }
foo(void* a) @{ g = a; @}
with -S, and change the thing that alters the PC (return, or ret
usually) to not alter the PC, making sure to leave all other semantics
@ -1453,7 +1453,7 @@ descriptor that refers to fully contained code that has been eliminated
should also be removed, although not doing this is harmless in terms of
semantics.
#end itemize
@end itemize
The above is not meant to be exhaustive, but does include all things I
have thought of so far. I am sure other limitations exist.
@ -1515,7 +1515,7 @@ pointer, frame pointer, arg pointer and so on.
The eh archive (~mrs/eh) might be good reading for understanding the Ada
perspective, and some of kenners mindset, and a detailed explanation
(Message-Id: <9308301130.AA10543@vlsi1.ultra.nyu.edu>) of the concepts
(Message-Id: <9308301130.AA10543@@vlsi1.ultra.nyu.edu>) of the concepts
involved.
Here is a guide to existing backend type code. It is all in