[Patch] Deadstore removal improvement
Original Reporter info from Mantis: CuriousKit @CuriousKit
-
Reporter name: J. Gareth Moreton
Original Reporter info from Mantis: CuriousKit @CuriousKit
- Reporter name: J. Gareth Moreton
Description:
#36622 (closed) ended up removing some deadstore removal optimisations in cases where the source register of the errant MOV operation is replaced with a constant. This patch resolves that issue by allowing the source parameter to be either a register or a constnat, as well as widening the criteria to include writes to the stack below the return address, not just offsets from EBP/RBP.
Steps to reproduce:
Apply patch and confirm correct compilation as well as a few additional removals of ineffective MOV operations.
Mantis conversion info:
- Mantis ID: 36669
- OS: Microsoft Windows
- OS Build: 10 Professional
- Build: r44120
- Platform: i386 and x86_64
- Version: 3.3.1
- Fixed in version: 3.3.1
- Fixed in revision: 44147 (#e7d2c93c)