mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
TBAA: remove !tbaa from testing cases when they are not needed.
llvm-svn: 191689
This commit is contained in:
parent
87696d33e7
commit
799fd39420
@ -17,7 +17,7 @@ target triple = "thumbv7-apple-ios3.0.0"
|
|||||||
; Function Attrs: nounwind ssp
|
; Function Attrs: nounwind ssp
|
||||||
define i32 @pr16110() #0 {
|
define i32 @pr16110() #0 {
|
||||||
for.cond1.preheader:
|
for.cond1.preheader:
|
||||||
store i32 0, i32* @c, align 4, !dbg !21, !tbaa !23
|
store i32 0, i32* @c, align 4, !dbg !21
|
||||||
br label %for.cond1.outer, !dbg !26
|
br label %for.cond1.outer, !dbg !26
|
||||||
|
|
||||||
for.cond1: ; preds = %for.end9, %for.cond1.outer
|
for.cond1: ; preds = %for.end9, %for.cond1.outer
|
||||||
@ -26,9 +26,9 @@ for.cond1: ; preds = %for.end9, %for.cond
|
|||||||
br i1 %cmp, label %for.body2, label %for.end9, !dbg !26
|
br i1 %cmp, label %for.body2, label %for.end9, !dbg !26
|
||||||
|
|
||||||
for.body2: ; preds = %for.cond1
|
for.body2: ; preds = %for.cond1
|
||||||
store i32 %storemerge11, i32* @b, align 4, !dbg !26, !tbaa !23
|
store i32 %storemerge11, i32* @b, align 4, !dbg !26
|
||||||
tail call void @llvm.dbg.value(metadata !27, i64 0, metadata !11), !dbg !28
|
tail call void @llvm.dbg.value(metadata !27, i64 0, metadata !11), !dbg !28
|
||||||
%0 = load i64* @a, align 8, !dbg !29, !tbaa !30
|
%0 = load i64* @a, align 8, !dbg !29
|
||||||
%xor = xor i64 %0, %e.1.ph, !dbg !29
|
%xor = xor i64 %0, %e.1.ph, !dbg !29
|
||||||
%conv3 = trunc i64 %xor to i32, !dbg !29
|
%conv3 = trunc i64 %xor to i32, !dbg !29
|
||||||
tail call void @llvm.dbg.value(metadata !{i32 %conv3}, i64 0, metadata !10), !dbg !29
|
tail call void @llvm.dbg.value(metadata !{i32 %conv3}, i64 0, metadata !10), !dbg !29
|
||||||
@ -44,7 +44,7 @@ land.end: ; preds = %land.rhs, %for.body
|
|||||||
%1 = phi i1 [ false, %for.body2 ], [ %tobool5, %land.rhs ]
|
%1 = phi i1 [ false, %for.body2 ], [ %tobool5, %land.rhs ]
|
||||||
%land.ext = zext i1 %1 to i32
|
%land.ext = zext i1 %1 to i32
|
||||||
%call6 = tail call i32 bitcast (i32 (...)* @fn2 to i32 (i32, i32*)*)(i32 %land.ext, i32* null) #3
|
%call6 = tail call i32 bitcast (i32 (...)* @fn2 to i32 (i32, i32*)*)(i32 %land.ext, i32* null) #3
|
||||||
%2 = load i32* @b, align 4, !dbg !26, !tbaa !23
|
%2 = load i32* @b, align 4, !dbg !26
|
||||||
%inc8 = add nsw i32 %2, 1, !dbg !26
|
%inc8 = add nsw i32 %2, 1, !dbg !26
|
||||||
%phitmp = and i64 %xor, 4294967295, !dbg !26
|
%phitmp = and i64 %xor, 4294967295, !dbg !26
|
||||||
br label %for.cond1.outer, !dbg !26
|
br label %for.cond1.outer, !dbg !26
|
||||||
@ -52,7 +52,7 @@ land.end: ; preds = %land.rhs, %for.body
|
|||||||
for.cond1.outer: ; preds = %land.end, %for.cond1.preheader
|
for.cond1.outer: ; preds = %land.end, %for.cond1.preheader
|
||||||
%storemerge11.ph = phi i32 [ %inc8, %land.end ], [ 0, %for.cond1.preheader ]
|
%storemerge11.ph = phi i32 [ %inc8, %land.end ], [ 0, %for.cond1.preheader ]
|
||||||
%e.1.ph = phi i64 [ %phitmp, %land.end ], [ 0, %for.cond1.preheader ]
|
%e.1.ph = phi i64 [ %phitmp, %land.end ], [ 0, %for.cond1.preheader ]
|
||||||
%3 = load i32* @d, align 4, !dbg !31, !tbaa !23
|
%3 = load i32* @d, align 4, !dbg !31
|
||||||
%tobool10 = icmp eq i32 %3, 0, !dbg !31
|
%tobool10 = icmp eq i32 %3, 0, !dbg !31
|
||||||
br label %for.cond1
|
br label %for.cond1
|
||||||
|
|
||||||
@ -60,7 +60,7 @@ for.end9: ; preds = %for.cond1
|
|||||||
br i1 %tobool10, label %if.end, label %for.cond1, !dbg !31
|
br i1 %tobool10, label %if.end, label %for.cond1, !dbg !31
|
||||||
|
|
||||||
if.end: ; preds = %for.end9
|
if.end: ; preds = %for.end9
|
||||||
store i32 %storemerge11, i32* @b, align 4, !dbg !26, !tbaa !23
|
store i32 %storemerge11, i32* @b, align 4, !dbg !26
|
||||||
ret i32 0, !dbg !32
|
ret i32 0, !dbg !32
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -101,13 +101,9 @@ attributes #3 = { nounwind }
|
|||||||
!20 = metadata !{i32 786484, i32 0, null, metadata !"d", metadata !"d", metadata !"", metadata !5, i32 4, metadata !8, i32 0, i32 1, i32* @d, null} ; [ DW_TAG_variable ] [d] [line 4] [def]
|
!20 = metadata !{i32 786484, i32 0, null, metadata !"d", metadata !"d", metadata !"", metadata !5, i32 4, metadata !8, i32 0, i32 1, i32* @d, null} ; [ DW_TAG_variable ] [d] [line 4] [def]
|
||||||
!21 = metadata !{i32 10, i32 0, metadata !22, null}
|
!21 = metadata !{i32 10, i32 0, metadata !22, null}
|
||||||
!22 = metadata !{i32 786443, metadata !1, metadata !4, i32 10, i32 0, i32 0} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
!22 = metadata !{i32 786443, metadata !1, metadata !4, i32 10, i32 0, i32 0} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||||
!23 = metadata !{metadata !"int", metadata !24}
|
|
||||||
!24 = metadata !{metadata !"omnipotent char", metadata !25}
|
|
||||||
!25 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
!26 = metadata !{i32 12, i32 0, metadata !13, null}
|
!26 = metadata !{i32 12, i32 0, metadata !13, null}
|
||||||
!27 = metadata !{i32* null}
|
!27 = metadata !{i32* null}
|
||||||
!28 = metadata !{i32 13, i32 0, metadata !12, null}
|
!28 = metadata !{i32 13, i32 0, metadata !12, null}
|
||||||
!29 = metadata !{i32 14, i32 0, metadata !12, null}
|
!29 = metadata !{i32 14, i32 0, metadata !12, null}
|
||||||
!30 = metadata !{metadata !"long long", metadata !24}
|
|
||||||
!31 = metadata !{i32 16, i32 0, metadata !4, null}
|
!31 = metadata !{i32 16, i32 0, metadata !4, null}
|
||||||
!32 = metadata !{i32 18, i32 0, metadata !4, null}
|
!32 = metadata !{i32 18, i32 0, metadata !4, null}
|
||||||
|
@ -65,7 +65,7 @@ if.end28: ; preds = %if.then24, %while.c
|
|||||||
%dst.1 = phi %struct.rtx_def* [ undef, %if.then24 ], [ %dst.0, %while.cond ], [ %dst.0, %while.cond ]
|
%dst.1 = phi %struct.rtx_def* [ undef, %if.then24 ], [ %dst.0, %while.cond ], [ %dst.0, %while.cond ]
|
||||||
%arrayidx30 = getelementptr inbounds %struct.rtx_def* %dst.1, i32 0, i32 1, i32 0
|
%arrayidx30 = getelementptr inbounds %struct.rtx_def* %dst.1, i32 0, i32 1, i32 0
|
||||||
%rtx31 = bitcast %union.rtunion_def* %arrayidx30 to %struct.rtx_def**
|
%rtx31 = bitcast %union.rtunion_def* %arrayidx30 to %struct.rtx_def**
|
||||||
%0 = load %struct.rtx_def** %rtx31, align 4, !tbaa !0
|
%0 = load %struct.rtx_def** %rtx31, align 4
|
||||||
br label %while.cond
|
br label %while.cond
|
||||||
|
|
||||||
if.then46: ; preds = %while.cond
|
if.then46: ; preds = %while.cond
|
||||||
@ -77,7 +77,3 @@ if.end47: ; preds = %while.cond
|
|||||||
}
|
}
|
||||||
|
|
||||||
attributes #0 = { nounwind ssp }
|
attributes #0 = { nounwind ssp }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"any pointer", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -72,10 +72,10 @@ declare void @SetMotionVectorsMB(%structK* nocapture, i32) #1
|
|||||||
; Function Attrs: nounwind
|
; Function Attrs: nounwind
|
||||||
define void @set_stored_macroblock_parameters() #1 {
|
define void @set_stored_macroblock_parameters() #1 {
|
||||||
entry:
|
entry:
|
||||||
%0 = load %structB** @img, align 4, !tbaa !0
|
%0 = load %structB** @img, align 4
|
||||||
%1 = load i32* undef, align 4, !tbaa !3
|
%1 = load i32* undef, align 4
|
||||||
%mb_data = getelementptr inbounds %structB* %0, i32 0, i32 61
|
%mb_data = getelementptr inbounds %structB* %0, i32 0, i32 61
|
||||||
%2 = load %structK** %mb_data, align 4, !tbaa !0
|
%2 = load %structK** %mb_data, align 4
|
||||||
br label %for.body
|
br label %for.body
|
||||||
|
|
||||||
for.body: ; preds = %for.body, %entry
|
for.body: ; preds = %for.body, %entry
|
||||||
@ -109,7 +109,7 @@ for.body119: ; preds = %for.body119, %for.c
|
|||||||
br i1 undef, label %for.body119, label %if.end164
|
br i1 undef, label %for.body119, label %if.end164
|
||||||
|
|
||||||
if.end164: ; preds = %for.body119, %for.cond47.preheader, %if.end43
|
if.end164: ; preds = %for.body119, %for.cond47.preheader, %if.end43
|
||||||
store i32*** null, i32**** @cofDC, align 4, !tbaa !0
|
store i32*** null, i32**** @cofDC, align 4
|
||||||
%mb_type = getelementptr inbounds %structK* %2, i32 %1, i32 8
|
%mb_type = getelementptr inbounds %structK* %2, i32 %1, i32 8
|
||||||
br i1 undef, label %if.end230, label %if.then169
|
br i1 undef, label %if.end230, label %if.then169
|
||||||
|
|
||||||
@ -134,7 +134,7 @@ if.then233: ; preds = %if.end230
|
|||||||
|
|
||||||
if.end236: ; preds = %if.end230
|
if.end236: ; preds = %if.end230
|
||||||
%cmp242 = icmp ne i16 undef, 8
|
%cmp242 = icmp ne i16 undef, 8
|
||||||
%4 = load i32* @luma_transform_size_8x8_flag, align 4, !tbaa !3
|
%4 = load i32* @luma_transform_size_8x8_flag, align 4
|
||||||
%tobool245 = icmp ne i32 %4, 0
|
%tobool245 = icmp ne i32 %4, 0
|
||||||
%or.cond812 = or i1 %cmp242, %tobool245
|
%or.cond812 = or i1 %cmp242, %tobool245
|
||||||
br i1 %or.cond812, label %if.end249, label %land.lhs.true246
|
br i1 %or.cond812, label %if.end249, label %land.lhs.true246
|
||||||
@ -150,11 +150,11 @@ if.then248: ; preds = %land.lhs.true246
|
|||||||
br label %if.end249
|
br label %if.end249
|
||||||
|
|
||||||
if.end249: ; preds = %if.then248, %land.lhs.true246, %if.end236
|
if.end249: ; preds = %if.then248, %land.lhs.true246, %if.end236
|
||||||
%5 = load i32* @luma_transform_size_8x8_flag, align 4, !tbaa !3
|
%5 = load i32* @luma_transform_size_8x8_flag, align 4
|
||||||
%6 = load %structA** @rdopt, align 4, !tbaa !0
|
%6 = load %structA** @rdopt, align 4
|
||||||
%luma_transform_size_8x8_flag264 = getelementptr inbounds %structA* %6, i32 0, i32 21
|
%luma_transform_size_8x8_flag264 = getelementptr inbounds %structA* %6, i32 0, i32 21
|
||||||
store i32 %5, i32* %luma_transform_size_8x8_flag264, align 4, !tbaa !3
|
store i32 %5, i32* %luma_transform_size_8x8_flag264, align 4
|
||||||
%7 = load i32* undef, align 4, !tbaa !3
|
%7 = load i32* undef, align 4
|
||||||
%add281 = add nsw i32 %7, 0
|
%add281 = add nsw i32 %7, 0
|
||||||
br label %for.body285
|
br label %for.body285
|
||||||
|
|
||||||
@ -162,36 +162,36 @@ for.body285: ; preds = %for.inc503, %if.end
|
|||||||
%8 = phi %structB* [ undef, %if.end249 ], [ %.pre1155, %for.inc503 ]
|
%8 = phi %structB* [ undef, %if.end249 ], [ %.pre1155, %for.inc503 ]
|
||||||
%i.21103 = phi i32 [ 0, %if.end249 ], [ %inc504, %for.inc503 ]
|
%i.21103 = phi i32 [ 0, %if.end249 ], [ %inc504, %for.inc503 ]
|
||||||
%block_x286 = getelementptr inbounds %structB* %8, i32 0, i32 37
|
%block_x286 = getelementptr inbounds %structB* %8, i32 0, i32 37
|
||||||
%9 = load i32* %block_x286, align 4, !tbaa !3
|
%9 = load i32* %block_x286, align 4
|
||||||
%add287 = add nsw i32 %9, %i.21103
|
%add287 = add nsw i32 %9, %i.21103
|
||||||
%shr289 = ashr i32 %i.21103, 1
|
%shr289 = ashr i32 %i.21103, 1
|
||||||
%add290 = add nsw i32 %shr289, 0
|
%add290 = add nsw i32 %shr289, 0
|
||||||
%arrayidx292 = getelementptr inbounds %structK* %2, i32 %1, i32 15, i32 %add290
|
%arrayidx292 = getelementptr inbounds %structK* %2, i32 %1, i32 15, i32 %add290
|
||||||
%10 = load %structM** @enc_picture, align 4, !tbaa !0
|
%10 = load %structM** @enc_picture, align 4
|
||||||
%ref_idx = getelementptr inbounds %structM* %10, i32 0, i32 35
|
%ref_idx = getelementptr inbounds %structM* %10, i32 0, i32 35
|
||||||
%11 = load i8**** %ref_idx, align 4, !tbaa !0
|
%11 = load i8**** %ref_idx, align 4
|
||||||
%12 = load i8*** %11, align 4, !tbaa !0
|
%12 = load i8*** %11, align 4
|
||||||
%arrayidx313 = getelementptr inbounds i8** %12, i32 %add281
|
%arrayidx313 = getelementptr inbounds i8** %12, i32 %add281
|
||||||
%13 = load i8** %arrayidx313, align 4, !tbaa !0
|
%13 = load i8** %arrayidx313, align 4
|
||||||
%arrayidx314 = getelementptr inbounds i8* %13, i32 %add287
|
%arrayidx314 = getelementptr inbounds i8* %13, i32 %add287
|
||||||
store i8 -1, i8* %arrayidx314, align 1, !tbaa !1
|
store i8 -1, i8* %arrayidx314, align 1
|
||||||
%14 = load %structB** @img, align 4, !tbaa !0
|
%14 = load %structB** @img, align 4
|
||||||
%MbaffFrameFlag327 = getelementptr inbounds %structB* %14, i32 0, i32 100
|
%MbaffFrameFlag327 = getelementptr inbounds %structB* %14, i32 0, i32 100
|
||||||
%15 = load i32* %MbaffFrameFlag327, align 4, !tbaa !3
|
%15 = load i32* %MbaffFrameFlag327, align 4
|
||||||
%tobool328 = icmp eq i32 %15, 0
|
%tobool328 = icmp eq i32 %15, 0
|
||||||
br i1 %tobool328, label %if.end454, label %if.then329
|
br i1 %tobool328, label %if.end454, label %if.then329
|
||||||
|
|
||||||
if.then329: ; preds = %for.body285
|
if.then329: ; preds = %for.body285
|
||||||
%16 = load %structA** @rdopt, align 4, !tbaa !0
|
%16 = load %structA** @rdopt, align 4
|
||||||
br label %if.end454
|
br label %if.end454
|
||||||
|
|
||||||
if.end454: ; preds = %if.then329, %for.body285
|
if.end454: ; preds = %if.then329, %for.body285
|
||||||
%17 = load i32* %arrayidx292, align 4, !tbaa !3
|
%17 = load i32* %arrayidx292, align 4
|
||||||
%cmp457 = icmp eq i32 %17, 0
|
%cmp457 = icmp eq i32 %17, 0
|
||||||
br i1 %cmp457, label %if.then475, label %lor.lhs.false459
|
br i1 %cmp457, label %if.then475, label %lor.lhs.false459
|
||||||
|
|
||||||
lor.lhs.false459: ; preds = %if.end454
|
lor.lhs.false459: ; preds = %if.end454
|
||||||
%18 = load i32* %mb_type, align 4, !tbaa !3
|
%18 = load i32* %mb_type, align 4
|
||||||
switch i32 %18, label %for.inc503 [
|
switch i32 %18, label %for.inc503 [
|
||||||
i32 9, label %if.then475
|
i32 9, label %if.then475
|
||||||
i32 10, label %if.then475
|
i32 10, label %if.then475
|
||||||
@ -200,12 +200,12 @@ lor.lhs.false459: ; preds = %if.end454
|
|||||||
]
|
]
|
||||||
|
|
||||||
if.then475: ; preds = %lor.lhs.false459, %lor.lhs.false459, %lor.lhs.false459, %lor.lhs.false459, %if.end454
|
if.then475: ; preds = %lor.lhs.false459, %lor.lhs.false459, %lor.lhs.false459, %lor.lhs.false459, %if.end454
|
||||||
store i16 0, i16* undef, align 2, !tbaa !4
|
store i16 0, i16* undef, align 2
|
||||||
br label %for.inc503
|
br label %for.inc503
|
||||||
|
|
||||||
for.inc503: ; preds = %if.then475, %lor.lhs.false459
|
for.inc503: ; preds = %if.then475, %lor.lhs.false459
|
||||||
%inc504 = add nsw i32 %i.21103, 1
|
%inc504 = add nsw i32 %i.21103, 1
|
||||||
%.pre1155 = load %structB** @img, align 4, !tbaa !0
|
%.pre1155 = load %structB** @img, align 4
|
||||||
br label %for.body285
|
br label %for.body285
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -217,9 +217,3 @@ declare void @RestoreMVBlock8x8(i32, i32, %structN* byval nocapture, i32) #1
|
|||||||
|
|
||||||
attributes #0 = { nounwind }
|
attributes #0 = { nounwind }
|
||||||
attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"any pointer", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
!3 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!4 = metadata !{metadata !"short", metadata !1}
|
|
||||||
|
@ -53,7 +53,7 @@ return: ; preds = %if.else, %if.then
|
|||||||
define i32 @foo_bar(i32 %a, i16 signext %b) nounwind {
|
define i32 @foo_bar(i32 %a, i16 signext %b) nounwind {
|
||||||
; CHECK: if{{ *}}(!cmp.eq(r{{[0-9]*}}.new, #0)) jump:nt
|
; CHECK: if{{ *}}(!cmp.eq(r{{[0-9]*}}.new, #0)) jump:nt
|
||||||
entry:
|
entry:
|
||||||
%0 = load i32* @j, align 4, !tbaa !2
|
%0 = load i32* @j, align 4
|
||||||
%tobool = icmp eq i32 %0, 0
|
%tobool = icmp eq i32 %0, 0
|
||||||
br i1 %tobool, label %if.else, label %if.then, !prof !0
|
br i1 %tobool, label %if.else, label %if.then, !prof !0
|
||||||
|
|
||||||
@ -74,6 +74,3 @@ return: ; preds = %if.else, %if.then
|
|||||||
|
|
||||||
!0 = metadata !{metadata !"branch_weights", i32 64, i32 4}
|
!0 = metadata !{metadata !"branch_weights", i32 64, i32 4}
|
||||||
!1 = metadata !{metadata !"branch_weights", i32 4, i32 64}
|
!1 = metadata !{metadata !"branch_weights", i32 4, i32 64}
|
||||||
!2 = metadata !{metadata !"int", metadata !3}
|
|
||||||
!3 = metadata !{metadata !"omnipotent char", metadata !4}
|
|
||||||
!4 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -5,10 +5,10 @@
|
|||||||
|
|
||||||
define void @word(i32* nocapture %a) nounwind {
|
define void @word(i32* nocapture %a) nounwind {
|
||||||
entry:
|
entry:
|
||||||
%0 = load i32* %a, align 4, !tbaa !0
|
%0 = load i32* %a, align 4
|
||||||
%1 = zext i32 %0 to i64
|
%1 = zext i32 %0 to i64
|
||||||
%add.ptr = getelementptr inbounds i32* %a, i32 1
|
%add.ptr = getelementptr inbounds i32* %a, i32 1
|
||||||
%2 = load i32* %add.ptr, align 4, !tbaa !0
|
%2 = load i32* %add.ptr, align 4
|
||||||
%3 = zext i32 %2 to i64
|
%3 = zext i32 %2 to i64
|
||||||
%4 = shl nuw i64 %3, 32
|
%4 = shl nuw i64 %3, 32
|
||||||
%ins = or i64 %4, %1
|
%ins = or i64 %4, %1
|
||||||
@ -17,7 +17,3 @@ entry:
|
|||||||
}
|
}
|
||||||
|
|
||||||
declare void @bar(i64)
|
declare void @bar(i64)
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -10,7 +10,7 @@ target triple = "mipsel--linux-gnu"
|
|||||||
define void @getSubImagesLuma(%struct.StorablePicture* nocapture %s) #0 {
|
define void @getSubImagesLuma(%struct.StorablePicture* nocapture %s) #0 {
|
||||||
entry:
|
entry:
|
||||||
%size_y = getelementptr inbounds %struct.StorablePicture* %s, i32 0, i32 1
|
%size_y = getelementptr inbounds %struct.StorablePicture* %s, i32 0, i32 1
|
||||||
%0 = load i32* %size_y, align 4, !tbaa !0
|
%0 = load i32* %size_y, align 4
|
||||||
%sub = add nsw i32 %0, -1
|
%sub = add nsw i32 %0, -1
|
||||||
%add5 = add nsw i32 %0, 20
|
%add5 = add nsw i32 %0, 20
|
||||||
%cmp6 = icmp sgt i32 %add5, -20
|
%cmp6 = icmp sgt i32 %add5, -20
|
||||||
@ -20,7 +20,7 @@ for.body: ; preds = %entry, %for.body
|
|||||||
%j.07 = phi i32 [ %inc, %for.body ], [ -20, %entry ]
|
%j.07 = phi i32 [ %inc, %for.body ], [ -20, %entry ]
|
||||||
%call = tail call i32 bitcast (i32 (...)* @iClip3 to i32 (i32, i32, i32)*)(i32 0, i32 %sub, i32 %j.07) #2
|
%call = tail call i32 bitcast (i32 (...)* @iClip3 to i32 (i32, i32, i32)*)(i32 0, i32 %sub, i32 %j.07) #2
|
||||||
%inc = add nsw i32 %j.07, 1
|
%inc = add nsw i32 %j.07, 1
|
||||||
%1 = load i32* %size_y, align 4, !tbaa !0
|
%1 = load i32* %size_y, align 4
|
||||||
%add = add nsw i32 %1, 20
|
%add = add nsw i32 %1, 20
|
||||||
%cmp = icmp slt i32 %inc, %add
|
%cmp = icmp slt i32 %inc, %add
|
||||||
br i1 %cmp, label %for.body, label %for.end
|
br i1 %cmp, label %for.body, label %for.end
|
||||||
@ -36,7 +36,3 @@ declare i32 @iClip3(...) #1
|
|||||||
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
attributes #2 = { nounwind }
|
attributes #2 = { nounwind }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -12,12 +12,12 @@ entry:
|
|||||||
%vla = alloca i32, i64 %0, align 128
|
%vla = alloca i32, i64 %0, align 128
|
||||||
%vla1 = alloca i32, i64 %0, align 128
|
%vla1 = alloca i32, i64 %0, align 128
|
||||||
%a2 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a2 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%1 = load i32* %a2, align 4, !tbaa !0
|
%1 = load i32* %a2, align 4
|
||||||
store i32 %1, i32* %vla1, align 128, !tbaa !0
|
store i32 %1, i32* %vla1, align 128
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%2 = load i32* %b, align 4, !tbaa !0
|
%2 = load i32* %b, align 4
|
||||||
%arrayidx3 = getelementptr inbounds i32* %vla1, i64 1
|
%arrayidx3 = getelementptr inbounds i32* %vla1, i64 1
|
||||||
store i32 %2, i32* %arrayidx3, align 4, !tbaa !0
|
store i32 %2, i32* %arrayidx3, align 4
|
||||||
call void @bar(i32* %vla1, i32* %vla) #0
|
call void @bar(i32* %vla1, i32* %vla) #0
|
||||||
ret void
|
ret void
|
||||||
|
|
||||||
@ -33,7 +33,3 @@ entry:
|
|||||||
}
|
}
|
||||||
|
|
||||||
attributes #0 = { nounwind }
|
attributes #0 = { nounwind }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -22,7 +22,7 @@ crc32_gentab.exit: ; preds = %for.cond1.preheader
|
|||||||
|
|
||||||
for.cond1.preheader.i2961.i: ; preds = %for.inc44.i2977.i, %crc32_gentab.exit
|
for.cond1.preheader.i2961.i: ; preds = %for.inc44.i2977.i, %crc32_gentab.exit
|
||||||
call void @llvm.memset.p0i8.i64(i8* bitcast ([1 x [9 x i32]]* @g_62 to i8*), i8 -1, i64 36, i32 4, i1 false) #1
|
call void @llvm.memset.p0i8.i64(i8* bitcast ([1 x [9 x i32]]* @g_62 to i8*), i8 -1, i64 36, i32 4, i1 false) #1
|
||||||
%0 = load i32* %retval.0.i.i.i, align 4, !tbaa !0
|
%0 = load i32* %retval.0.i.i.i, align 4
|
||||||
%tobool.i2967.i = icmp eq i32 %0, 0
|
%tobool.i2967.i = icmp eq i32 %0, 0
|
||||||
br label %for.body21.i2968.i
|
br label %for.body21.i2968.i
|
||||||
|
|
||||||
@ -44,7 +44,3 @@ declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) #1
|
|||||||
|
|
||||||
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "ssp-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "ssp-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
attributes #1 = { nounwind }
|
attributes #1 = { nounwind }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -11,13 +11,13 @@ define void @goo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 32
|
%x = alloca [2 x i32], align 32
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 32, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 32
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx)
|
call void @bar(i32* %arrayidx)
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -74,13 +74,13 @@ define void @hoo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [200000 x i32], align 32
|
%x = alloca [200000 x i32], align 32
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [200000 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [200000 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 32, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 32
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [200000 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [200000 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx)
|
call void @bar(i32* %arrayidx)
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -105,13 +105,13 @@ define void @loo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 32
|
%x = alloca [2 x i32], align 32
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 32, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 32
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx)
|
call void @bar(i32* %arrayidx)
|
||||||
call void asm sideeffect "", "~{f30}"() nounwind
|
call void asm sideeffect "", "~{f30}"() nounwind
|
||||||
ret void
|
ret void
|
||||||
@ -145,7 +145,3 @@ entry:
|
|||||||
; CHECK-FP: stfd 30, -16(30)
|
; CHECK-FP: stfd 30, -16(30)
|
||||||
|
|
||||||
; CHECK-FP: blr
|
; CHECK-FP: blr
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -16,79 +16,79 @@ target triple = "r600--"
|
|||||||
; Function Attrs: nounwind
|
; Function Attrs: nounwind
|
||||||
define void @test_8_min_char(i8 addrspace(1)* nocapture %out, i8 addrspace(1)* nocapture readonly %in0, i8 addrspace(1)* nocapture readonly %in1) #0 {
|
define void @test_8_min_char(i8 addrspace(1)* nocapture %out, i8 addrspace(1)* nocapture readonly %in0, i8 addrspace(1)* nocapture readonly %in1) #0 {
|
||||||
entry:
|
entry:
|
||||||
%0 = load i8 addrspace(1)* %in0, align 1, !tbaa !9
|
%0 = load i8 addrspace(1)* %in0, align 1
|
||||||
%1 = insertelement <8 x i8> undef, i8 %0, i32 0
|
%1 = insertelement <8 x i8> undef, i8 %0, i32 0
|
||||||
%arrayidx2.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 1
|
%arrayidx2.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 1
|
||||||
%2 = load i8 addrspace(1)* %arrayidx2.i.i, align 1, !tbaa !9
|
%2 = load i8 addrspace(1)* %arrayidx2.i.i, align 1
|
||||||
%3 = insertelement <8 x i8> %1, i8 %2, i32 1
|
%3 = insertelement <8 x i8> %1, i8 %2, i32 1
|
||||||
%arrayidx6.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 2
|
%arrayidx6.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 2
|
||||||
%4 = load i8 addrspace(1)* %arrayidx6.i.i, align 1, !tbaa !9
|
%4 = load i8 addrspace(1)* %arrayidx6.i.i, align 1
|
||||||
%5 = insertelement <8 x i8> %3, i8 %4, i32 2
|
%5 = insertelement <8 x i8> %3, i8 %4, i32 2
|
||||||
%arrayidx10.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 3
|
%arrayidx10.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 3
|
||||||
%6 = load i8 addrspace(1)* %arrayidx10.i.i, align 1, !tbaa !9
|
%6 = load i8 addrspace(1)* %arrayidx10.i.i, align 1
|
||||||
%7 = insertelement <8 x i8> %5, i8 %6, i32 3
|
%7 = insertelement <8 x i8> %5, i8 %6, i32 3
|
||||||
%arrayidx.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 4
|
%arrayidx.i.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 4
|
||||||
%8 = load i8 addrspace(1)* %arrayidx.i.i, align 1, !tbaa !9
|
%8 = load i8 addrspace(1)* %arrayidx.i.i, align 1
|
||||||
%9 = insertelement <8 x i8> undef, i8 %8, i32 0
|
%9 = insertelement <8 x i8> undef, i8 %8, i32 0
|
||||||
%arrayidx2.i9.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 5
|
%arrayidx2.i9.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 5
|
||||||
%10 = load i8 addrspace(1)* %arrayidx2.i9.i, align 1, !tbaa !9
|
%10 = load i8 addrspace(1)* %arrayidx2.i9.i, align 1
|
||||||
%11 = insertelement <8 x i8> %9, i8 %10, i32 1
|
%11 = insertelement <8 x i8> %9, i8 %10, i32 1
|
||||||
%arrayidx6.i11.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 6
|
%arrayidx6.i11.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 6
|
||||||
%12 = load i8 addrspace(1)* %arrayidx6.i11.i, align 1, !tbaa !9
|
%12 = load i8 addrspace(1)* %arrayidx6.i11.i, align 1
|
||||||
%13 = insertelement <8 x i8> %11, i8 %12, i32 2
|
%13 = insertelement <8 x i8> %11, i8 %12, i32 2
|
||||||
%arrayidx10.i13.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 7
|
%arrayidx10.i13.i = getelementptr inbounds i8 addrspace(1)* %in0, i64 7
|
||||||
%14 = load i8 addrspace(1)* %arrayidx10.i13.i, align 1, !tbaa !9
|
%14 = load i8 addrspace(1)* %arrayidx10.i13.i, align 1
|
||||||
%15 = insertelement <8 x i8> %13, i8 %14, i32 3
|
%15 = insertelement <8 x i8> %13, i8 %14, i32 3
|
||||||
%vecinit5.i = shufflevector <8 x i8> %7, <8 x i8> %15, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 8, i32 9, i32 10, i32 11>
|
%vecinit5.i = shufflevector <8 x i8> %7, <8 x i8> %15, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 8, i32 9, i32 10, i32 11>
|
||||||
%16 = load i8 addrspace(1)* %in1, align 1, !tbaa !9
|
%16 = load i8 addrspace(1)* %in1, align 1
|
||||||
%17 = insertelement <8 x i8> undef, i8 %16, i32 0
|
%17 = insertelement <8 x i8> undef, i8 %16, i32 0
|
||||||
%arrayidx2.i.i4 = getelementptr inbounds i8 addrspace(1)* %in1, i64 1
|
%arrayidx2.i.i4 = getelementptr inbounds i8 addrspace(1)* %in1, i64 1
|
||||||
%18 = load i8 addrspace(1)* %arrayidx2.i.i4, align 1, !tbaa !9
|
%18 = load i8 addrspace(1)* %arrayidx2.i.i4, align 1
|
||||||
%19 = insertelement <8 x i8> %17, i8 %18, i32 1
|
%19 = insertelement <8 x i8> %17, i8 %18, i32 1
|
||||||
%arrayidx6.i.i5 = getelementptr inbounds i8 addrspace(1)* %in1, i64 2
|
%arrayidx6.i.i5 = getelementptr inbounds i8 addrspace(1)* %in1, i64 2
|
||||||
%20 = load i8 addrspace(1)* %arrayidx6.i.i5, align 1, !tbaa !9
|
%20 = load i8 addrspace(1)* %arrayidx6.i.i5, align 1
|
||||||
%21 = insertelement <8 x i8> %19, i8 %20, i32 2
|
%21 = insertelement <8 x i8> %19, i8 %20, i32 2
|
||||||
%arrayidx10.i.i6 = getelementptr inbounds i8 addrspace(1)* %in1, i64 3
|
%arrayidx10.i.i6 = getelementptr inbounds i8 addrspace(1)* %in1, i64 3
|
||||||
%22 = load i8 addrspace(1)* %arrayidx10.i.i6, align 1, !tbaa !9
|
%22 = load i8 addrspace(1)* %arrayidx10.i.i6, align 1
|
||||||
%23 = insertelement <8 x i8> %21, i8 %22, i32 3
|
%23 = insertelement <8 x i8> %21, i8 %22, i32 3
|
||||||
%arrayidx.i.i7 = getelementptr inbounds i8 addrspace(1)* %in1, i64 4
|
%arrayidx.i.i7 = getelementptr inbounds i8 addrspace(1)* %in1, i64 4
|
||||||
%24 = load i8 addrspace(1)* %arrayidx.i.i7, align 1, !tbaa !9
|
%24 = load i8 addrspace(1)* %arrayidx.i.i7, align 1
|
||||||
%25 = insertelement <8 x i8> undef, i8 %24, i32 0
|
%25 = insertelement <8 x i8> undef, i8 %24, i32 0
|
||||||
%arrayidx2.i9.i8 = getelementptr inbounds i8 addrspace(1)* %in1, i64 5
|
%arrayidx2.i9.i8 = getelementptr inbounds i8 addrspace(1)* %in1, i64 5
|
||||||
%26 = load i8 addrspace(1)* %arrayidx2.i9.i8, align 1, !tbaa !9
|
%26 = load i8 addrspace(1)* %arrayidx2.i9.i8, align 1
|
||||||
%27 = insertelement <8 x i8> %25, i8 %26, i32 1
|
%27 = insertelement <8 x i8> %25, i8 %26, i32 1
|
||||||
%arrayidx6.i11.i9 = getelementptr inbounds i8 addrspace(1)* %in1, i64 6
|
%arrayidx6.i11.i9 = getelementptr inbounds i8 addrspace(1)* %in1, i64 6
|
||||||
%28 = load i8 addrspace(1)* %arrayidx6.i11.i9, align 1, !tbaa !9
|
%28 = load i8 addrspace(1)* %arrayidx6.i11.i9, align 1
|
||||||
%29 = insertelement <8 x i8> %27, i8 %28, i32 2
|
%29 = insertelement <8 x i8> %27, i8 %28, i32 2
|
||||||
%arrayidx10.i13.i10 = getelementptr inbounds i8 addrspace(1)* %in1, i64 7
|
%arrayidx10.i13.i10 = getelementptr inbounds i8 addrspace(1)* %in1, i64 7
|
||||||
%30 = load i8 addrspace(1)* %arrayidx10.i13.i10, align 1, !tbaa !9
|
%30 = load i8 addrspace(1)* %arrayidx10.i13.i10, align 1
|
||||||
%31 = insertelement <8 x i8> %29, i8 %30, i32 3
|
%31 = insertelement <8 x i8> %29, i8 %30, i32 3
|
||||||
%vecinit5.i11 = shufflevector <8 x i8> %23, <8 x i8> %31, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 8, i32 9, i32 10, i32 11>
|
%vecinit5.i11 = shufflevector <8 x i8> %23, <8 x i8> %31, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 8, i32 9, i32 10, i32 11>
|
||||||
%cmp.i = icmp slt <8 x i8> %vecinit5.i, %vecinit5.i11
|
%cmp.i = icmp slt <8 x i8> %vecinit5.i, %vecinit5.i11
|
||||||
%cond.i = select <8 x i1> %cmp.i, <8 x i8> %vecinit5.i, <8 x i8> %vecinit5.i11
|
%cond.i = select <8 x i1> %cmp.i, <8 x i8> %vecinit5.i, <8 x i8> %vecinit5.i11
|
||||||
%32 = extractelement <8 x i8> %cond.i, i32 0
|
%32 = extractelement <8 x i8> %cond.i, i32 0
|
||||||
store i8 %32, i8 addrspace(1)* %out, align 1, !tbaa !9
|
store i8 %32, i8 addrspace(1)* %out, align 1
|
||||||
%33 = extractelement <8 x i8> %cond.i, i32 1
|
%33 = extractelement <8 x i8> %cond.i, i32 1
|
||||||
%arrayidx2.i.i.i = getelementptr inbounds i8 addrspace(1)* %out, i64 1
|
%arrayidx2.i.i.i = getelementptr inbounds i8 addrspace(1)* %out, i64 1
|
||||||
store i8 %33, i8 addrspace(1)* %arrayidx2.i.i.i, align 1, !tbaa !9
|
store i8 %33, i8 addrspace(1)* %arrayidx2.i.i.i, align 1
|
||||||
%34 = extractelement <8 x i8> %cond.i, i32 2
|
%34 = extractelement <8 x i8> %cond.i, i32 2
|
||||||
%arrayidx.i.i.i = getelementptr inbounds i8 addrspace(1)* %out, i64 2
|
%arrayidx.i.i.i = getelementptr inbounds i8 addrspace(1)* %out, i64 2
|
||||||
store i8 %34, i8 addrspace(1)* %arrayidx.i.i.i, align 1, !tbaa !9
|
store i8 %34, i8 addrspace(1)* %arrayidx.i.i.i, align 1
|
||||||
%35 = extractelement <8 x i8> %cond.i, i32 3
|
%35 = extractelement <8 x i8> %cond.i, i32 3
|
||||||
%arrayidx2.i6.i.i = getelementptr inbounds i8 addrspace(1)* %out, i64 3
|
%arrayidx2.i6.i.i = getelementptr inbounds i8 addrspace(1)* %out, i64 3
|
||||||
store i8 %35, i8 addrspace(1)* %arrayidx2.i6.i.i, align 1, !tbaa !9
|
store i8 %35, i8 addrspace(1)* %arrayidx2.i6.i.i, align 1
|
||||||
%arrayidx.i.i3 = getelementptr inbounds i8 addrspace(1)* %out, i64 4
|
%arrayidx.i.i3 = getelementptr inbounds i8 addrspace(1)* %out, i64 4
|
||||||
%36 = extractelement <8 x i8> %cond.i, i32 4
|
%36 = extractelement <8 x i8> %cond.i, i32 4
|
||||||
store i8 %36, i8 addrspace(1)* %arrayidx.i.i3, align 1, !tbaa !9
|
store i8 %36, i8 addrspace(1)* %arrayidx.i.i3, align 1
|
||||||
%37 = extractelement <8 x i8> %cond.i, i32 5
|
%37 = extractelement <8 x i8> %cond.i, i32 5
|
||||||
%arrayidx2.i.i6.i = getelementptr inbounds i8 addrspace(1)* %out, i64 5
|
%arrayidx2.i.i6.i = getelementptr inbounds i8 addrspace(1)* %out, i64 5
|
||||||
store i8 %37, i8 addrspace(1)* %arrayidx2.i.i6.i, align 1, !tbaa !9
|
store i8 %37, i8 addrspace(1)* %arrayidx2.i.i6.i, align 1
|
||||||
%38 = extractelement <8 x i8> %cond.i, i32 6
|
%38 = extractelement <8 x i8> %cond.i, i32 6
|
||||||
%arrayidx.i.i7.i = getelementptr inbounds i8 addrspace(1)* %out, i64 6
|
%arrayidx.i.i7.i = getelementptr inbounds i8 addrspace(1)* %out, i64 6
|
||||||
store i8 %38, i8 addrspace(1)* %arrayidx.i.i7.i, align 1, !tbaa !9
|
store i8 %38, i8 addrspace(1)* %arrayidx.i.i7.i, align 1
|
||||||
%39 = extractelement <8 x i8> %cond.i, i32 7
|
%39 = extractelement <8 x i8> %cond.i, i32 7
|
||||||
%arrayidx2.i6.i8.i = getelementptr inbounds i8 addrspace(1)* %out, i64 7
|
%arrayidx2.i6.i8.i = getelementptr inbounds i8 addrspace(1)* %out, i64 7
|
||||||
store i8 %39, i8 addrspace(1)* %arrayidx2.i6.i8.i, align 1, !tbaa !9
|
store i8 %39, i8 addrspace(1)* %arrayidx2.i6.i8.i, align 1
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -105,5 +105,3 @@ attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"=
|
|||||||
!6 = metadata !{null}
|
!6 = metadata !{null}
|
||||||
!7 = metadata !{null}
|
!7 = metadata !{null}
|
||||||
!8 = metadata !{null}
|
!8 = metadata !{null}
|
||||||
!9 = metadata !{metadata !"omnipotent char", metadata !10}
|
|
||||||
!10 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -268,17 +268,13 @@ entry:
|
|||||||
; SI-CHECK: BUFFER_STORE_DWORDX2
|
; SI-CHECK: BUFFER_STORE_DWORDX2
|
||||||
define void @vecload2(i32 addrspace(1)* nocapture %out, i32 addrspace(2)* nocapture %mem) #0 {
|
define void @vecload2(i32 addrspace(1)* nocapture %out, i32 addrspace(2)* nocapture %mem) #0 {
|
||||||
entry:
|
entry:
|
||||||
%0 = load i32 addrspace(2)* %mem, align 4, !tbaa !5
|
%0 = load i32 addrspace(2)* %mem, align 4
|
||||||
%arrayidx1.i = getelementptr inbounds i32 addrspace(2)* %mem, i64 1
|
%arrayidx1.i = getelementptr inbounds i32 addrspace(2)* %mem, i64 1
|
||||||
%1 = load i32 addrspace(2)* %arrayidx1.i, align 4, !tbaa !5
|
%1 = load i32 addrspace(2)* %arrayidx1.i, align 4
|
||||||
store i32 %0, i32 addrspace(1)* %out, align 4, !tbaa !5
|
store i32 %0, i32 addrspace(1)* %out, align 4
|
||||||
%arrayidx1 = getelementptr inbounds i32 addrspace(1)* %out, i64 1
|
%arrayidx1 = getelementptr inbounds i32 addrspace(1)* %out, i64 1
|
||||||
store i32 %1, i32 addrspace(1)* %arrayidx1, align 4, !tbaa !5
|
store i32 %1, i32 addrspace(1)* %arrayidx1, align 4
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
|
|
||||||
!5 = metadata !{metadata !"int", metadata !6}
|
|
||||||
!6 = metadata !{metadata !"omnipotent char", metadata !7}
|
|
||||||
!7 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -36,7 +36,7 @@ entry:
|
|||||||
%add.i = add i32 %z.i8.i, %mul33.i
|
%add.i = add i32 %z.i8.i, %mul33.i
|
||||||
%add13 = add i32 %add.i, %add
|
%add13 = add i32 %add.i, %add
|
||||||
%arrayidx = getelementptr inbounds i32 addrspace(1)* %out, i32 %add13
|
%arrayidx = getelementptr inbounds i32 addrspace(1)* %out, i32 %add13
|
||||||
store i32 %mul3, i32 addrspace(1)* %arrayidx, align 4, !tbaa !3
|
store i32 %mul3, i32 addrspace(1)* %arrayidx, align 4
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,6 +84,3 @@ attributes #1 = { nounwind readnone }
|
|||||||
!0 = metadata !{null}
|
!0 = metadata !{null}
|
||||||
!1 = metadata !{null}
|
!1 = metadata !{null}
|
||||||
!2 = metadata !{void (i32 addrspace(1)*)* @fill3d}
|
!2 = metadata !{void (i32 addrspace(1)*)* @fill3d}
|
||||||
!3 = metadata !{metadata !"int", metadata !4}
|
|
||||||
!4 = metadata !{metadata !"omnipotent char", metadata !5}
|
|
||||||
!5 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
define i32 @_Z18read_response_sizev() #0 {
|
define i32 @_Z18read_response_sizev() #0 {
|
||||||
entry:
|
entry:
|
||||||
tail call void @llvm.dbg.value(metadata !22, i64 0, metadata !23), !dbg !39
|
tail call void @llvm.dbg.value(metadata !22, i64 0, metadata !23), !dbg !39
|
||||||
%0 = load i64* getelementptr inbounds ({ i64, [56 x i8] }* @a, i32 0, i32 0), align 8, !dbg !40, !tbaa !60
|
%0 = load i64* getelementptr inbounds ({ i64, [56 x i8] }* @a, i32 0, i32 0), align 8, !dbg !40
|
||||||
tail call void @llvm.dbg.value(metadata !63, i64 0, metadata !64), !dbg !71
|
tail call void @llvm.dbg.value(metadata !63, i64 0, metadata !64), !dbg !71
|
||||||
%1 = trunc i64 %0 to i32
|
%1 = trunc i64 %0 to i32
|
||||||
ret i32 %1
|
ret i32 %1
|
||||||
@ -85,9 +85,6 @@ attributes #0 = { sspreq }
|
|||||||
!57 = metadata !{i32 786689, metadata !41, metadata !"p2", metadata !10, i32 33554439, metadata !32, i32 0, i32 0} ; [ DW_TAG_arg_variable ] [p2] [line 7]
|
!57 = metadata !{i32 786689, metadata !41, metadata !"p2", metadata !10, i32 33554439, metadata !32, i32 0, i32 0} ; [ DW_TAG_arg_variable ] [p2] [line 7]
|
||||||
!58 = metadata !{i32 786689, metadata !41, metadata !"p3", metadata !10, i32 50331656, metadata !44, i32 0, i32 0} ; [ DW_TAG_arg_variable ] [p3] [line 8]
|
!58 = metadata !{i32 786689, metadata !41, metadata !"p3", metadata !10, i32 50331656, metadata !44, i32 0, i32 0} ; [ DW_TAG_arg_variable ] [p3] [line 8]
|
||||||
!59 = metadata !{i32 13, i32 0, metadata !24, metadata !38}
|
!59 = metadata !{i32 13, i32 0, metadata !24, metadata !38}
|
||||||
!60 = metadata !{metadata !"long long", metadata !61}
|
|
||||||
!61 = metadata !{metadata !"omnipotent char", metadata !62}
|
|
||||||
!62 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
!63 = metadata !{i32 undef}
|
!63 = metadata !{i32 undef}
|
||||||
!64 = metadata !{i32 786689, metadata !65, metadata !"p1", metadata !10, i32 33554433, metadata !50, i32 0, metadata !40} ; [ DW_TAG_arg_variable ] [p1] [line 1]
|
!64 = metadata !{i32 786689, metadata !65, metadata !"p1", metadata !10, i32 33554433, metadata !50, i32 0, metadata !40} ; [ DW_TAG_arg_variable ] [p1] [line 1]
|
||||||
!65 = metadata !{i32 786478, metadata !1, metadata !25, metadata !"operator()", metadata !"operator()", metadata !"_ZN3__11AclERKiS2_", i32 1, metadata !47, i1 false, i1 true, i32 0, i32 0, null, i32 256, i1 true, null, null, metadata !46, metadata !66, i32 2} ; [ DW_TAG_subprogram ] [line 1] [def] [scope 2] [operator()]
|
!65 = metadata !{i32 786478, metadata !1, metadata !25, metadata !"operator()", metadata !"operator()", metadata !"_ZN3__11AclERKiS2_", i32 1, metadata !47, i1 false, i1 true, i32 0, i32 0, null, i32 256, i1 true, null, null, metadata !46, metadata !66, i32 2} ; [ DW_TAG_subprogram ] [line 1] [def] [scope 2] [operator()]
|
||||||
|
@ -10,14 +10,14 @@ target triple = "i386-unknown-freebsd10.0"
|
|||||||
; Function Attrs: nounwind sspreq
|
; Function Attrs: nounwind sspreq
|
||||||
define void @set_state(i32 %s) #0 {
|
define void @set_state(i32 %s) #0 {
|
||||||
entry:
|
entry:
|
||||||
store i32 %s, i32* @state, align 4, !tbaa !0
|
store i32 %s, i32* @state, align 4
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
; Function Attrs: nounwind sspreq
|
; Function Attrs: nounwind sspreq
|
||||||
define void @zero_char(i8* nocapture %p) #0 {
|
define void @zero_char(i8* nocapture %p) #0 {
|
||||||
entry:
|
entry:
|
||||||
store i8 0, i8* %p, align 1, !tbaa !1
|
store i8 0, i8* %p, align 1
|
||||||
tail call void @g(i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0) #2
|
tail call void @g(i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -28,7 +28,7 @@ declare void @g(i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32,
|
|||||||
define void @do_something(i32 %i) #0 {
|
define void @do_something(i32 %i) #0 {
|
||||||
entry:
|
entry:
|
||||||
%data = alloca [8 x i8], align 1
|
%data = alloca [8 x i8], align 1
|
||||||
%0 = load i32* @state, align 4, !tbaa !0
|
%0 = load i32* @state, align 4
|
||||||
%cmp = icmp eq i32 %0, 0
|
%cmp = icmp eq i32 %0, 0
|
||||||
br i1 %cmp, label %if.then, label %if.else
|
br i1 %cmp, label %if.then, label %if.else
|
||||||
|
|
||||||
@ -59,7 +59,3 @@ declare void @f(i32) #1
|
|||||||
attributes #0 = { nounwind sspreq "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #0 = { nounwind sspreq "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
attributes #2 = { nounwind }
|
attributes #2 = { nounwind }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -8,13 +8,13 @@ define void @foo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 4
|
%x = alloca [2 x i32], align 4
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 4, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 4
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -23,13 +23,13 @@ define void @foo0(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32]
|
%x = alloca [2 x i32]
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 4, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 4
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -40,13 +40,13 @@ define void @goo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 32
|
%x = alloca [2 x i32], align 32
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 32, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 32
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -62,9 +62,9 @@ entry:
|
|||||||
%tmpcast = bitcast i64* %a to %struct.s*
|
%tmpcast = bitcast i64* %a to %struct.s*
|
||||||
store i64 0, i64* %a, align 8
|
store i64 0, i64* %a, align 8
|
||||||
%a1 = bitcast i64* %a to i32*
|
%a1 = bitcast i64* %a to i32*
|
||||||
store i32 1, i32* %a1, align 8, !tbaa !0
|
store i32 1, i32* %a1, align 8
|
||||||
call void @foo(%struct.s* byval %tmpcast)
|
call void @foo(%struct.s* byval %tmpcast)
|
||||||
store i32 2, i32* %a1, align 8, !tbaa !0
|
store i32 2, i32* %a1, align 8
|
||||||
call void @goo(%struct.s* byval %tmpcast)
|
call void @goo(%struct.s* byval %tmpcast)
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
@ -80,14 +80,9 @@ entry:
|
|||||||
%tmpcast = bitcast i64* %a to %struct.s*
|
%tmpcast = bitcast i64* %a to %struct.s*
|
||||||
store i64 0, i64* %a, align 8
|
store i64 0, i64* %a, align 8
|
||||||
%a1 = bitcast i64* %a to i32*
|
%a1 = bitcast i64* %a to i32*
|
||||||
store i32 1, i32* %a1, align 8, !tbaa !0
|
store i32 1, i32* %a1, align 8
|
||||||
call void @foo0(%struct.s* byval %tmpcast)
|
call void @foo0(%struct.s* byval %tmpcast)
|
||||||
store i32 2, i32* %a1, align 8, !tbaa !0
|
store i32 2, i32* %a1, align 8
|
||||||
call void @goo(%struct.s* byval %tmpcast)
|
call void @goo(%struct.s* byval %tmpcast)
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
|
||||||
|
@ -9,13 +9,13 @@ define void @foo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 4
|
%x = alloca [2 x i32], align 4
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 4, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 4
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -24,13 +24,13 @@ define void @foo0(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32]
|
%x = alloca [2 x i32]
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 4, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 4
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -39,13 +39,13 @@ define void @foo1(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 1
|
%x = alloca [2 x i32], align 1
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 4, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 4
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -56,13 +56,13 @@ define void @goo(%struct.s* byval nocapture readonly %a) {
|
|||||||
entry:
|
entry:
|
||||||
%x = alloca [2 x i32], align 32
|
%x = alloca [2 x i32], align 32
|
||||||
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
%a1 = getelementptr inbounds %struct.s* %a, i64 0, i32 0
|
||||||
%0 = load i32* %a1, align 4, !tbaa !0
|
%0 = load i32* %a1, align 4
|
||||||
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
%arrayidx = getelementptr inbounds [2 x i32]* %x, i64 0, i64 0
|
||||||
store i32 %0, i32* %arrayidx, align 32, !tbaa !0
|
store i32 %0, i32* %arrayidx, align 32
|
||||||
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
%b = getelementptr inbounds %struct.s* %a, i64 0, i32 1
|
||||||
%1 = load i32* %b, align 4, !tbaa !0
|
%1 = load i32* %b, align 4
|
||||||
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
%arrayidx2 = getelementptr inbounds [2 x i32]* %x, i64 0, i64 1
|
||||||
store i32 %1, i32* %arrayidx2, align 4, !tbaa !0
|
store i32 %1, i32* %arrayidx2, align 4
|
||||||
call void @bar(i32* %arrayidx) #2
|
call void @bar(i32* %arrayidx) #2
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@ -78,9 +78,9 @@ entry:
|
|||||||
%tmpcast = bitcast i64* %a to %struct.s*
|
%tmpcast = bitcast i64* %a to %struct.s*
|
||||||
store i64 0, i64* %a, align 8
|
store i64 0, i64* %a, align 8
|
||||||
%a1 = bitcast i64* %a to i32*
|
%a1 = bitcast i64* %a to i32*
|
||||||
store i32 1, i32* %a1, align 8, !tbaa !0
|
store i32 1, i32* %a1, align 8
|
||||||
call void @foo(%struct.s* byval %tmpcast)
|
call void @foo(%struct.s* byval %tmpcast)
|
||||||
store i32 2, i32* %a1, align 8, !tbaa !0
|
store i32 2, i32* %a1, align 8
|
||||||
call void @goo(%struct.s* byval %tmpcast)
|
call void @goo(%struct.s* byval %tmpcast)
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
@ -96,9 +96,9 @@ entry:
|
|||||||
%tmpcast = bitcast i64* %a to %struct.s*
|
%tmpcast = bitcast i64* %a to %struct.s*
|
||||||
store i64 0, i64* %a, align 8
|
store i64 0, i64* %a, align 8
|
||||||
%a1 = bitcast i64* %a to i32*
|
%a1 = bitcast i64* %a to i32*
|
||||||
store i32 1, i32* %a1, align 8, !tbaa !0
|
store i32 1, i32* %a1, align 8
|
||||||
call void @foo0(%struct.s* byval %tmpcast)
|
call void @foo0(%struct.s* byval %tmpcast)
|
||||||
store i32 2, i32* %a1, align 8, !tbaa !0
|
store i32 2, i32* %a1, align 8
|
||||||
call void @goo(%struct.s* byval %tmpcast)
|
call void @goo(%struct.s* byval %tmpcast)
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
@ -114,14 +114,9 @@ entry:
|
|||||||
%tmpcast = bitcast i64* %a to %struct.s*
|
%tmpcast = bitcast i64* %a to %struct.s*
|
||||||
store i64 0, i64* %a, align 8
|
store i64 0, i64* %a, align 8
|
||||||
%a1 = bitcast i64* %a to i32*
|
%a1 = bitcast i64* %a to i32*
|
||||||
store i32 1, i32* %a1, align 8, !tbaa !0
|
store i32 1, i32* %a1, align 8
|
||||||
call void @foo0(%struct.s* byval %tmpcast)
|
call void @foo0(%struct.s* byval %tmpcast)
|
||||||
store i32 2, i32* %a1, align 8, !tbaa !0
|
store i32 2, i32* %a1, align 8
|
||||||
call void @foo1(%struct.s* byval %tmpcast)
|
call void @foo1(%struct.s* byval %tmpcast)
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
|
|
||||||
!0 = metadata !{metadata !"int", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ for.body: ; preds = %for.body.lr.ph, %fo
|
|||||||
%indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ]
|
%indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ]
|
||||||
%sum.05 = phi i32 [ 0, %for.body.lr.ph ], [ %add, %for.body ]
|
%sum.05 = phi i32 [ 0, %for.body.lr.ph ], [ %add, %for.body ]
|
||||||
%arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv, !dbg !22
|
%arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv, !dbg !22
|
||||||
%0 = load i32* %arrayidx, align 4, !dbg !22, !tbaa !23
|
%0 = load i32* %arrayidx, align 4, !dbg !22
|
||||||
%add = add i32 %0, %sum.05, !dbg !22
|
%add = add i32 %0, %sum.05, !dbg !22
|
||||||
tail call void @llvm.dbg.value(metadata !{i32 %add.lcssa}, i64 0, metadata !15), !dbg !22
|
tail call void @llvm.dbg.value(metadata !{i32 %add.lcssa}, i64 0, metadata !15), !dbg !22
|
||||||
%indvars.iv.next = add i64 %indvars.iv, 1, !dbg !21
|
%indvars.iv.next = add i64 %indvars.iv, 1, !dbg !21
|
||||||
@ -86,7 +86,4 @@ attributes #1 = { nounwind readnone }
|
|||||||
!20 = metadata !{i32 4, i32 0, metadata !4, null}
|
!20 = metadata !{i32 4, i32 0, metadata !4, null}
|
||||||
!21 = metadata !{i32 5, i32 0, metadata !17, null}
|
!21 = metadata !{i32 5, i32 0, metadata !17, null}
|
||||||
!22 = metadata !{i32 6, i32 0, metadata !17, null}
|
!22 = metadata !{i32 6, i32 0, metadata !17, null}
|
||||||
!23 = metadata !{metadata !"int", metadata !24}
|
|
||||||
!24 = metadata !{metadata !"omnipotent char", metadata !25}
|
|
||||||
!25 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
!26 = metadata !{i32 7, i32 0, metadata !4, null}
|
!26 = metadata !{i32 7, i32 0, metadata !4, null}
|
||||||
|
@ -28,10 +28,10 @@ entry:
|
|||||||
for.body: ; preds = %for.body, %entry
|
for.body: ; preds = %for.body, %entry
|
||||||
%indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]
|
%indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]
|
||||||
%arrayidx = getelementptr inbounds [40000 x i8] addrspace(1)* @Y, i64 0, i64 %indvars.iv
|
%arrayidx = getelementptr inbounds [40000 x i8] addrspace(1)* @Y, i64 0, i64 %indvars.iv
|
||||||
%0 = load i8 addrspace(1)* %arrayidx, align 1, !tbaa !0
|
%0 = load i8 addrspace(1)* %arrayidx, align 1
|
||||||
%add = add i8 %0, 1
|
%add = add i8 %0, 1
|
||||||
%arrayidx3 = getelementptr inbounds [40000 x i8]* @X, i64 0, i64 %indvars.iv
|
%arrayidx3 = getelementptr inbounds [40000 x i8]* @X, i64 0, i64 %indvars.iv
|
||||||
store i8 %add, i8* %arrayidx3, align 1, !tbaa !0
|
store i8 %add, i8* %arrayidx3, align 1
|
||||||
%indvars.iv.next = add i64 %indvars.iv, 1
|
%indvars.iv.next = add i64 %indvars.iv, 1
|
||||||
%lftr.wideiv = trunc i64 %indvars.iv.next to i32
|
%lftr.wideiv = trunc i64 %indvars.iv.next to i32
|
||||||
%exitcond = icmp eq i32 %lftr.wideiv, 40000
|
%exitcond = icmp eq i32 %lftr.wideiv, 40000
|
||||||
@ -42,6 +42,3 @@ for.end: ; preds = %for.body
|
|||||||
}
|
}
|
||||||
|
|
||||||
attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"omnipotent char", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -60,9 +60,9 @@ if.end332: ; preds = %if.then329, %if.end
|
|||||||
%sub334 = fsub float %add294, %dx272.1
|
%sub334 = fsub float %add294, %dx272.1
|
||||||
%sub338 = fsub float %add297, %dy276.1
|
%sub338 = fsub float %add297, %dy276.1
|
||||||
%arrayidx.i.i606 = getelementptr inbounds %class.btVector3.23.221.463.485.507.573.595.683.727.749.815.837.991.1585.1607.1629.1651.1849.2047.2069.2091.2113* %vertices, i64 0, i32 0, i64 0
|
%arrayidx.i.i606 = getelementptr inbounds %class.btVector3.23.221.463.485.507.573.595.683.727.749.815.837.991.1585.1607.1629.1651.1849.2047.2069.2091.2113* %vertices, i64 0, i32 0, i64 0
|
||||||
store float %sub334, float* %arrayidx.i.i606, align 4, !tbaa !0
|
store float %sub334, float* %arrayidx.i.i606, align 4
|
||||||
%arrayidx3.i607 = getelementptr inbounds %class.btVector3.23.221.463.485.507.573.595.683.727.749.815.837.991.1585.1607.1629.1651.1849.2047.2069.2091.2113* %vertices, i64 0, i32 0, i64 1
|
%arrayidx3.i607 = getelementptr inbounds %class.btVector3.23.221.463.485.507.573.595.683.727.749.815.837.991.1585.1607.1629.1651.1849.2047.2069.2091.2113* %vertices, i64 0, i32 0, i64 1
|
||||||
store float %sub338, float* %arrayidx3.i607, align 4, !tbaa !0
|
store float %sub338, float* %arrayidx3.i607, align 4
|
||||||
br label %return
|
br label %return
|
||||||
|
|
||||||
return: ; preds = %if.end332, %for.end271, %entry
|
return: ; preds = %if.end332, %for.end271, %entry
|
||||||
@ -82,7 +82,3 @@ if.end22.2: ; preds = %if.then17.2, %if.en
|
|||||||
}
|
}
|
||||||
|
|
||||||
attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
attributes #0 = { ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||||
|
|
||||||
!0 = metadata !{metadata !"float", metadata !1}
|
|
||||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
|
||||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
|
@ -33,18 +33,18 @@ entry:
|
|||||||
|
|
||||||
for.body.lr.ph: ; preds = %entry
|
for.body.lr.ph: ; preds = %entry
|
||||||
%arrayidx = getelementptr inbounds double* %A, i64 4, !dbg !24
|
%arrayidx = getelementptr inbounds double* %A, i64 4, !dbg !24
|
||||||
%0 = load double* %arrayidx, align 8, !dbg !24, !tbaa !26
|
%0 = load double* %arrayidx, align 8, !dbg !24
|
||||||
%arrayidx1 = getelementptr inbounds double* %A, i64 5, !dbg !29
|
%arrayidx1 = getelementptr inbounds double* %A, i64 5, !dbg !29
|
||||||
%1 = load double* %arrayidx1, align 8, !dbg !29, !tbaa !26
|
%1 = load double* %arrayidx1, align 8, !dbg !29
|
||||||
br label %for.end, !dbg !23
|
br label %for.end, !dbg !23
|
||||||
|
|
||||||
for.end: ; preds = %for.body.lr.ph, %entry
|
for.end: ; preds = %for.body.lr.ph, %entry
|
||||||
%y1.0.lcssa = phi double [ %1, %for.body.lr.ph ], [ 1.000000e+00, %entry ]
|
%y1.0.lcssa = phi double [ %1, %for.body.lr.ph ], [ 1.000000e+00, %entry ]
|
||||||
%y0.0.lcssa = phi double [ %0, %for.body.lr.ph ], [ 0.000000e+00, %entry ]
|
%y0.0.lcssa = phi double [ %0, %for.body.lr.ph ], [ 0.000000e+00, %entry ]
|
||||||
%arrayidx2 = getelementptr inbounds double* %A, i64 8, !dbg !30
|
%arrayidx2 = getelementptr inbounds double* %A, i64 8, !dbg !30
|
||||||
store double %y0.0.lcssa, double* %arrayidx2, align 8, !dbg !30, !tbaa !26
|
store double %y0.0.lcssa, double* %arrayidx2, align 8, !dbg !30
|
||||||
%arrayidx3 = getelementptr inbounds double* %A, i64 9, !dbg !30
|
%arrayidx3 = getelementptr inbounds double* %A, i64 9, !dbg !30
|
||||||
store double %y1.0.lcssa, double* %arrayidx3, align 8, !dbg !30, !tbaa !26
|
store double %y1.0.lcssa, double* %arrayidx3, align 8, !dbg !30
|
||||||
ret i32 undef, !dbg !31
|
ret i32 undef, !dbg !31
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,9 +83,6 @@ attributes #1 = { nounwind readnone }
|
|||||||
!23 = metadata !{i32 3, i32 0, metadata !17, null}
|
!23 = metadata !{i32 3, i32 0, metadata !17, null}
|
||||||
!24 = metadata !{i32 4, i32 0, metadata !25, null}
|
!24 = metadata !{i32 4, i32 0, metadata !25, null}
|
||||||
!25 = metadata !{i32 786443, metadata !1, metadata !17, i32 3, i32 0, i32 1} ; [ DW_TAG_lexical_block ] [/Users/nadav/file.c]
|
!25 = metadata !{i32 786443, metadata !1, metadata !17, i32 3, i32 0, i32 1} ; [ DW_TAG_lexical_block ] [/Users/nadav/file.c]
|
||||||
!26 = metadata !{metadata !"double", metadata !27}
|
|
||||||
!27 = metadata !{metadata !"omnipotent char", metadata !28}
|
|
||||||
!28 = metadata !{metadata !"Simple C/C++ TBAA"}
|
|
||||||
!29 = metadata !{i32 5, i32 0, metadata !25, null}
|
!29 = metadata !{i32 5, i32 0, metadata !25, null}
|
||||||
!30 = metadata !{i32 7, i32 0, metadata !4, null}
|
!30 = metadata !{i32 7, i32 0, metadata !4, null}
|
||||||
!31 = metadata !{i32 8, i32 0, metadata !4, null} ; [ DW_TAG_imported_declaration ]
|
!31 = metadata !{i32 8, i32 0, metadata !4, null} ; [ DW_TAG_imported_declaration ]
|
||||||
|
Loading…
Reference in New Issue
Block a user