Skip to content

Commit

Permalink
Reland "[CGObjC] Add run line for release mode in test arc-exceptions…
Browse files Browse the repository at this point in the history
…-seh.mm (NFC)"

This reverts commit a37807a.

Differential Revision: https://reviews.llvm.org/D137942
  • Loading branch information
weliveindetail committed Nov 23, 2022
1 parent c20a800 commit 63d65d3
Showing 1 changed file with 13 additions and 8 deletions.
21 changes: 13 additions & 8 deletions clang/test/CodeGenObjCXX/arc-exceptions-seh.mm
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// RUN: %clang_cc1 -triple x86_64-pc-windows-msvc -emit-llvm -fobjc-arc -fexceptions -fobjc-exceptions -fobjc-arc-exceptions -fobjc-runtime=gnustep-2.0 -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple x86_64-pc-windows-msvc -emit-llvm -fobjc-arc -fexceptions -fobjc-exceptions -fobjc-arc-exceptions -fobjc-runtime=gnustep-2.0 -o - %s | FileCheck %s --check-prefixes=CHECK,CHECK-O0
// RUN: %clang_cc1 -O2 -triple x86_64-pc-windows-msvc -emit-llvm -fobjc-arc -fexceptions -fobjc-exceptions -fobjc-arc-exceptions -fobjc-runtime=gnustep-2.0 -mllvm -enable-objc-arc-opts=false -o - %s | FileCheck %s --check-prefixes=CHECK,CHECK-O2

// WinEH requires funclet tokens on nounwind intrinsics if they can lower to
// regular function calls in the course of IR transformations.
Expand Down Expand Up @@ -40,25 +41,29 @@ void try_catch_with_objc_intrinsic() {
// CHECK: [ "funclet"(token [[CATCHPAD]]) ]
// CHECK: unwind label %[[CLEANUP2]]
// CHECK: call
// CHECK: @llvm.objc.storeStrong
// CHECK-O0: @llvm.objc.storeStrong
// CHECK-O2: @llvm.objc.release
// CHECK: [ "funclet"(token [[CATCHPAD]]) ]
// CHECK: catchret from [[CATCHPAD]] to label %catchret.dest
// CHECK-O0: catchret from [[CATCHPAD]] to label %catchret.dest
// CHECK-O2: catchret from [[CATCHPAD]] to label %eh.cont
//
// This block exists and it's empty:
// CHECK: catchret.dest:
// CHECK-NEXT: br label %eh.cont
// In debug mode, this block exists and it's empty:
// CHECK-O0: catchret.dest:
// CHECK-O0-NEXT: br label %eh.cont
//
// CHECK: [[CLEANUP2]]:
// CHECK-NEXT: [[CLEANUPPAD2:%[0-9]+]] = cleanuppad within [[CATCHPAD]]
// CHECK: call
// CHECK: @llvm.objc.storeStrong
// CHECK-O0: @llvm.objc.storeStrong
// CHECK-O2: @llvm.objc.release
// CHECK: [ "funclet"(token [[CLEANUPPAD2]]) ]
// CHECK: cleanupret from [[CLEANUPPAD2]]
// CHECK: unwind label %[[CLEANUP1]]
//
// CHECK: [[CLEANUP1]]:
// CHECK-NEXT: [[CLEANUPPAD1:%[0-9]+]] = cleanuppad within none
// CHECK: call
// CHECK: @llvm.objc.storeStrong
// CHECK-O0: @llvm.objc.storeStrong
// CHECK-O2: @llvm.objc.release
// CHECK: [ "funclet"(token [[CLEANUPPAD1]]) ]
// CHECK: cleanupret from [[CLEANUPPAD1]] unwind to caller

0 comments on commit 63d65d3

Please sign in to comment.