Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/Analysis/LoopAccessAnalysis/underlying-objects-2.ll
Show All 33 Lines | |||||
; distance). | ; distance). | ||||
target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" | target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" | ||||
target triple = "x86_64-apple-macosx10.10.0" | target triple = "x86_64-apple-macosx10.10.0" | ||||
; CHECK-LABEL: function 'f' | ; CHECK-LABEL: function 'f' | ||||
; CHECK: for_j.body: | ; CHECK: for_j.body: | ||||
; CHECK-NEXT: Report: unsafe dependent memory operations in loop | ; CHECK-NEXT: Report: unsafe dependent memory operations in loop | ||||
; CHECK-NEXT: Backward loop carried data dependence. | |||||
; CHECK-NEXT: Dependences: | ; CHECK-NEXT: Dependences: | ||||
; CHECK-NEXT: Backward: | ; CHECK-NEXT: Backward: | ||||
; CHECK-NEXT: %loadB = load i8, i8* %gepB, align 1 -> | ; CHECK-NEXT: %loadB = load i8, i8* %gepB, align 1 -> | ||||
; CHECK-NEXT: store i8 2, i8* %gepB_plus_one, align 1 | ; CHECK-NEXT: store i8 2, i8* %gepB_plus_one, align 1 | ||||
define void @f(i8** noalias %A, i8* noalias %B, i64 %N) { | define void @f(i8** noalias %A, i8* noalias %B, i64 %N) { | ||||
for_i.preheader: | for_i.preheader: | ||||
%prev_0 = load i8*, i8** %A, align 8 | %prev_0 = load i8*, i8** %A, align 8 | ||||
▲ Show 20 Lines • Show All 103 Lines • Show Last 20 Lines |