On May 14, 7:47pm, J. Johnston wrote:
Subject: RFA: ia64 prologue skipping patch
The attached patch revises the ia64 prologue skipping code. It does a number of
things:
1. increases the number of instructions to look at in a prologue
2. allows looking in leaf functions
3. recognizes indirect input register references (one level only)
4. attempts to trust the lim_pc value
Number 1 was increased to handle some testsuite cases where the number of
parameters was quite high (e.g. 9 parameters). No tuning was involved.
Number 4 has the biggest effect. The line table info is more accurate except
in the case of optimized code.
Ok to commit?
Okay (But fix the formatting of your ChangeLog entry - the lines are too
long.)
2003-05-14 Jeff Johnston <jjohnstn@redhat.com>
* ia64-tdep.c: Increase max_skip_non_prologue_insns to 40.
(examine_prologue): Support looking through leaf functions, knowing
they start with mov r2,r12. Support skipping over indirect stores of the input
registers. Upon hitting a non-nop branch instruction or predicated instruction,
bail out by setting lim_pc to the current pc value in the loop. At the end,
if the lim_pc value is still beyond our calculated value and we have trust_limit set,
use the lim_pc value.
Kevin