Commit ab6c3d5
authored
[AMDGPU] Change the representation of double literals in operands (#68740)
A 64-bit literal can be used as a 32-bit zero or sign extended operand.
In case of double zeroes are added to the low 32 bits. Currently asm
parser stores only high 32 bits of a double into an operand. To support
codegen as requested by the
#67781 we need to change the
representation to store a full 64-bit value so that codegen can simply
add immediates to an instruction.
There is some code to support compatibility with existing tests and asm
kernels. We allow to use short hex strings to represent only a high 32
bit of a double value as a valid literal.1 parent b3a39a9 commit ab6c3d5
File tree
9 files changed
+71
-22
lines changed- llvm/lib/Target/AMDGPU
- AsmParser
- Disassembler
- MCTargetDesc
- Utils
9 files changed
+71
-22
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2141 | 2141 | | |
2142 | 2142 | | |
2143 | 2143 | | |
| 2144 | + | |
2144 | 2145 | | |
2145 | 2146 | | |
2146 | | - | |
| 2147 | + | |
2147 | 2148 | | |
2148 | 2149 | | |
2149 | 2150 | | |
| |||
2242 | 2243 | | |
2243 | 2244 | | |
2244 | 2245 | | |
2245 | | - | |
| 2246 | + | |
| 2247 | + | |
| 2248 | + | |
2246 | 2249 | | |
2247 | 2250 | | |
2248 | 2251 | | |
| |||
4309 | 4312 | | |
4310 | 4313 | | |
4311 | 4314 | | |
4312 | | - | |
| 4315 | + | |
| 4316 | + | |
| 4317 | + | |
| 4318 | + | |
| 4319 | + | |
| 4320 | + | |
| 4321 | + | |
| 4322 | + | |
| 4323 | + | |
| 4324 | + | |
| 4325 | + | |
| 4326 | + | |
| 4327 | + | |
4313 | 4328 | | |
4314 | 4329 | | |
4315 | 4330 | | |
| |||
Lines changed: 20 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
378 | 378 | | |
379 | 379 | | |
380 | 380 | | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
381 | 390 | | |
382 | 391 | | |
383 | 392 | | |
| |||
1219 | 1228 | | |
1220 | 1229 | | |
1221 | 1230 | | |
1222 | | - | |
| 1231 | + | |
1223 | 1232 | | |
1224 | 1233 | | |
1225 | 1234 | | |
| |||
1229 | 1238 | | |
1230 | 1239 | | |
1231 | 1240 | | |
1232 | | - | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
1233 | 1244 | | |
1234 | | - | |
| 1245 | + | |
1235 | 1246 | | |
1236 | 1247 | | |
1237 | 1248 | | |
| |||
1448 | 1459 | | |
1449 | 1460 | | |
1450 | 1461 | | |
1451 | | - | |
| 1462 | + | |
1452 | 1463 | | |
1453 | 1464 | | |
1454 | 1465 | | |
| |||
1460 | 1471 | | |
1461 | 1472 | | |
1462 | 1473 | | |
1463 | | - | |
| 1474 | + | |
| 1475 | + | |
1464 | 1476 | | |
1465 | 1477 | | |
1466 | 1478 | | |
1467 | 1479 | | |
1468 | 1480 | | |
1469 | | - | |
| 1481 | + | |
| 1482 | + | |
1470 | 1483 | | |
1471 | 1484 | | |
1472 | 1485 | | |
| |||
1494 | 1507 | | |
1495 | 1508 | | |
1496 | 1509 | | |
1497 | | - | |
| 1510 | + | |
1498 | 1511 | | |
1499 | 1512 | | |
1500 | 1513 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
| 100 | + | |
100 | 101 | | |
101 | 102 | | |
102 | 103 | | |
| |||
229 | 230 | | |
230 | 231 | | |
231 | 232 | | |
232 | | - | |
| 233 | + | |
233 | 234 | | |
234 | 235 | | |
235 | | - | |
236 | | - | |
| 236 | + | |
| 237 | + | |
237 | 238 | | |
238 | 239 | | |
239 | 240 | | |
240 | | - | |
| 241 | + | |
241 | 242 | | |
242 | 243 | | |
243 | 244 | | |
| |||
Lines changed: 10 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
426 | 426 | | |
427 | 427 | | |
428 | 428 | | |
429 | | - | |
| 429 | + | |
430 | 430 | | |
431 | 431 | | |
432 | 432 | | |
| |||
454 | 454 | | |
455 | 455 | | |
456 | 456 | | |
457 | | - | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
458 | 461 | | |
459 | 462 | | |
460 | 463 | | |
| |||
605 | 608 | | |
606 | 609 | | |
607 | 610 | | |
608 | | - | |
609 | 611 | | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
610 | 615 | | |
611 | 616 | | |
612 | | - | |
| 617 | + | |
613 | 618 | | |
614 | 619 | | |
615 | 620 | | |
| |||
671 | 676 | | |
672 | 677 | | |
673 | 678 | | |
674 | | - | |
| 679 | + | |
675 | 680 | | |
676 | 681 | | |
677 | 682 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
94 | | - | |
| 94 | + | |
95 | 95 | | |
96 | 96 | | |
97 | 97 | | |
| |||
Lines changed: 4 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
411 | 411 | | |
412 | 412 | | |
413 | 413 | | |
414 | | - | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
415 | 418 | | |
416 | 419 | | |
417 | 420 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1263 | 1263 | | |
1264 | 1264 | | |
1265 | 1265 | | |
1266 | | - | |
| 1266 | + | |
| 1267 | + | |
| 1268 | + | |
1267 | 1269 | | |
1268 | 1270 | | |
1269 | 1271 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2519 | 2519 | | |
2520 | 2520 | | |
2521 | 2521 | | |
| 2522 | + | |
| 2523 | + | |
| 2524 | + | |
| 2525 | + | |
| 2526 | + | |
| 2527 | + | |
| 2528 | + | |
2522 | 2529 | | |
2523 | 2530 | | |
2524 | 2531 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1290 | 1290 | | |
1291 | 1291 | | |
1292 | 1292 | | |
| 1293 | + | |
| 1294 | + | |
| 1295 | + | |
1293 | 1296 | | |
1294 | 1297 | | |
1295 | 1298 | | |
| |||
0 commit comments