This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: New syntax for IVMS prolog epilog size
Nick Clifton wrote:
Is the slot count always guaranteed to be a 4-byte value or could it be
bigger (8-byte maybe ?) or smaller. If this is the case then adding a
size to the directive would make sense. Ie:
.slot_count4 .LPE2 , .LFB2
From the HP Dwarf extensions manual:
If the value of DW_AT_HP_prologue has class constant, then the integer
value of the attribute gives the offset of the one and only prologue end
relative to the base of reference.
-------------
Note: This is the case we are discussing above, but it gets more
complicated for multiple prologues (and epilogues), for which we need
SLEB slot offsets, and possibly even addresses.
-------------
This case applies when there is a single prologue end location and it is
in the same section as the base of reference.
If no DW_AT_HP_prologue is specified, then the (only) prologue end is
assumed to be equal to the base of reference.
If the value of DW_AT_HP_prologue has class block, then the block
contains a sequence of values. The first value is a signed non-zero LEB
integer value. There are two cases:
1.If the first value is positive, it is a count of the number of signed
LEB integer values that follow. Each such value is an (instruction slot)
offset relative to the base of reference to a prologue end location.
This case applies when there is more than one prologue end location, but
they are all in the same section as the base of reference.
2.If the first value is negative, its absolute value is a count of the
number of addresses that follow. Each such address is a prologue end
location.
This case applies when the conditions for using earlier cases are not
satisfied.