Commit 289c3e4
committed
[LegalizeTypes][RISCV] Control sign-extend for atomicrmw input argument
Similar to the argument sign-extend control provided by
getExtendForAtomicCmpSwapArg for `cmpxchg`, this change adds
getExtendForAtomicRMWArg for `atomicrmw <op>`.
This mechanism is used to correct the RISCV code generation when using atomic
pseudo expansions that perform sub-word comparions inside a LR/SC block, and
expect a correctly sign-extended input argument.1 parent 1c06bd8 commit 289c3e4
File tree
6 files changed
+197
-121
lines changed- llvm
- include/llvm/CodeGen
- lib
- CodeGen/SelectionDAG
- Target/RISCV
- test/CodeGen/RISCV
6 files changed
+197
-121
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2459 | 2459 | | |
2460 | 2460 | | |
2461 | 2461 | | |
| 2462 | + | |
| 2463 | + | |
| 2464 | + | |
| 2465 | + | |
| 2466 | + | |
| 2467 | + | |
2462 | 2468 | | |
2463 | 2469 | | |
2464 | 2470 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
429 | 429 | | |
430 | 430 | | |
431 | 431 | | |
432 | | - | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
433 | 446 | | |
434 | 447 | | |
435 | 448 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24483 | 24483 | | |
24484 | 24484 | | |
24485 | 24485 | | |
| 24486 | + | |
| 24487 | + | |
| 24488 | + | |
| 24489 | + | |
| 24490 | + | |
| 24491 | + | |
| 24492 | + | |
| 24493 | + | |
| 24494 | + | |
| 24495 | + | |
| 24496 | + | |
| 24497 | + | |
| 24498 | + | |
| 24499 | + | |
| 24500 | + | |
| 24501 | + | |
| 24502 | + | |
| 24503 | + | |
| 24504 | + | |
| 24505 | + | |
24486 | 24506 | | |
24487 | 24507 | | |
24488 | 24508 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
245 | 245 | | |
246 | 246 | | |
247 | 247 | | |
| 248 | + | |
248 | 249 | | |
249 | 250 | | |
250 | 251 | | |
| |||
0 commit comments