Please use GitHub pull requests for new patches. Phabricator shutdown timeline
Differential D39775 Diff 122017 llvm/test/Instrumentation/AddressSanitizer/instrument_load_then_store.ll
Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/Instrumentation/AddressSanitizer/instrument_load_then_store.ll
; Test that AddressSanitizer instruments "(*a)++" only once. | ; Test that AddressSanitizer instruments "(*a)++" only once. | ||||
; RUN: opt < %s -asan -asan-module -S -asan-opt=1 | FileCheck %s -check-prefix=OPT1 | ; RUN: %opt_asan < %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 | ; RUN: %opt_asan < %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 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" | target triple = "x86_64-unknown-linux-gnu" | ||||
define void @IncrementMe(i32* %a) sanitize_address { | define void @IncrementMe(i32* %a) sanitize_address { | ||||
entry: | entry: | ||||
%tmp1 = load i32, i32* %a, align 4 | %tmp1 = load i32, i32* %a, align 4 | ||||
%tmp2 = add i32 %tmp1, 1 | %tmp2 = add i32 %tmp1, 1 | ||||
store i32 %tmp2, i32* %a, align 4 | store i32 %tmp2, i32* %a, align 4 | ||||
Show All 14 Lines |