Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/Transforms/Attributor/internal-noalias.ll
Show First 20 Lines • Show All 106 Lines • ▼ Show 20 Lines | entry: | ||||
%1 = load i32, i32* %B, align 4 | %1 = load i32, i32* %B, align 4 | ||||
%add = add nsw i32 %0, %1 | %add = add nsw i32 %0, %1 | ||||
ret i32 %add | ret i32 %add | ||||
} | } | ||||
define dso_local i32 @visible_local(i32* %A) #0 { | define dso_local i32 @visible_local(i32* %A) #0 { | ||||
; IS__TUNIT____: Function Attrs: argmemonly nofree noinline nosync nounwind uwtable willreturn | ; IS__TUNIT____: Function Attrs: argmemonly nofree noinline nosync nounwind uwtable willreturn | ||||
; IS__TUNIT____-LABEL: define {{[^@]+}}@visible_local | ; IS__TUNIT____-LABEL: define {{[^@]+}}@visible_local | ||||
; IS__TUNIT____-SAME: (i32* nocapture nofree readonly [[A:%.*]]) #[[ATTR1:[0-9]+]] { | ; IS__TUNIT____-SAME: (i32* nocapture nofree readonly align 4 [[A:%.*]]) #[[ATTR1:[0-9]+]] { | ||||
; IS__TUNIT____-NEXT: entry: | ; IS__TUNIT____-NEXT: entry: | ||||
; IS__TUNIT____-NEXT: [[B:%.*]] = alloca i32, align 4 | ; IS__TUNIT____-NEXT: [[B:%.*]] = alloca i32, align 4 | ||||
; IS__TUNIT____-NEXT: store i32 5, i32* [[B]], align 4 | ; IS__TUNIT____-NEXT: store i32 5, i32* [[B]], align 4 | ||||
; IS__TUNIT____-NEXT: [[CALL1:%.*]] = call i32 @noalias_args(i32* nocapture nofree readonly align 4 [[A]], i32* noalias nocapture nofree noundef nonnull readonly align 4 dereferenceable(4) [[B]]) #[[ATTR3]] | ; IS__TUNIT____-NEXT: [[CALL1:%.*]] = call i32 @noalias_args(i32* nocapture nofree readonly align 4 [[A]], i32* noalias nocapture nofree noundef nonnull readonly align 4 dereferenceable(4) [[B]]) #[[ATTR3]] | ||||
; IS__TUNIT____-NEXT: [[CALL2:%.*]] = call i32 @noalias_args_argmem(i32* nocapture nofree readonly align 4 [[A]], i32* noalias nocapture nofree noundef nonnull readonly align 4 dereferenceable(4) [[B]]) #[[ATTR3]] | ; IS__TUNIT____-NEXT: [[CALL2:%.*]] = call i32 @noalias_args_argmem(i32* nocapture nofree readonly align 4 [[A]], i32* noalias nocapture nofree noundef nonnull readonly align 4 dereferenceable(4) [[B]]) #[[ATTR3]] | ||||
; IS__TUNIT____-NEXT: [[ADD:%.*]] = add nsw i32 [[CALL1]], [[CALL2]] | ; IS__TUNIT____-NEXT: [[ADD:%.*]] = add nsw i32 [[CALL1]], [[CALL2]] | ||||
; IS__TUNIT____-NEXT: ret i32 [[ADD]] | ; IS__TUNIT____-NEXT: ret i32 [[ADD]] | ||||
; | ; | ||||
▲ Show 20 Lines • Show All 191 Lines • Show Last 20 Lines |