diff options
author | Quentin Colombet <qcolombet@apple.com> | 2015-07-01 23:12:13 +0000 |
---|---|---|
committer | Quentin Colombet <qcolombet@apple.com> | 2015-07-01 23:12:13 +0000 |
commit | 9729fb33156d3a6cbe7e55a389ac7dd501cc9dfe (patch) | |
tree | 32560355c7acfbe6ba70f03a0690b635f7e34393 /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp | |
parent | 28ff26837369eed8500db03d4329b6240b076b02 (diff) | |
download | llvm-9729fb33156d3a6cbe7e55a389ac7dd501cc9dfe.zip llvm-9729fb33156d3a6cbe7e55a389ac7dd501cc9dfe.tar.gz llvm-9729fb33156d3a6cbe7e55a389ac7dd501cc9dfe.tar.bz2 |
[TwoAddressInstructionPass] Try 3 Addr Conversion After Commuting.
TwoAddressInstructionPass stops after a successful commuting but 3 Addr
conversion might be good for some cases.
Consider:
int foo(int a, int b) {
return a + b;
}
Before this commit, we emit:
addl %esi, %edi
movl %edi, %eax
ret
After this commit, we try 3 Addr conversion:
leal (%rsi,%rdi), %eax
ret
Patch by Volkan Keles <vkeles@apple.com>!
Differential Revision: http://reviews.llvm.org/D10851
llvm-svn: 241206
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions