Commit 02db2de
authored
[AArch64][SVE] Implement demanded bits for @llvm.aarch64.sve.cntp (#168714)
This allows DemandedBits to see that the SVE CNTP intrinsic will only
ever produce small positive integers. The maximum value you could get
here is 256, which is CNTP on a nxv16i1 on a machine with a 2048bit
vector size (the maximum for SVE).
Using this various redundant operations (zexts, sexts, ands, ors, etc)
can be eliminated.1 parent 0a88e96 commit 02db2de
File tree
3 files changed
+101
-27
lines changed- llvm
- lib/Target/AArch64
- test/CodeGen/AArch64
3 files changed
+101
-27
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19443 | 19443 | | |
19444 | 19444 | | |
19445 | 19445 | | |
19446 | | - | |
| 19446 | + | |
19447 | 19447 | | |
19448 | 19448 | | |
19449 | 19449 | | |
19450 | 19450 | | |
19451 | | - | |
19452 | 19451 | | |
19453 | | - | |
19454 | 19452 | | |
19455 | | - | |
19456 | 19453 | | |
19457 | | - | |
| 19454 | + | |
| 19455 | + | |
| 19456 | + | |
| 19457 | + | |
| 19458 | + | |
| 19459 | + | |
| 19460 | + | |
| 19461 | + | |
| 19462 | + | |
| 19463 | + | |
| 19464 | + | |
| 19465 | + | |
| 19466 | + | |
| 19467 | + | |
| 19468 | + | |
| 19469 | + | |
| 19470 | + | |
| 19471 | + | |
| 19472 | + | |
| 19473 | + | |
| 19474 | + | |
| 19475 | + | |
19458 | 19476 | | |
19459 | | - | |
19460 | 19477 | | |
19461 | 19478 | | |
19462 | 19479 | | |
| |||
31666 | 31683 | | |
31667 | 31684 | | |
31668 | 31685 | | |
31669 | | - | |
31670 | | - | |
31671 | | - | |
31672 | | - | |
31673 | | - | |
31674 | | - | |
31675 | | - | |
31676 | | - | |
31677 | | - | |
31678 | | - | |
31679 | | - | |
31680 | | - | |
31681 | | - | |
31682 | | - | |
| 31686 | + | |
| 31687 | + | |
31683 | 31688 | | |
31684 | | - | |
| 31689 | + | |
| 31690 | + | |
| 31691 | + | |
| 31692 | + | |
| 31693 | + | |
| 31694 | + | |
| 31695 | + | |
| 31696 | + | |
| 31697 | + | |
| 31698 | + | |
| 31699 | + | |
| 31700 | + | |
| 31701 | + | |
| 31702 | + | |
| 31703 | + | |
31685 | 31704 | | |
31686 | 31705 | | |
31687 | 31706 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
146 | | - | |
| 146 | + | |
147 | 147 | | |
148 | | - | |
| 148 | + | |
149 | 149 | | |
150 | 150 | | |
151 | | - | |
152 | | - | |
| 151 | + | |
| 152 | + | |
153 | 153 | | |
154 | 154 | | |
155 | | - | |
156 | 155 | | |
157 | 156 | | |
158 | 157 | | |
159 | | - | |
| 158 | + | |
160 | 159 | | |
161 | 160 | | |
162 | 161 | | |
| |||
Lines changed: 56 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
80 | 80 | | |
81 | 81 | | |
82 | 82 | | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
83 | 139 | | |
84 | 140 | | |
85 | 141 | | |
| |||
0 commit comments