diff options
Diffstat (limited to 'test/CodeGenCXX/debug-info-ms-dtor-thunks.cpp')
| -rw-r--r-- | test/CodeGenCXX/debug-info-ms-dtor-thunks.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/CodeGenCXX/debug-info-ms-dtor-thunks.cpp b/test/CodeGenCXX/debug-info-ms-dtor-thunks.cpp new file mode 100644 index 000000000000..f876267eb5d6 --- /dev/null +++ b/test/CodeGenCXX/debug-info-ms-dtor-thunks.cpp @@ -0,0 +1,14 @@ +// RUN: %clang_cc1 -triple i686--windows -emit-llvm -debug-info-kind=line-tables-only -x c++ %s -fms-extensions -o - | FileCheck %s + +struct __declspec(dllexport) S { virtual ~S(); }; +struct __declspec(dllexport) T { virtual ~T(); }; +struct __declspec(dllexport) U : S, T { virtual ~U(); }; + +// CHECK-LABEL: define {{.*}} @"\01??_GS@@UAEPAXI@Z" +// CHECK: call x86_thiscallcc void @"\01??_DS@@QAEXXZ"(%struct.S* %this1){{.*}}!dbg !{{[0-9]+}} + +// CHECK-LABEL: define {{.*}} @"\01??_GT@@UAEPAXI@Z" +// CHECK: call x86_thiscallcc void @"\01??_DT@@QAEXXZ"(%struct.T* %this1){{.*}}!dbg !{{[0-9]+}} + +// CHECK-LABEL: define {{.*}} @"\01??_GU@@UAEPAXI@Z" +// CHECK: call x86_thiscallcc void @"\01??_DU@@QAEXXZ"(%struct.U* %this1){{.*}}!dbg !{{[0-9]+}} |
