Peter Collingbourne | e44acad | 2018-06-26 02:15:47 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -triple x86_64-unknown-linux -fsanitize=cfi-mfcall -fsanitize-trap=cfi-mfcall -fvisibility hidden -emit-llvm -o - %s | FileCheck %s |
2 | |||||
3 | struct S; | ||||
4 | |||||
5 | void f(S *s, void (S::*p)()) { | ||||
6 | // CHECK-NOT: llvm.type.test | ||||
7 | // CHECK: llvm.type.test{{.*}}!"_ZTSM1SFvvE.virtual" | ||||
8 | // CHECK-NOT: llvm.type.test | ||||
9 | (s->*p)(); | ||||
10 | } | ||||
11 | |||||
12 | // CHECK: declare i1 @llvm.type.test |