[llvm-dev] tracking known operand bits across passes

Steve King via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 28 14:05:04 PDT 2015


On Wed, Oct 28, 2015 at 12:08 PM, Smith, Kevin B
<kevin.b.smith at intel.com> wrote:
> I have a pass that can do what you want, but not by computing or using known bits.  I intend to try to upstream this
> for X86 CG.

Thanks!  Have a time frame in mind?

>
> It works by looking for byte and word operations that might be more profitably done either using movz(wb)l or by simply making
> the instruction larger.

When does your pass execute?  Do you preserve information between passes?


> But it does this not by knowing bits are zero or one, but by making sure the upper bits of the register are
> unused/dead. It could definitely do this for andw ->andl without much trouble at all.

Neat.  I wonder if known-bit tracking would enable enough additional
promotions to pay for the computing and tracking effort.

Also, did you mean to move this discussion to the commits mailing list?

Regards,
-steve


More information about the llvm-commits mailing list