[PATCH] - Increase the accuracy of register pressure computation in the presence of dead definitions

Andrew Trick atrick at apple.com
Fri Nov 8 14:24:05 PST 2013


On Nov 6, 2013, at 10:54 AM, Pedro Artigas <partigas at apple.com> wrote:

> Hello All,
> 
> This patch increases the accuracy of register pressure computation in the presence of dead definitions as it uses live intervals, if available, to identify dead definitions and proceed accordingly. Before we use to only use the Dead flag in the machine operand that defined the instruction and that flag (according to Jakob Olesen) is supposed to be conservatively correct, like the kill flags; that is, the flag is allowed to say the definition is not dead when, in fact, it is. Using live intervals in conjunction with the flag is, therefore, more precise. This change also modifies the verifier to abide by the rule that the Dead flag is supposed to be conservatively correct. It removes the code that makes validation fail in the presence of a conservative flag (Dead def not set on a provably dead definition) and adds code to check that, if the flag is set, live intervals (if present) agree with the flag.
> 
> I believe Andrew Trick wrote the code in the register pressure tracker so I am sending the patch to him directly to bring to his attention.

Hi Pedro,

This looks good to me. Please commit.

Thanks,
-Andy



More information about the llvm-commits mailing list