Commit b5bb1f9
authored
feat(slang): add checked exponentiation (#344)
Add checked exponentiation support by routing `ExponentiationExpression`
through `emit_binary_op` and the `Operator` enum.
In checked mode, exponentiation now emits `sol.cexp`; in unchecked
blocks it emits `sol.exp`.1 parent d529afb commit b5bb1f9
3 files changed
Lines changed: 24 additions & 38 deletions
- mlir/include/mlir/Conversion/SolToStandard/EVMUtil.h+7-6
- mlir/include/mlir/Dialect/Sol/Sol.h+11
- mlir/include/mlir/Dialect/Sol/SolBase.td+4-2
- mlir/include/mlir/Dialect/Sol/SolOps.td+36-21
- mlir/lib/Conversion/SolToStandard/EVMUtil.cpp+13-13
- mlir/lib/Conversion/SolToStandard/SolToStandardPass.cpp+1
- mlir/lib/Conversion/SolToStandard/SolToYul.cpp+97-72
- mlir/lib/Conversion/SolToStandard/TypeConverter.cpp+6-1
- mlir/lib/Dialect/Sol/SolBase.cpp+18-6
- mlir/lib/Dialect/Sol/SolOps.cpp+44-7
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
16 | 15 | | |
17 | 16 | | |
18 | 17 | | |
| |||
26 | 25 | | |
27 | 26 | | |
28 | 27 | | |
29 | | - | |
30 | 28 | | |
31 | 29 | | |
32 | 30 | | |
| |||
185 | 183 | | |
186 | 184 | | |
187 | 185 | | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
188 | 193 | | |
189 | 194 | | |
190 | 195 | | |
| |||
272 | 277 | | |
273 | 278 | | |
274 | 279 | | |
275 | | - | |
276 | | - | |
277 | | - | |
278 | | - | |
279 | | - | |
280 | | - | |
281 | | - | |
282 | | - | |
283 | | - | |
284 | | - | |
285 | | - | |
286 | | - | |
287 | | - | |
288 | | - | |
289 | | - | |
290 | | - | |
291 | | - | |
292 | | - | |
293 | | - | |
294 | | - | |
295 | | - | |
296 | | - | |
297 | | - | |
298 | | - | |
299 | | - | |
300 | | - | |
301 | | - | |
302 | | - | |
303 | | - | |
304 | | - | |
305 | | - | |
306 | | - | |
307 | | - | |
308 | | - | |
309 | 280 | | |
310 | 281 | | |
311 | 282 | | |
| |||
Lines changed: 16 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
| 20 | + | |
19 | 21 | | |
20 | 22 | | |
21 | 23 | | |
| |||
38 | 40 | | |
39 | 41 | | |
40 | 42 | | |
| 43 | + | |
| 44 | + | |
41 | 45 | | |
42 | 46 | | |
43 | 47 | | |
| |||
120 | 124 | | |
121 | 125 | | |
122 | 126 | | |
123 | | - | |
| 127 | + | |
124 | 128 | | |
125 | 129 | | |
126 | 130 | | |
| |||
183 | 187 | | |
184 | 188 | | |
185 | 189 | | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
186 | 200 | | |
187 | 201 | | |
188 | 202 | | |
| |||
242 | 256 | | |
243 | 257 | | |
244 | 258 | | |
| 259 | + | |
245 | 260 | | |
246 | 261 | | |
247 | 262 | | |
| |||
0 commit comments