commit | e7cf062537e898f830565db5dbf99ae9c928399e | [log] [tgz] |
---|---|---|
author | Benjamin Kramer <benny.kra@googlemail.com> | Fri Apr 22 18:47:44 2011 +0000 |
committer | Benjamin Kramer <benny.kra@googlemail.com> | Fri Apr 22 18:47:44 2011 +0000 |
tree | 3c87d0506e38a3039f8e6df7fc0ed061d232dd8c | |
parent | eac0c9dc7759b013bbe831ace1afa37bc46915c6 [diff] |
DAGCombine: fold "(zext x) == C" into "x == (trunc C)" if the trunc is lossless. On x86 this allows to fold a load into the cmp, greatly reducing register pressure. movzbl (%rdi), %eax cmpl $47, %eax -> cmpb $47, (%rdi) This shaves 8k off gcc.o on i386. I'll leave applying the patch in README.txt to Chris :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130005 91177308-0d34-0410-b5e6-96231b3b80d8