We've encountered an LLVM verification failure when building Swift with the SimplifyCFG pass enabled. I found that https://reviews.llvm.org/D158083 fixed this pass by preventing sinking loads or stores of swifterror values, but it did not implement the same protection for call or invokes. In `Verifier.cpp` [here](c685355811/llvm/lib/IR/Verifier.cpp (L4360-L4364)) and [here](c685355811/llvm/lib/IR/Verifier.cpp (L3661-L3662)) we can see that swifterror values must also be used directly by call instructions.
164 KiB
164 KiB