diff options
author | Chris Lattner <sabre@nondot.org> | 2010-12-20 01:37:09 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-12-20 01:37:09 +0000 |
commit | 5c00d41688aabf6c1c9a6bc4f008019d8301fe1f (patch) | |
tree | 10edac18ae27cf142dc0a12a816b7a9663fab81f /clang/lib/CodeGen/Mangle.cpp | |
parent | fc0c6b1ea9841341d159f9a7ef62c5047c91c2cc (diff) | |
download | bcm5719-llvm-5c00d41688aabf6c1c9a6bc4f008019d8301fe1f.tar.gz bcm5719-llvm-5c00d41688aabf6c1c9a6bc4f008019d8301fe1f.zip |
now that addc/adde are gone, "ADDC" in the X86 backend uses EFLAGS results,
the same as setcc. Optimize ADDC(0,0,FLAGS) -> SET_CARRY(FLAGS). This is
a step towards finishing off PR5443. In the testcase in that bug we now get:
movq %rdi, %rax
addq %rsi, %rax
sbbq %rcx, %rcx
testb $1, %cl
setne %dl
ret
instead of:
movq %rdi, %rax
addq %rsi, %rax
movl $0, %ecx
adcq $0, %rcx
testq %rcx, %rcx
setne %dl
ret
llvm-svn: 122219
Diffstat (limited to 'clang/lib/CodeGen/Mangle.cpp')
0 files changed, 0 insertions, 0 deletions