Files
llvm-project/clang/test/CodeGenCXX/virtual-function-attrs.cpp
Peter Collingbourne 0446e7cfae CodeGen: Mark functions used in vtables as unnamed_addr.
This marks virtual function declarations, as well as runtime library functions
__cxa_pure_virtual, __cxa_deleted_virtual and _purecall, as unnamed_addr. This
will allow us to correctly form relative references to them from vtables in
the relative vtable ABI.

Differential Revision: http://reviews.llvm.org/D18071

llvm-svn: 263464
2016-03-14 18:41:59 +00:00

15 lines
398 B
C++

// RUN: %clang_cc1 %s -triple %itanium_abi_triple -std=c++11 -emit-llvm -o - | FileCheck %s
class A {
virtual void f();
virtual void g();
virtual ~A();
};
void A::f() {}
// CHECK: define void @_ZN1A1fEv({{.*}}) unnamed_addr
// CHECK: declare void @_ZN1A1gEv({{.*}}) unnamed_addr
// CHECK: declare void @_ZN1AD1Ev({{.*}}) unnamed_addr
// CHECK: declare void @_ZN1AD0Ev({{.*}}) unnamed_addr