brintos

brintos / llvm-project-archived public Read only

0
0
Text · 747 B · fd0d4f2 Raw
22 lines · cpp
1// RUN: %clang_cc1 -triple i686-windows-pc -emit-llvm -o - -mconstructor-aliases -O1 -disable-llvm-passes %s | FileCheck %s2 3struct Base { virtual ~Base(); };4struct Derived : Base {5  virtual ~Derived();6  static Derived inst;7};8 9Base::~Base(){}10Derived::~Derived(){}11Derived Derived::inst;12 13// CHECK: @"??1Derived@@UAE@XZ" = dso_local unnamed_addr alias void (ptr), ptr @"??1Base@@UAE@XZ"14 15// CHECK: define dso_local x86_thiscallcc void @"??1Base@@UAE@XZ"16// CHECK: define internal void @"??__E?inst@Derived@@2U1@A@@YAXXZ"17// CHECK: call i32 @atexit(ptr @"??__F?inst@Derived@@2U1@A@@YAXXZ"18//19// CHECK: define internal void @"??__F?inst@Derived@@2U1@A@@YAXXZ"20// CHECK-NEXT: entry:21// CHECK-NEXT: call x86_thiscallcc void @"??1Derived@@UAE@XZ"22