diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/cppeh-frame-vars.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/cppeh-frame-vars.ll | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/llvm/test/CodeGen/X86/cppeh-frame-vars.ll b/llvm/test/CodeGen/X86/cppeh-frame-vars.ll index 3a611c30151..471aeed8f73 100644 --- a/llvm/test/CodeGen/X86/cppeh-frame-vars.ll +++ b/llvm/test/CodeGen/X86/cppeh-frame-vars.ll @@ -116,10 +116,8 @@ catch.dispatch: ; preds = %lpad catch: ; preds = %catch.dispatch %exn = load i8*, i8** %exn.slot - %tmp8 = call i8* @llvm.eh.begincatch(i8* %exn) #1 - %tmp9 = bitcast i8* %tmp8 to i32* - %tmp10 = load i32, i32* %tmp9, align 4 - store i32 %tmp10, i32* %e, align 4 + %e.i8 = bitcast i32* %e to i8* + call void @llvm.eh.begincatch(i8* %exn, i8* %e.i8) #1 %tmp11 = load i32, i32* %e, align 4 %tmp12 = load i32, i32* %NumExceptions, align 4 %idxprom = sext i32 %tmp12 to i64 @@ -190,9 +188,6 @@ eh.resume: ; preds = %catch.dispatch ; CHECK: %ExceptionVal = getelementptr inbounds %"struct.\01?test@@YAXXZ.ehdata", %"struct.\01?test@@YAXXZ.ehdata"* %eh.data, i32 0, i32 4 ; CHECK: %i = getelementptr inbounds %"struct.\01?test@@YAXXZ.ehdata", %"struct.\01?test@@YAXXZ.ehdata"* %eh.data, i32 0, i32 5 ; CHECK: %Data = getelementptr inbounds %"struct.\01?test@@YAXXZ.ehdata", %"struct.\01?test@@YAXXZ.ehdata"* %eh.data, i32 0, i32 6 -; CHECK: %tmp9 = bitcast i8* %eh.obj to i32* -; CHECK: %tmp10 = load i32, i32* %tmp9, align 4 -; CHECK: store i32 %tmp10, i32* %e, align 4 ; CHECK: %tmp11 = load i32, i32* %e, align 4 ; CHECK: %tmp12 = load i32, i32* %NumExceptions, align 4 ; CHECK: %idxprom = sext i32 %tmp12 to i64 @@ -241,7 +236,7 @@ declare i32 @__CxxFrameHandler3(...) ; Function Attrs: nounwind readnone declare i32 @llvm.eh.typeid.for(i8*) #3 -declare i8* @llvm.eh.begincatch(i8*) +declare void @llvm.eh.begincatch(i8*, i8*) declare void @llvm.eh.endcatch() |

