mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01:00
1bfe6867e2
Summary: private and internal: should not trigger ODR at all. unnamed_addr: current ODR checking approach fail and rereport false violation if a linker merges such globals linkonce_odr, weak_odr: could cause similar problems and they are already not instrumented for ELF. Reviewers: eugenis, kcc Subscribers: kubamracek, hiraditya, llvm-commits Differential Revision: https://reviews.llvm.org/D55621 llvm-svn: 349015
14 lines
728 B
LLVM
14 lines
728 B
LLVM
; This test checks that we instrument regular globals, but do not touch
|
|
; the linkonce_odr ones.
|
|
; RUN: opt < %s -asan -asan-module -S | FileCheck %s
|
|
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
|
target triple = "x86_64-unknown-linux-gnu"
|
|
; no action should be taken for these globals
|
|
@global_noinst = linkonce_odr constant [2 x i8] [i8 1, i8 2]
|
|
@global_weak_noinst = weak_odr constant [2 x i8] [i8 1, i8 2]
|
|
@global_inst = private constant [2 x i8] [i8 1, i8 2]
|
|
; CHECK-NOT: {{asan_gen.*global_noinst}}
|
|
; CHECK-NOT: {{asan_gen.*global_weak_noinst}}
|
|
; CHECK: {{asan_gen.*global_inst}}
|
|
; CHECK: @asan.module_ctor
|