History log of /llvm-project/llvm/lib/Target/RISCV/RISCVPushPopOptimizer.cpp (Results 1 – 7 of 7)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3
# 514686ac 07-Feb-2024 Visoiu Mistrih Francis <890283+francisvm@users.noreply.github.com>

[RISCV] Add correct Uses, Defs, isReturn to Zcmp (#81039)

* they all do stack adjustments, so they all use and def x2.
* popret and popretz also return
* popretz also defines x10

This adds that

[RISCV] Add correct Uses, Defs, isReturn to Zcmp (#81039)

* they all do stack adjustments, so they all use and def x2.
* popret and popretz also return
* popretz also defines x10

This adds that to the TD file and updates the PushPopOptimizer to
preserve the extra implicit operands added during frame lowering when
converting to popret(z).

show more ...


Revision tags: llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init
# 4162a9bc 08-Dec-2023 Craig Topper <craig.topper@sifive.com>

[RISCV] Cleanup pass initialization.

Remove redundant initializations from pass constructors that were
already being initialized by LLVMInitializeRISCVTarget().


Revision tags: llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4
# 44d4f975 21-Oct-2023 Craig Topper <craig.topper@sifive.com>

[RISCV] Replace RISCV -> RISC-V in comments. NFC

I did this once previously, but more uses have crept in.


Revision tags: llvmorg-17.0.3
# fc654b4f 10-Oct-2023 Alex Bradbury <asb@igalia.com>

[RISCV][NFC] Correct/clarify RISCVPushPopOptimizer.cpp header comment

Refer to Zcmp rather than Zca. Also, this pass will only modify POP
instructions (replacing with POPRET if possible).


Revision tags: llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3
# 53e89f5e 14-Aug-2023 Anmol P. Paralkar <anmol.paralkar@oss.nxp.com>

[RISCV] Add bounds check before use on returned iterator.

Check iterator validity before use; fixes a crash seen in the RISC-V
Zcmp Push/Pop optimization pass when compiling an internal benchmark.

[RISCV] Add bounds check before use on returned iterator.

Check iterator validity before use; fixes a crash seen in the RISC-V
Zcmp Push/Pop optimization pass when compiling an internal benchmark.

Reviewed By: asb, wangpc

Differential Revision: https://reviews.llvm.org/D157674

show more ...


Revision tags: llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init
# cde5e428 20-Jul-2023 Alex Bradbury <asb@igalia.com>

[RISCV][NFC] Get rid of additional unneeded static_cast around RISCVSubtarget

Some similar cases to 60152f1983336e709.


# c0221e00 07-Jul-2023 WuXinlong <821408745@qq.com>

[RISCV] Add a pass to combine `cm.pop` and `ret` insts

`RISCVPushPopOptimizer.cpp` combine `cm.pop` and `ret` to generates `cm.popretz` or `cm.popret` .

Reviewed By: craig.topper

Differential Revi

[RISCV] Add a pass to combine `cm.pop` and `ret` insts

`RISCVPushPopOptimizer.cpp` combine `cm.pop` and `ret` to generates `cm.popretz` or `cm.popret` .

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D150416

show more ...