target triple = "x86_64-unknown-linux-gnu"
@a = external global i32
-@d = global i32* @a
+@d = global ptr @a
%"foo" = type { i8 }
-@llvm.used = appending global [1 x i8*] [i8* bitcast (i32 (%"foo"*)* @bar to i8*)], section "llvm.metadata"
+@llvm.used = appending global [1 x ptr] [ptr @bar], section "llvm.metadata"
; Function Attrs: norecurse nounwind readnone uwtable
-define dso_local i32 @bar(%"foo"* nocapture readnone %this) align 2 !type !0 {
+define dso_local i32 @bar(ptr nocapture readnone %this) align 2 !type !0 {
entry:
ret i32 0
}
@will_be_undefined = global i32 1, comdat($c1)
@v1 = weak_odr global i32 41, comdat($c2)
-define weak_odr protected i32 @f1(i8* %this) comdat($c2) {
+define weak_odr protected i32 @f1(ptr %this) comdat($c2) {
bb20:
- store i8* %this, i8** null
+ store ptr %this, ptr null
br label %bb21
bb21:
ret i32 41
}
-@r21 = global i32* @v1
-@r22 = global i32(i8*)* @f1
+@r21 = global ptr @v1
+@r22 = global ptr @f1
-@a21 = alias i32, i32* @v1
-@a22 = alias i16, bitcast (i32* @v1 to i16*)
+@a21 = alias i32, ptr @v1
+@a22 = alias i16, ptr @v1
-@a23 = alias i32(i8*), i32(i8*)* @f1
-@a24 = alias i16, bitcast (i32(i8*)* @f1 to i16*)
-@a25 = alias i16, i16* @a24
+@a23 = alias i32(ptr), ptr @f1
+@a24 = alias i16, ptr @f1
+@a25 = alias i16, ptr @a24
@v = common global i16 0, align 4
-define i16 *@bar() {
- ret i16 *@v
+define ptr @bar() {
+ ret ptr @v
}
declare void @dead2()
-define linkonce_odr i8* @odr() {
- ret i8* bitcast (void ()* @dead3 to i8*)
+define linkonce_odr ptr @odr() {
+ ret ptr @dead3
}
define internal void @dead3() {
target datalayout = "e-p:64:64"
target triple = "x86_64-unknown-linux-gnu"
-define i32 ()* @foo_resolver() {
- ret i32 ()* inttoptr (i32 2 to i32 ()*)
+define ptr @foo_resolver() {
+ ret ptr inttoptr (i32 2 to ptr)
}
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
%foo = type { }
-declare <4 x %foo*> @llvm.masked.load.v4p0foo.p0v4p0foo(<4 x %foo*>*, i32, <4 x i1>, <4 x %foo*>)
+declare <4 x ptr> @llvm.masked.load.v4p0.p0(ptr, i32, <4 x i1>, <4 x ptr>)
!9 = !{i32 1, !"EnableSplitLTOUnit", i32 1}
!39 = !{i32 5, !"CG Profile", !40}
!40 = !{!41}
-!41 = distinct !{null, i32 ()* bitcast (void ()* @a to i32 ()*), i64 2594092}
+!41 = distinct !{null, ptr @a, i64 2594092}
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-@a = weak alias i32, i32* @b
+@a = weak alias i32, ptr @b
@b = global i32 1
target triple = "x86_64-unknown-linux-gnu"
%"foo.1" = type { i8, i8 }
-declare dso_local i32 @bar(%"foo.1"* nocapture readnone %this) local_unnamed_addr
+declare dso_local i32 @bar(ptr nocapture readnone %this) local_unnamed_addr
-@llvm.used = appending global [1 x i8*] [i8* bitcast (i32 (%"foo.1"*)* @bar to i8*)], section "llvm.metadata"
+@llvm.used = appending global [1 x ptr] [ptr @bar], section "llvm.metadata"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-define void ()* @foo() {
- ret void ()* @bar
+define ptr @foo() {
+ ret ptr @bar
}
define available_externally void @bar() {
ret void
}
-define weak void()* @bar() {
- ret void()* @foo
+define weak ptr @bar() {
+ ret ptr @foo
}
@foo = linkonce constant i32 1, comdat
$foo = comdat any
-define i32* @bar() {
- ret i32* @foo
+define ptr @bar() {
+ ret ptr @foo
}
; NONE-PREVAILED1: @v = external global i8, align 8
; NONE-PREVAILED2: @v = external global i16, align 4
-define i8 *@foo() {
- ret i8 *@v
+define ptr @foo() {
+ ret ptr @v
}
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-@alias = alias i8*, i8** @internal
+@alias = alias ptr, ptr @internal
-@internal = internal global i8* @external
+@internal = internal global ptr @external
@external = external global i8
-define i8** @main() {
- ret i8** @alias
+define ptr @main() {
+ ret ptr @alias
}
}
define i1 @_start(i1 %i) {
- %1 = select i1 %i, void ()* @f1, void ()* @f2
- %2 = bitcast void ()* %1 to i8*
- %3 = call i1 @llvm.type.test(i8* %2, metadata !"typeid1")
- ret i1 %3
+ %1 = select i1 %i, ptr @f1, ptr @f2
+ %2 = call i1 @llvm.type.test(ptr %1, metadata !"typeid1")
+ ret i1 %2
}
-declare i1 @llvm.type.test(i8*, metadata)
+declare i1 @llvm.type.test(ptr, metadata)
!llvm.module.flags = !{!2}
}
define i1 @_start(i1 %i) {
- %1 = select i1 %i, void ()* @f1, void ()* @f2
- %2 = bitcast void ()* %1 to i8*
- %3 = call i1 @llvm.type.test(i8* %2, metadata !"typeid1")
- ret i1 %3
+ %1 = select i1 %i, ptr @f1, ptr @f2
+ %2 = call i1 @llvm.type.test(ptr %1, metadata !"typeid1")
+ ret i1 %2
}
-declare i1 @llvm.type.test(i8*, metadata)
+declare i1 @llvm.type.test(ptr, metadata)
!0 = !{i64 0, !"typeid1"}
!1 = !{i64 0, !"typeid2"}
target triple = "x86_64--fuchsia"
; CHECK: declare void @foo()
-@foo = weak alias void(), void()* @bar
+@foo = weak alias void(), ptr @bar
define internal void @bar() {
ret void
}
-define void()* @baz() {
- ret void()* @foo
+define ptr @baz() {
+ ret ptr @foo
}
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-@foo = ifunc i32 (i32), i32 (i32)* ()* @foo_resolver
+@foo = ifunc i32 (i32), ptr @foo_resolver
-define internal i32 (i32)* @foo_resolver() {
+define internal ptr @foo_resolver() {
entry:
- ret i32 (i32)* null
+ ret ptr null
}
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
%foo = type { }
-declare void @foo( %foo* )
+declare void @foo( ptr )
; CHECK-LABEL: @test
; Checks that the call instruction is promoted to direct call and has
; profile count annotated on the direct call.
-define void @test(void ()*) #0 !dbg !7 {
- %2 = alloca void ()*
- store void ()* %0, void ()** %2
- %3 = load void ()*, void ()** %2
+define void @test(ptr) #0 !dbg !7 {
+ %2 = alloca ptr
+ store ptr %0, ptr %2
+ %3 = load ptr, ptr %2
; CHECK: call void @bar(),{{.*}}!prof
call void %3(), !dbg !10
ret void
@foo = global i32 0, !type !0
@bar = global i32 0, !type !1
-define i1 @f(i8* %ptr) {
- %p = call i1 @llvm.type.test(i8* %ptr, metadata !"foo")
+define i1 @f(ptr %ptr) {
+ %p = call i1 @llvm.type.test(ptr %ptr, metadata !"foo")
ret i1 %p
}
-@g_alias = alias i1 (i8*), i1 (i8*)* @g
+@g_alias = alias i1 (ptr), ptr @g
-define internal i1 @g(i8* %ptr) {
- %p = call i1 @llvm.type.test(i8* %ptr, metadata !"bar")
+define internal i1 @g(ptr %ptr) {
+ %p = call i1 @llvm.type.test(ptr %ptr, metadata !"bar")
ret i1 %p
}
-declare i1 @llvm.type.test(i8* %ptr, metadata %typeid) nounwind readnone
+declare i1 @llvm.type.test(ptr %ptr, metadata %typeid) nounwind readnone
!0 = !{i32 0, !"foo"}
!1 = !{i32 0, !"bar"}
; RUN: llvm-nm %t-obj.o.0 %t-obj.o.1 -S | FileCheck %s
; ERROR-NOT: expected a Function or null
-; ERROR-NOT: i32 (%0*, i32*)* undef
+; ERROR-NOT: ptr undef
; CHECK: -obj.o.0:
; CHECK: -obj.o.1:
!39 = !{i32 5, !"CG Profile", !40}
!40 = !{!41}
-!41 = !{i32 ()* @b, i32 ()* @a, i64 2594092}
+!41 = !{ptr @b, ptr @a, i64 2594092}
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-@barAlias = alias void(), void()* @bar
+@barAlias = alias void(), ptr @bar
define void @bar() {
ret void
}
@var = global i32 99
-@varAlias = alias i32, i32* @var
+@varAlias = alias i32, ptr @var
define i32 @zed() {
call void @barAlias()
- %1 = load i32, i32* @varAlias, align 4
+ %1 = load i32, ptr @varAlias, align 4
ret i32 %1
}
@var1 = global i32 10, align 4
define i32 @testVar1() {
- %1 = load i32, i32* @var1, align 4
+ %1 = load i32, ptr @var1, align 4
ret i32 %1
}
@var2 = global i32 11, align 4
define i32 @testVar2() {
- %1 = load i32, i32* @var2, align 4
+ %1 = load i32, ptr @var2, align 4
ret i32 %1
}
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-@a = hidden alias void (), void ()* @__a
+@a = hidden alias void (), ptr @__a
define weak hidden void @__a() {
entry:
ret void
}
-@b = hidden alias void (), void ()* @__b
+@b = hidden alias void (), ptr @__b
define weak hidden void @__b() {
entry:
target triple = "x86_64-unknown-linux-gnu"
@foobar = external hidden global i32
-define i32* @_start() {
- ret i32* @foobar
+define ptr @_start() {
+ ret ptr @foobar
}
@g1 = global i32 0
; CHECK-NOT: fallback g1
-@g2 = weak alias i32, i32* @g1
+@g2 = weak alias i32, ptr @g1
; CHECK: D--WI--- _a1
; CHECK-NEXT: comdat any _g9
; CHECK-NEXT: fallback _g9
-@a1 = weak alias i32, i32* @g9
+@a1 = weak alias i32, ptr @g9
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
-define {i8*, i1} @foo(i8* %ptr) {
- %pair = call {i8*, i1} @llvm.type.checked.load(i8* %ptr, i32 16, metadata !"foo")
- ret {i8*, i1} %pair
+define {ptr, i1} @foo(ptr %ptr) {
+ %pair = call {ptr, i1} @llvm.type.checked.load(ptr %ptr, i32 16, metadata !"foo")
+ ret {ptr, i1} %pair
}
-declare {i8*, i1} @llvm.type.checked.load(i8* %ptr, i32 %offset, metadata %type)
+declare {ptr, i1} @llvm.type.checked.load(ptr %ptr, i32 %offset, metadata %type)
%some_named_struct = type { i8, i8 }
-define void @bar(%some_named_struct*) {
+define void @bar(ptr) {
ret void
}
; RUN: llvm-link -disable-lazy-loading %t2.bc %t1.bc -S | FileCheck %s
; Verify that we correctly rename the intrinsic and don't crash
-; CHECK: @llvm.masked.store.v4p0s_some_named_struct.0s.p0v4p0s_some_named_struct.0s
+; CHECK: @llvm.masked.store.v4p0.p0
target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-apple-macosx10.11.0"
%some_named_struct = type { i8 }
-define void @foo(%some_named_struct*) {
- call void @llvm.masked.store.v4p0some_named_struct.p0v4p0some_named_struct(<4 x %some_named_struct*> undef, <4 x %some_named_struct*>* undef, i32 8, <4 x i1> undef), !tbaa !5
+define void @foo(ptr) {
+ call void @llvm.masked.store.v4p0.p0(<4 x ptr> undef, ptr undef, i32 8, <4 x i1> undef), !tbaa !5
ret void
}
-declare void @llvm.masked.store.v4p0some_named_struct.p0v4p0some_named_struct(<4 x %some_named_struct*>, <4 x %some_named_struct*>*, i32, <4 x i1>) #1
+declare void @llvm.masked.store.v4p0.p0(<4 x ptr>, ptr, i32, <4 x i1>) #1
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}