[Clang][CodeGen]`vtable`, `typeinfo` et al. are globals
[llvm-project.git] / llvm / test / Instrumentation / AddressSanitizer / instrument-section-invalid-c-ident.ll
blob6226f18928030eea159509e20149154a14c1c149
1 ; This test checks that sections with names not resembling valid C identifiers
2 ; are instrumented.
3 ; RUN: opt < %s -passes=asan -S | FileCheck %s
5 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
6 target triple = "x86_64-unknown-netbsd"
8 module asm ".hidden invalid$c$name"
10 @data1 = dso_local global i32 1, align 4
11 @data2 = dso_local global i32 2, align 4
12 @__invalid$c$name_sym_data1 = internal constant ptr @data1, section "invalid$c$name", align 8
13 @__invalid$c$name_sym_data2 = internal constant ptr @data2, section "invalid$c$name", align 8
14 ; CHECK: @"__invalid$c$name_sym_data1" = internal constant{{.*}}, section "invalid$c$name"
15 ; CHECK-NEXT: @"__invalid$c$name_sym_data2" = internal constant{{.*}}, section "invalid$c$name"
16 ; CHECK: @"__asan_global___invalid$c$name_sym_data1"
17 ; CHECK-NEXT: @"__asan_global___invalid$c$name_sym_data2"