+----------+----------------------+
Note: "ln 1" means the line number of the first line of the method body,
+----------+----------------------+
Note: "ln 1" means the line number of the first line of the method body,
X, the table looks like this:
+----------+----------------------+
X, the table looks like this:
+----------+----------------------+
+----------+----------------------+ |--- these refer to lines within the body of
... | the inlined callee
+----------+----------------------+ |
+----------+----------------------+ |--- these refer to lines within the body of
... | the inlined callee
+----------+----------------------+ |
+----------+----------------------+
| -3-ln X | methodinfo* to callee| <-- methodinfo* instead of PC, -3 minus line number
+----------+----------------------+
+----------+----------------------+
| -3-ln X | methodinfo* to callee| <-- methodinfo* instead of PC, -3 minus line number
+----------+----------------------+
- | ln X+1 | start PC of line X+1 |
+ | ln X | first PC of line X | for the rest of line X, after the inlined call
+ | | after the call |
+ +----------+----------------------+
+ | ln X+1 | first PC of line X+1 |
+----------+----------------------+
CAUTION: line numbers are stored as unsigned ptrint! You need
to cast them (to s4) in order to test <0, etc.
(The ptrint values are created by casting a s4 to ptrint.)
+----------+----------------------+
CAUTION: line numbers are stored as unsigned ptrint! You need
to cast them (to s4) in order to test <0, etc.
(The ptrint values are created by casting a s4 to ptrint.)