diff options
author | Reid Kleckner <reid@kleckner.net> | 2015-04-23 21:22:30 +0000 |
---|---|---|
committer | Reid Kleckner <reid@kleckner.net> | 2015-04-23 21:22:30 +0000 |
commit | e3af86e9d9c348744aec98f6180f4260455954ad (patch) | |
tree | 723ffeb851e56753fafb238a9251b4cd44f4b3e8 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
parent | de71142dcef3414043f03364e451adbd68d03f0e (diff) | |
download | bcm5719-llvm-e3af86e9d9c348744aec98f6180f4260455954ad.tar.gz bcm5719-llvm-e3af86e9d9c348744aec98f6180f4260455954ad.zip |
[WinEH] Replace more lpad value uses with undef
We were asserting on code like this:
extern "C" unsigned long _exception_code();
void might_crash(unsigned long);
void foo() {
__try {
might_crash(0);
} __except(1) {
might_crash(_exception_code());
}
}
Gtest and many other libraries get the exception code from the __except
block. What's supposed to happen here is that EAX is live into the
__except block, and it contains the exception code. Eventually we'll
represent that as a use of the landingpad ehptr value, but for now we
can replace it with undef.
llvm-svn: 235649
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions