mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
[ASan] Add -asan-module to the ASan .ll tests.
After the -asan pass had been split into -asan (function-level) and -asan-module (module-level) some of the tests have silently stopped working, because they didn't instrument the globals anymore. We've decided to have every test using both passes, irrespective of the presence of globals in it. llvm-svn: 204335
This commit is contained in:
parent
0eb130e34f
commit
7f1c389c71
@ -1,4 +1,4 @@
|
||||
; RUN: opt < %s -asan -S | llc -o /dev/null
|
||||
; RUN: opt < %s -asan -asan-module -S | llc -o /dev/null
|
||||
; The bug manifests as a reg alloc failure:
|
||||
; error: ran out of registers during register allocation
|
||||
; ModuleID = 'z.o'
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt < %s -basicaa -gvn -asan -S | FileCheck %s
|
||||
; RUN: opt < %s -basicaa -gvn -asan -asan-module -S | FileCheck %s
|
||||
; ASAN conflicts with load widening iff the widened load accesses data out of bounds
|
||||
; (while the original unwidened loads do not).
|
||||
; http://code.google.com/p/address-sanitizer/issues/detail?id=20#c1
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Test basic address sanitizer instrumentation.
|
||||
;
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; 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"
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -asan -asan-coverage=1 -S | FileCheck %s --check-prefix=CHECK1
|
||||
; RUN: opt < %s -asan -asan-coverage=2 -S | FileCheck %s --check-prefix=CHECK2
|
||||
; RUN: opt < %s -asan -asan-module -asan-coverage=1 -S | FileCheck %s --check-prefix=CHECK1
|
||||
; RUN: opt < %s -asan -asan-module -asan-coverage=2 -S | FileCheck %s --check-prefix=CHECK2
|
||||
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"
|
||||
define void @foo(i32* %a) sanitize_address {
|
||||
|
@ -1,6 +1,6 @@
|
||||
; This test checks that we are not instrumenting globals
|
||||
; that we created ourselves.
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; 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-S128"
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
@ -1,6 +1,11 @@
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; 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
|
||||
@v1 = linkonce_odr constant i8 1
|
||||
; CHECK-NOT: __asan_register_globals
|
||||
@global_noinst = linkonce_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: {{asan_gen.*global_inst}}
|
||||
; CHECK: @asan.module_ctor
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; 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 thread locals
|
||||
@xxx = thread_local global i32 0, align 4
|
||||
; CHECK-NOT: __asan_register_globals
|
||||
; CHECK-NOT: {{call.*__asan_register_globals}}
|
||||
|
@ -1,9 +1,9 @@
|
||||
; RUN: opt < %s -asan -S \
|
||||
; RUN: opt < %s -asan -asan-module -S \
|
||||
; RUN: -mtriple=i386-unknown-freebsd \
|
||||
; RUN: -default-data-layout="e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" | \
|
||||
; RUN: FileCheck --check-prefix=CHECK-32 %s
|
||||
|
||||
; RUN: opt < %s -asan -S \
|
||||
; RUN: opt < %s -asan -asan-module -S \
|
||||
; RUN: -mtriple=x86_64-unknown-freebsd \
|
||||
; RUN: -default-data-layout="e-m:e-i64:64-f80:128-n8:16:32:64-S128" | \
|
||||
; RUN: FileCheck --check-prefix=CHECK-64 %s
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; RUN: opt < %s -asan -asan-module -S | FileCheck %s
|
||||
; AddressSanitizer must insert __asan_handle_no_return
|
||||
; before every noreturn call or invoke.
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Test that AddressSanitizer instruments "(*a)++" only once.
|
||||
; RUN: opt < %s -asan -S -asan-opt=1 | FileCheck %s -check-prefix=OPT1
|
||||
; RUN: opt < %s -asan -S -asan-opt=0 | FileCheck %s -check-prefix=OPT0
|
||||
; RUN: opt < %s -asan -asan-module -S -asan-opt=1 | FileCheck %s -check-prefix=OPT1
|
||||
; RUN: opt < %s -asan -asan-module -S -asan-opt=0 | FileCheck %s -check-prefix=OPT0
|
||||
|
||||
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"
|
||||
|
@ -1,5 +1,5 @@
|
||||
; Test the -asan-keep-uninstrumented-functions flag: FOO should get cloned
|
||||
; RUN: opt < %s -asan -asan-keep-uninstrumented-functions -S | FileCheck %s
|
||||
; RUN: opt < %s -asan -asan-module -asan-keep-uninstrumented-functions -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-S128"
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; Test handling of llvm.lifetime intrinsics in UAR mode.
|
||||
; RUN: opt < %s -asan -asan-use-after-return -asan-check-lifetime -S | FileCheck %s
|
||||
; RUN: opt < %s -asan -asan-module -asan-use-after-return -asan-check-lifetime -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-S128"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; Test hanlding of llvm.lifetime intrinsics.
|
||||
; RUN: opt < %s -asan -asan-check-lifetime -S | FileCheck %s
|
||||
; RUN: opt < %s -asan -asan-module -asan-check-lifetime -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-S128"
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -asan -asan-use-after-return -S | FileCheck --check-prefix=CHECK-UAR %s
|
||||
; RUN: opt < %s -asan -S | FileCheck --check-prefix=CHECK-PLAIN %s
|
||||
; RUN: opt < %s -asan -asan-module -asan-use-after-return -S | FileCheck --check-prefix=CHECK-UAR %s
|
||||
; RUN: opt < %s -asan -asan-module -S | FileCheck --check-prefix=CHECK-PLAIN %s
|
||||
target datalayout = "e-i64:64-f80:128-s:64-n8:16:32:64-S128"
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Test the ASan's stack layout.
|
||||
; More tests in tests/Transforms/Utils/ASanStackFrameLayoutTest.cpp
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; 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-S128"
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt < %s -asan -S | FileCheck %s
|
||||
; 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"
|
||||
define i32 @read_4_bytes(i32* %a) sanitize_address {
|
||||
|
Loading…
Reference in New Issue
Block a user