[X86] Move RDFLAGS/WRFLAGS expansion until after RA
The register allocator may introduce reloads in the middle of reading and writing the EFLAGS register, due to the RDFLAGS & WRFLAGS pseudos being expanded before RA. This may cause an issue where the stack pointer was adjusted but the stack offset for the reload wasn't accounted for (see [1]). To avoid this, expand these pseudos after register allocation. [1] https://github.com/llvm/llvm-project/issues/59102 Reviewed By: craig.topper, nickdesaulniers, pengfei Differential Revision: https://reviews.llvm.org/D140045
parent
05347911
Please register or sign in to comment