diff options
| author | Sanjay Patel <spatel@rotateright.com> | 2017-06-07 16:16:45 +0000 |
|---|---|---|
| committer | Sanjay Patel <spatel@rotateright.com> | 2017-06-07 16:16:45 +0000 |
| commit | 8ce1e3b759c483f3498b7b221445d5a52d54f640 (patch) | |
| tree | d03d5dab5742227ad625f885187be0e4baefe4da /llvm/lib/CodeGen/LiveIntervalAnalysis.cpp | |
| parent | 5a2f881b393ff09e50ed5b6a5f00b267f536cbfe (diff) | |
| download | bcm5719-llvm-8ce1e3b759c483f3498b7b221445d5a52d54f640.tar.gz bcm5719-llvm-8ce1e3b759c483f3498b7b221445d5a52d54f640.zip | |
[CGP] avoid zext/trunc of a memcmp expansion compare
This could be viewed as another shortcoming of the DAGCombiner:
when both operands of a compare are zexted from the same source
type, we should be able to compare the original types.
The effect on PowerPC perf is likely unnoticeable, but there's a
visible regression for x86 if we feed the suboptimal IR for memcmp
expansion to the DAG:
_cmp_eq4_zexted_to_i64:
movl (%rdi), %ecx
movl (%rsi), %edx
xorl %eax, %eax
cmpq %rdx, %rcx
sete %al
_cmp_eq4_better:
movl (%rdi), %ecx
xorl %eax, %eax
cmpl (%rsi), %ecx
sete %al
llvm-svn: 304923
Diffstat (limited to 'llvm/lib/CodeGen/LiveIntervalAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions

