llvm-project
d15be85f - [WebAssembly] Opt out of enableTiedFastRegAlloc (#229814)

Commit
15 hours ago
[WebAssembly] Opt out of enableTiedFastRegAlloc (#229814) Commit 69fa41f715fddf7028c0399e4a54e89911d095c9 enabled EnableTiedFastRegAlloc by default in TargetMachine.cpp, which skips TwoAddressInstructionPass at -O0 under the expectation that RegAllocFast will lower tied operands. However, WebAssembly does not use a register allocator, so skipping TwoAddressInstructionPass causes tied operands (such as in inline assembly using '+r' constraints) to never be lowered, leaving the tied output registers uninitialized. Opt out of enableTiedFastRegAlloc in WebAssemblyTargetMachine so that TwoAddressInstructionPass continues to run at -O0.
Author
Parents
Loading