Commit 792eb13
committed
[AArch64] Combine signext_inreg of setcc(... != splat(0))
Add the following fold AArch64 DAGCombine:
Fold setcc_merge_zero(
pred, insert_subvector(undef, signext_inreg(vNi1), 0),
!= splat(0))
-> setcc_merge_zero(pred, insert_subvector(undef, shl(vNi1), 0),
!= splat(0))
as the comparison (!= 0) depends only on bit 0 of the input, the left
shift is sufficient.1 parent 96d5567 commit 792eb13
File tree
7 files changed
+167
-216
lines changed- llvm
- lib/Target/AArch64
- test/CodeGen/AArch64
7 files changed
+167
-216
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26097 | 26097 | | |
26098 | 26098 | | |
26099 | 26099 | | |
| 26100 | + | |
| 26101 | + | |
| 26102 | + | |
| 26103 | + | |
| 26104 | + | |
| 26105 | + | |
| 26106 | + | |
| 26107 | + | |
| 26108 | + | |
| 26109 | + | |
| 26110 | + | |
26100 | 26111 | | |
26101 | 26112 | | |
26102 | 26113 | | |
| |||
26137 | 26148 | | |
26138 | 26149 | | |
26139 | 26150 | | |
| 26151 | + | |
| 26152 | + | |
| 26153 | + | |
| 26154 | + | |
| 26155 | + | |
| 26156 | + | |
| 26157 | + | |
| 26158 | + | |
| 26159 | + | |
| 26160 | + | |
| 26161 | + | |
| 26162 | + | |
| 26163 | + | |
| 26164 | + | |
| 26165 | + | |
| 26166 | + | |
| 26167 | + | |
| 26168 | + | |
| 26169 | + | |
| 26170 | + | |
| 26171 | + | |
26140 | 26172 | | |
26141 | 26173 | | |
26142 | 26174 | | |
| |||
0 commit comments