diff options
author | Tim Northover <tnorthover@apple.com> | 2013-05-30 13:19:42 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2013-05-30 13:19:42 +0000 |
commit | 64ec0ff43336cedc5dfae2accb27c0fb6f27f5e7 (patch) | |
tree | ea2286e420f8be400533ed0dd8a563b6142532dd /clang/lib/CodeGen/CodeGenFunction.cpp | |
parent | 6cb9a4273cca6c38de809423848f9083039cd9d6 (diff) | |
download | bcm5719-llvm-64ec0ff43336cedc5dfae2accb27c0fb6f27f5e7.tar.gz bcm5719-llvm-64ec0ff43336cedc5dfae2accb27c0fb6f27f5e7.zip |
X86: use sub-register sequences for MOV*r0 operations
Instead of having a bunch of separate MOV8r0, MOV16r0, ... pseudo-instructions,
it's better to use a single MOV32r0 (which will expand to "xorl %reg, %reg")
and obtain other sizes with EXTRACT_SUBREG and SUBREG_TO_REG. The encoding is
smaller and partial register updates can sometimes be avoided.
Until recently, this sequence was a barrier to rematerialization though. That
should now be fixed so it's an appropriate time to make the change.
llvm-svn: 182928
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
0 files changed, 0 insertions, 0 deletions