[llvm] c604128 - [ThinLTO] Convert tests to opaque pointers (NFC)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 13 08:04:26 PST 2022


Author: Nikita Popov
Date: 2022-12-13T17:04:09+01:00
New Revision: c6041283f71e6943e96cfc926da7a2c02bc3ee32

URL: https://github.com/llvm/llvm-project/commit/c6041283f71e6943e96cfc926da7a2c02bc3ee32
DIFF: https://github.com/llvm/llvm-project/commit/c6041283f71e6943e96cfc926da7a2c02bc3ee32.diff

LOG: [ThinLTO] Convert tests to opaque pointers (NFC)

Added: 
    

Modified: 
    llvm/test/ThinLTO/X86/Inputs/alias_resolution.ll
    llvm/test/ThinLTO/X86/Inputs/distributed_import.ll
    llvm/test/ThinLTO/X86/Inputs/distributed_indexes.ll
    llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll
    llvm/test/ThinLTO/X86/alias_resolution.ll
    llvm/test/ThinLTO/X86/cache-icall.ll
    llvm/test/ThinLTO/X86/cfi-devirt.ll
    llvm/test/ThinLTO/X86/devirt_promote_legacy.ll
    llvm/test/ThinLTO/X86/empty-module.ll
    llvm/test/ThinLTO/X86/funcimport.ll
    llvm/test/ThinLTO/X86/import_opaque_type.ll
    llvm/test/ThinLTO/X86/type_test_noindircall.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/ThinLTO/X86/Inputs/alias_resolution.ll b/llvm/test/ThinLTO/X86/Inputs/alias_resolution.ll
index 7425f23fd3f51..d8807a9300cb7 100644
--- a/llvm/test/ThinLTO/X86/Inputs/alias_resolution.ll
+++ b/llvm/test/ThinLTO/X86/Inputs/alias_resolution.ll
@@ -1,60 +1,60 @@
 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 
- at globalfuncAlias = alias void (...), bitcast (void ()* @globalfunc to void (...)*)
- at globalfuncWeakAlias = weak alias void (...), bitcast (void ()* @globalfunc to void (...)*)
- at globalfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @globalfunc to void (...)*)
- at globalfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @globalfunc to void (...)*)
- at globalfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @globalfunc to void (...)*)
+ at globalfuncAlias = alias void (...), ptr @globalfunc
+ at globalfuncWeakAlias = weak alias void (...), ptr @globalfunc
+ at globalfuncLinkonceAlias = linkonce alias void (...), ptr @globalfunc
+ at globalfuncWeakODRAlias = weak_odr alias void (...), ptr @globalfunc
+ at globalfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @globalfunc
 define void @globalfunc() {
 entry:
   ret void
 }
 
- at internalfuncAlias = alias void (...), bitcast (void ()* @internalfunc to void (...)*)
- at internalfuncWeakAlias = weak alias void (...), bitcast (void ()* @internalfunc to void (...)*)
- at internalfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @internalfunc to void (...)*)
- at internalfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @internalfunc to void (...)*)
- at internalfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @internalfunc to void (...)*)
+ at internalfuncAlias = alias void (...), ptr @internalfunc
+ at internalfuncWeakAlias = weak alias void (...), ptr @internalfunc
+ at internalfuncLinkonceAlias = linkonce alias void (...), ptr @internalfunc
+ at internalfuncWeakODRAlias = weak_odr alias void (...), ptr @internalfunc
+ at internalfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @internalfunc
 define internal void @internalfunc() {
 entry:
   ret void
 }
 
- at linkonceODRfuncAlias = alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
- at linkonceODRfuncWeakAlias = weak alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
- at linkonceODRfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
- at linkonceODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
- at linkonceODRfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
+ at linkonceODRfuncAlias = alias void (...), ptr @linkonceODRfunc
+ at linkonceODRfuncWeakAlias = weak alias void (...), ptr @linkonceODRfunc
+ at linkonceODRfuncLinkonceAlias = linkonce alias void (...), ptr @linkonceODRfunc
+ at linkonceODRfuncWeakODRAlias = weak_odr alias void (...), ptr @linkonceODRfunc
+ at linkonceODRfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @linkonceODRfunc
 define linkonce_odr void @linkonceODRfunc() {
 entry:
   ret void
 }
 
- at weakODRfuncAlias = alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
- at weakODRfuncWeakAlias = weak alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
- at weakODRfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
- at weakODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
- at weakODRfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
+ at weakODRfuncAlias = alias void (...), ptr @weakODRfunc
+ at weakODRfuncWeakAlias = weak alias void (...), ptr @weakODRfunc
+ at weakODRfuncLinkonceAlias = linkonce alias void (...), ptr @weakODRfunc
+ at weakODRfuncWeakODRAlias = weak_odr alias void (...), ptr @weakODRfunc
+ at weakODRfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @weakODRfunc
 define weak_odr void @weakODRfunc() {
 entry:
   ret void
 }
 
- at linkoncefuncAlias = alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
- at linkoncefuncWeakAlias = weak alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
- at linkoncefuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
- at linkoncefuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
- at linkoncefuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
+ at linkoncefuncAlias = alias void (...), ptr @linkoncefunc
+ at linkoncefuncWeakAlias = weak alias void (...), ptr @linkoncefunc
+ at linkoncefuncLinkonceAlias = linkonce alias void (...), ptr @linkoncefunc
+ at linkoncefuncWeakODRAlias = weak_odr alias void (...), ptr @linkoncefunc
+ at linkoncefuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @linkoncefunc
 define linkonce void @linkoncefunc() {
 entry:
   ret void
 }
 
- at weakfuncAlias = alias void (...), bitcast (void ()* @weakfunc to void (...)*)
- at weakfuncWeakAlias = weak alias void (...), bitcast (void ()* @weakfunc to void (...)*)
- at weakfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @weakfunc to void (...)*)
- at weakfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakfunc to void (...)*)
- at weakfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @weakfunc to void (...)*)
+ at weakfuncAlias = alias void (...), ptr @weakfunc
+ at weakfuncWeakAlias = weak alias void (...), ptr @weakfunc
+ at weakfuncLinkonceAlias = linkonce alias void (...), ptr @weakfunc
+ at weakfuncWeakODRAlias = weak_odr alias void (...), ptr @weakfunc
+ at weakfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @weakfunc
 define weak void @weakfunc() {
 entry:
   ret void

diff  --git a/llvm/test/ThinLTO/X86/Inputs/distributed_import.ll b/llvm/test/ThinLTO/X86/Inputs/distributed_import.ll
index d7d9bb6789af2..c3fd358f87de3 100644
--- a/llvm/test/ThinLTO/X86/Inputs/distributed_import.ll
+++ b/llvm/test/ThinLTO/X86/Inputs/distributed_import.ll
@@ -4,11 +4,11 @@ target triple = "x86_64-unknown-linux-gnu"
 @G = internal global i32 7
 define i32 @g() {
 entry:
-  %0 = load i32, i32* @G
+  %0 = load i32, ptr @G
   ret i32 %0
 }
 
- at analias = alias void (...), bitcast (void ()* @aliasee to void (...)*)
+ at analias = alias void (...), ptr @aliasee
 define void @aliasee() {
 entry:
       ret void

diff  --git a/llvm/test/ThinLTO/X86/Inputs/distributed_indexes.ll b/llvm/test/ThinLTO/X86/Inputs/distributed_indexes.ll
index 65c3bb6116465..37b55839c12ce 100644
--- a/llvm/test/ThinLTO/X86/Inputs/distributed_indexes.ll
+++ b/llvm/test/ThinLTO/X86/Inputs/distributed_indexes.ll
@@ -5,7 +5,7 @@ entry:
   ret void
 }
 
- at analias = alias void (...), bitcast (void ()* @aliasee to void (...)*)
+ at analias = alias void (...), ptr @aliasee
 define void @aliasee() {
 entry:
   ret void

diff  --git a/llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll b/llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll
index 5c452d58e8c0b..ecdaa727fb0df 100644
--- a/llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll
+++ b/llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll
@@ -1,15 +1,13 @@
 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"
 
-%0 = type { i8 }
+%a = type { i8 }
 
-%a = type { %0 * }
-
-define void @bar(%a *) {
+define void @bar(%a) {
 	ret void
 }
 
 define void @baz() {
-	call void @bar(%a *null)
+	call void @bar(%a undef)
 	ret void
 }

diff  --git a/llvm/test/ThinLTO/X86/alias_resolution.ll b/llvm/test/ThinLTO/X86/alias_resolution.ll
index 4649a88991864..4bd6ede357dfd 100644
--- a/llvm/test/ThinLTO/X86/alias_resolution.ll
+++ b/llvm/test/ThinLTO/X86/alias_resolution.ll
@@ -6,80 +6,80 @@
 
 ; There is no importing going on with this IR, but let's check the ODR resolution for compile time
 
-; NOTPROMOTED: @linkonceODRfuncAlias = alias void (...), bitcast (void ()* @linkonceODRfunc{{.*}} to void (...)*)
-; NOTPROMOTED: @linkonceODRfuncWeakAlias = weak alias void (...), bitcast (void ()* @linkonceODRfunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @linkonceODRfuncLinkonceAlias = weak alias void (...), bitcast (void ()* @linkonceODRfunc{{.*}} to void (...)*)
-; PROMOTE_MOD2: @linkonceODRfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @linkonceODRfunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @linkonceODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @linkonceODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
-; PROMOTE_MOD1: @linkonceODRfuncLinkonceODRAlias = weak_odr alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @linkonceODRfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @linkonceODRfunc to void (...)*)
+; NOTPROMOTED: @linkonceODRfuncAlias = alias void (...), ptr @linkonceODRfunc{{.*}}
+; NOTPROMOTED: @linkonceODRfuncWeakAlias = weak alias void (...), ptr @linkonceODRfunc{{.*}}
+; PROMOTE_MOD1: @linkonceODRfuncLinkonceAlias = weak alias void (...), ptr @linkonceODRfunc{{.*}}
+; PROMOTE_MOD2: @linkonceODRfuncLinkonceAlias = linkonce alias void (...), ptr @linkonceODRfunc{{.*}}
+; PROMOTE_MOD1: @linkonceODRfuncWeakODRAlias = weak_odr alias void (...), ptr @linkonceODRfunc.mod1
+; PROMOTE_MOD2: @linkonceODRfuncWeakODRAlias = weak_odr alias void (...), ptr @linkonceODRfunc
+; PROMOTE_MOD1: @linkonceODRfuncLinkonceODRAlias = weak_odr alias void (...), ptr @linkonceODRfunc.mod1
+; PROMOTE_MOD2: @linkonceODRfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @linkonceODRfunc
 
-; NOTPROMOTED: @weakODRfuncAlias = alias void (...), bitcast (void ()* @weakODRfunc{{.*}} to void (...)*)
-; NOTPROMOTED: @weakODRfuncWeakAlias = weak alias void (...), bitcast (void ()* @weakODRfunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @weakODRfuncLinkonceAlias = weak alias void (...), bitcast (void ()* @weakODRfunc{{.*}} to void (...)*)
-; PROMOTE_MOD2: @weakODRfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @weakODRfunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @weakODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @weakODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
-; PROMOTE_MOD1: @weakODRfuncLinkonceODRAlias = weak_odr alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @weakODRfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @weakODRfunc to void (...)*)
+; NOTPROMOTED: @weakODRfuncAlias = alias void (...), ptr @weakODRfunc{{.*}}
+; NOTPROMOTED: @weakODRfuncWeakAlias = weak alias void (...), ptr @weakODRfunc{{.*}}
+; PROMOTE_MOD1: @weakODRfuncLinkonceAlias = weak alias void (...), ptr @weakODRfunc{{.*}}
+; PROMOTE_MOD2: @weakODRfuncLinkonceAlias = linkonce alias void (...), ptr @weakODRfunc{{.*}}
+; PROMOTE_MOD1: @weakODRfuncWeakODRAlias = weak_odr alias void (...), ptr @weakODRfunc.mod1
+; PROMOTE_MOD2: @weakODRfuncWeakODRAlias = weak_odr alias void (...), ptr @weakODRfunc
+; PROMOTE_MOD1: @weakODRfuncLinkonceODRAlias = weak_odr alias void (...), ptr @weakODRfunc.mod1
+; PROMOTE_MOD2: @weakODRfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @weakODRfunc
 
-; NOTPROMOTED: @linkoncefuncAlias = alias void (...), bitcast (void ()* @linkoncefunc{{.*}} to void (...)*)
-; NOTPROMOTED: @linkoncefuncWeakAlias = weak alias void (...), bitcast (void ()* @linkoncefunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @linkoncefuncLinkonceAlias = weak alias void (...), bitcast (void ()* @linkoncefunc{{.*}} to void (...)*)
-; PROMOTE_MOD2: @linkoncefuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @linkoncefunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @linkoncefuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @linkoncefuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
-; PROMOTE_MOD1: @linkoncefuncLinkonceODRAlias = weak_odr alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @linkoncefuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
+; NOTPROMOTED: @linkoncefuncAlias = alias void (...), ptr @linkoncefunc{{.*}}
+; NOTPROMOTED: @linkoncefuncWeakAlias = weak alias void (...), ptr @linkoncefunc{{.*}}
+; PROMOTE_MOD1: @linkoncefuncLinkonceAlias = weak alias void (...), ptr @linkoncefunc{{.*}}
+; PROMOTE_MOD2: @linkoncefuncLinkonceAlias = linkonce alias void (...), ptr @linkoncefunc{{.*}}
+; PROMOTE_MOD1: @linkoncefuncWeakODRAlias = weak_odr alias void (...), ptr @linkoncefunc.mod1
+; PROMOTE_MOD2: @linkoncefuncWeakODRAlias = weak_odr alias void (...), ptr @linkoncefunc
+; PROMOTE_MOD1: @linkoncefuncLinkonceODRAlias = weak_odr alias void (...), ptr @linkoncefunc.mod1
+; PROMOTE_MOD2: @linkoncefuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @linkoncefunc
 
-; NOTPROMOTED: @weakfuncAlias = alias void (...), bitcast (void ()* @weakfunc{{.*}} to void (...)*)
-; NOTPROMOTED: @weakfuncWeakAlias = weak alias void (...), bitcast (void ()* @weakfunc{{.*}} to void (...)*)
-; PROMOTE_MOD1: @weakfuncLinkonceAlias = weak alias void (...), bitcast (void ()* @weakfunc{{.*}} to void (...)*)
-; PROMOTE_MOD2: @weakfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @weakfunc{{.*}} to void (...)*)
+; NOTPROMOTED: @weakfuncAlias = alias void (...), ptr @weakfunc{{.*}}
+; NOTPROMOTED: @weakfuncWeakAlias = weak alias void (...), ptr @weakfunc{{.*}}
+; PROMOTE_MOD1: @weakfuncLinkonceAlias = weak alias void (...), ptr @weakfunc{{.*}}
+; PROMOTE_MOD2: @weakfuncLinkonceAlias = linkonce alias void (...), ptr @weakfunc{{.*}}
 ; FIXME: The "resolution" should turn one of these to linkonce_odr
-; PROMOTE_MOD1: @weakfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @weakfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakfunc to void (...)*)
-; PROMOTE_MOD1: @weakfuncLinkonceODRAlias = weak_odr alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
-; PROMOTE_MOD2: @weakfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @weakfunc to void (...)*)
+; PROMOTE_MOD1: @weakfuncWeakODRAlias = weak_odr alias void (...), ptr @weakfunc.mod1
+; PROMOTE_MOD2: @weakfuncWeakODRAlias = weak_odr alias void (...), ptr @weakfunc
+; PROMOTE_MOD1: @weakfuncLinkonceODRAlias = weak_odr alias void (...), ptr @weakfunc.mod1
+; PROMOTE_MOD2: @weakfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @weakfunc
 
 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 
- at linkonceODRfuncAlias = alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
- at linkonceODRfuncWeakAlias = weak alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
- at linkonceODRfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
- at linkonceODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
- at linkonceODRfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @linkonceODRfunc.mod1 to void (...)*)
+ at linkonceODRfuncAlias = alias void (...), ptr @linkonceODRfunc.mod1
+ at linkonceODRfuncWeakAlias = weak alias void (...), ptr @linkonceODRfunc.mod1
+ at linkonceODRfuncLinkonceAlias = linkonce alias void (...), ptr @linkonceODRfunc.mod1
+ at linkonceODRfuncWeakODRAlias = weak_odr alias void (...), ptr @linkonceODRfunc.mod1
+ at linkonceODRfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @linkonceODRfunc.mod1
 define linkonce_odr void @linkonceODRfunc.mod1() {
 entry:
   ret void
 }
 
- at weakODRfuncAlias = alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
- at weakODRfuncWeakAlias = weak alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
- at weakODRfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
- at weakODRfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
- at weakODRfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @weakODRfunc.mod1 to void (...)*)
+ at weakODRfuncAlias = alias void (...), ptr @weakODRfunc.mod1
+ at weakODRfuncWeakAlias = weak alias void (...), ptr @weakODRfunc.mod1
+ at weakODRfuncLinkonceAlias = linkonce alias void (...), ptr @weakODRfunc.mod1
+ at weakODRfuncWeakODRAlias = weak_odr alias void (...), ptr @weakODRfunc.mod1
+ at weakODRfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @weakODRfunc.mod1
 define weak_odr void @weakODRfunc.mod1() {
 entry:
   ret void
 }
 
- at linkoncefuncAlias = alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
- at linkoncefuncWeakAlias = weak alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
- at linkoncefuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
- at linkoncefuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
- at linkoncefuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @linkoncefunc.mod1 to void (...)*)
+ at linkoncefuncAlias = alias void (...), ptr @linkoncefunc.mod1
+ at linkoncefuncWeakAlias = weak alias void (...), ptr @linkoncefunc.mod1
+ at linkoncefuncLinkonceAlias = linkonce alias void (...), ptr @linkoncefunc.mod1
+ at linkoncefuncWeakODRAlias = weak_odr alias void (...), ptr @linkoncefunc.mod1
+ at linkoncefuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @linkoncefunc.mod1
 define linkonce void @linkoncefunc.mod1() {
 entry:
   ret void
 }
 
- at weakfuncAlias = alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
- at weakfuncWeakAlias = weak alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
- at weakfuncLinkonceAlias = linkonce alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
- at weakfuncWeakODRAlias = weak_odr alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
- at weakfuncLinkonceODRAlias = linkonce_odr alias void (...), bitcast (void ()* @weakfunc.mod1 to void (...)*)
+ at weakfuncAlias = alias void (...), ptr @weakfunc.mod1
+ at weakfuncWeakAlias = weak alias void (...), ptr @weakfunc.mod1
+ at weakfuncLinkonceAlias = linkonce alias void (...), ptr @weakfunc.mod1
+ at weakfuncWeakODRAlias = weak_odr alias void (...), ptr @weakfunc.mod1
+ at weakfuncLinkonceODRAlias = linkonce_odr alias void (...), ptr @weakfunc.mod1
 define weak void @weakfunc.mod1() {
 entry:
   ret void

diff  --git a/llvm/test/ThinLTO/X86/cache-icall.ll b/llvm/test/ThinLTO/X86/cache-icall.ll
index e3a3c66c1ee05..994d922ec5038 100644
--- a/llvm/test/ThinLTO/X86/cache-icall.ll
+++ b/llvm/test/ThinLTO/X86/cache-icall.ll
@@ -32,11 +32,10 @@
 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* @_start(void ()* %p) !type !0 {
+define ptr @_start(ptr %p) !type !0 {
 entry:
-  %0 = bitcast void ()* %p to i8*
-  %1 = tail call i1 @llvm.type.test(i8* %0, metadata !"_ZTSFvvE")
-  br i1 %1, label %cont, label %trap
+  %0 = tail call i1 @llvm.type.test(ptr %p, metadata !"_ZTSFvvE")
+  br i1 %0, label %cont, label %trap
 
 trap:                                             ; preds = %entry
   tail call void @llvm.trap()
@@ -44,10 +43,10 @@ trap:                                             ; preds = %entry
 
 cont:                                             ; preds = %entry
   tail call void %p()
-  ret i8* bitcast (void ()* @f to i8*)
+  ret ptr @f
 }
 
-declare i1 @llvm.type.test(i8*, metadata)
+declare i1 @llvm.type.test(ptr, metadata)
 declare void @llvm.trap()
 declare !type !1 void @f()
 

diff  --git a/llvm/test/ThinLTO/X86/cfi-devirt.ll b/llvm/test/ThinLTO/X86/cfi-devirt.ll
index 78fad2f15ad0e..7df936c02a341 100644
--- a/llvm/test/ThinLTO/X86/cfi-devirt.ll
+++ b/llvm/test/ThinLTO/X86/cfi-devirt.ll
@@ -48,46 +48,43 @@
 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-grtev4-linux-gnu"
 
-%struct.A = type { i32 (...)** }
+%struct.A = type { ptr }
 %struct.B = type { %struct.A }
 %struct.C = type { %struct.A }
 
- at _ZTV1B = constant { [4 x i8*] } { [4 x i8*] [i8* null, i8* undef, i8* bitcast (i32 (%struct.B*, i32)* @_ZN1B1fEi to i8*), i8* bitcast (i32 (%struct.A*, i32)* @_ZN1A1nEi to i8*)] }, !type !0, !type !1
- at _ZTV1C = constant { [4 x i8*] } { [4 x i8*] [i8* null, i8* undef, i8* bitcast (i32 (%struct.C*, i32)* @_ZN1C1fEi to i8*), i8* bitcast (i32 (%struct.A*, i32)* @_ZN1A1nEi to i8*)] }, !type !0, !type !2
+ at _ZTV1B = constant { [4 x ptr] } { [4 x ptr] [ptr null, ptr undef, ptr @_ZN1B1fEi, ptr @_ZN1A1nEi] }, !type !0, !type !1
+ at _ZTV1C = constant { [4 x ptr] } { [4 x ptr] [ptr null, ptr undef, ptr @_ZN1C1fEi, ptr @_ZN1A1nEi] }, !type !0, !type !2
 
 ; Put declaration first to test handling of remarks when the first
 ; function has no basic blocks.
 declare void @empty()
 
 ; CHECK-IR-LABEL: define i32 @test
-define i32 @test(%struct.A* %obj, i32 %a) {
+define i32 @test(ptr %obj, i32 %a) {
 entry:
-  %0 = bitcast %struct.A* %obj to i8**
-  %vtable5 = load i8*, i8** %0
+  %vtable5 = load ptr, ptr %obj
 
-  %1 = tail call { i8*, i1 } @llvm.type.checked.load(i8* %vtable5, i32 8, metadata !"_ZTS1A")
-  %2 = extractvalue { i8*, i1 } %1, 1
-  br i1 %2, label %cont, label %trap
+  %0 = tail call { ptr, i1 } @llvm.type.checked.load(ptr %vtable5, i32 8, metadata !"_ZTS1A")
+  %1 = extractvalue { ptr, i1 } %0, 1
+  br i1 %1, label %cont, label %trap
 
 trap:
   tail call void @llvm.trap()
   unreachable
 
 cont:
-  %3 = extractvalue { i8*, i1 } %1, 0
-  %4 = bitcast i8* %3 to i32 (%struct.A*, i32)*
+  %2 = extractvalue { ptr, i1 } %0, 0
 
   ; Check that the call was devirtualized.
   ; CHECK-IR: %call = tail call i32 @_ZN1A1nEi
-  %call = tail call i32 %4(%struct.A* nonnull %obj, i32 %a)
-  %vtable16 = load i8*, i8** %0
-  %5 = tail call { i8*, i1 } @llvm.type.checked.load(i8* %vtable16, i32 0, metadata !"_ZTS1A")
-  %6 = extractvalue { i8*, i1 } %5, 1
-  br i1 %6, label %cont2, label %trap
+  %call = tail call i32 %2(ptr nonnull %obj, i32 %a)
+  %vtable16 = load ptr, ptr %obj
+  %3 = tail call { ptr, i1 } @llvm.type.checked.load(ptr %vtable16, i32 0, metadata !"_ZTS1A")
+  %4 = extractvalue { ptr, i1 } %3, 1
+  br i1 %4, label %cont2, label %trap
 
 cont2:
-  %7 = extractvalue { i8*, i1 } %5, 0
-  %8 = bitcast i8* %7 to i32 (%struct.A*, i32)*
+  %5 = extractvalue { ptr, i1 } %3, 0
 
   ; Check that traps are conditional. Invalid TYPE_ID can cause
   ; unconditional traps.
@@ -95,18 +92,18 @@ cont2:
 
   ; We still have to call it as virtual.
   ; CHECK-IR: %call3 = tail call i32 %5
-  %call3 = tail call i32 %8(%struct.A* nonnull %obj, i32 %call)
+  %call3 = tail call i32 %5(ptr nonnull %obj, i32 %call)
   ret i32 %call3
 }
 ; CHECK-IR-LABEL: ret i32
 ; CHECK-IR-LABEL: }
 
-declare { i8*, i1 } @llvm.type.checked.load(i8*, i32, metadata)
+declare { ptr, i1 } @llvm.type.checked.load(ptr, i32, metadata)
 declare void @llvm.trap()
 
-declare i32 @_ZN1B1fEi(%struct.B* %this, i32 %a)
-declare i32 @_ZN1A1nEi(%struct.A* %this, i32 %a)
-declare i32 @_ZN1C1fEi(%struct.C* %this, i32 %a)
+declare i32 @_ZN1B1fEi(ptr %this, i32 %a)
+declare i32 @_ZN1A1nEi(ptr %this, i32 %a)
+declare i32 @_ZN1C1fEi(ptr %this, i32 %a)
 
 !0 = !{i64 16, !"_ZTS1A"}
 !1 = !{i64 16, !"_ZTS1B"}

diff  --git a/llvm/test/ThinLTO/X86/devirt_promote_legacy.ll b/llvm/test/ThinLTO/X86/devirt_promote_legacy.ll
index 7216911a6bc66..9d7a40204ba82 100644
--- a/llvm/test/ThinLTO/X86/devirt_promote_legacy.ll
+++ b/llvm/test/ThinLTO/X86/devirt_promote_legacy.ll
@@ -25,23 +25,20 @@
 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-grtev4-linux-gnu"
 
-%struct.A = type { i32 (...)** }
+%struct.A = type { ptr }
 
 ; CHECK-IR1-LABEL: define i32 @test
-define i32 @test(%struct.A* %obj, i32 %a) {
+define i32 @test(ptr %obj, i32 %a) {
 entry:
-  %0 = bitcast %struct.A* %obj to i8***
-  %vtable = load i8**, i8*** %0
-  %1 = bitcast i8** %vtable to i8*
-  %p = call i1 @llvm.type.test(i8* %1, metadata !"_ZTS1A")
+  %vtable = load ptr, ptr %obj
+  %p = call i1 @llvm.type.test(ptr %vtable, metadata !"_ZTS1A")
   call void @llvm.assume(i1 %p)
-  %fptrptr = getelementptr i8*, i8** %vtable, i32 1
-  %2 = bitcast i8** %fptrptr to i32 (%struct.A*, i32)**
-  %fptr1 = load i32 (%struct.A*, i32)*, i32 (%struct.A*, i32)** %2, align 8
+  %fptrptr = getelementptr ptr, ptr %vtable, i32 1
+  %fptr1 = load ptr, ptr %fptrptr, align 8
 
   ; Check that the call was devirtualized.
-  ; CHECK-IR1: = tail call i32 bitcast (void ()* @_ZN1A1nEi
-  %call = tail call i32 %fptr1(%struct.A* nonnull %obj, i32 %a)
+  ; CHECK-IR1: = tail call i32 @_ZN1A1nEi
+  %call = tail call i32 %fptr1(ptr nonnull %obj, i32 %a)
 
   ret i32 %call
 }
@@ -52,7 +49,7 @@ entry:
 ; Check that the call was devirtualized.
 ; CHECK-IR2: = tail call i32 @_ZN1A1nEi
 
-declare i1 @llvm.type.test(i8*, metadata)
+declare i1 @llvm.type.test(ptr, metadata)
 declare void @llvm.assume(i1)
 
 attributes #0 = { noinline optnone }

diff  --git a/llvm/test/ThinLTO/X86/empty-module.ll b/llvm/test/ThinLTO/X86/empty-module.ll
index 04bc0d5942e1a..4fff063ec3c9b 100644
--- a/llvm/test/ThinLTO/X86/empty-module.ll
+++ b/llvm/test/ThinLTO/X86/empty-module.ll
@@ -10,9 +10,9 @@
 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"
 
- at foo = ifunc i32 (i32), i32 (i32)* ()* @foo_ifunc
+ at foo = ifunc i32 (i32), ptr @foo_ifunc
 
-define internal i32 (i32)* @foo_ifunc() {
+define internal ptr @foo_ifunc() {
 entry:
-  ret i32 (i32)* null
+  ret ptr null
 }

diff  --git a/llvm/test/ThinLTO/X86/funcimport.ll b/llvm/test/ThinLTO/X86/funcimport.ll
index cb75d55edf583..63a83b6a33b93 100644
--- a/llvm/test/ThinLTO/X86/funcimport.ll
+++ b/llvm/test/ThinLTO/X86/funcimport.ll
@@ -12,7 +12,7 @@
 ; EXPORTSTATIC-DAG: @staticvar.llvm.0 = hidden global
 ; Eventually @staticconstvar can be exported as a copy and not promoted
 ; EXPORTSTATIC-DAG: @staticconstvar.llvm.0 = hidden unnamed_addr constant
-; EXPORTSTATIC-DAG: @P.llvm.0 = hidden global void ()* null
+; EXPORTSTATIC-DAG: @P.llvm.0 = hidden global ptr null
 ; EXPORTSTATIC-DAG: define hidden i32 @staticfunc.llvm.0
 ; EXPORTSTATIC-DAG: define hidden void @staticfunc2.llvm.0
 
@@ -55,11 +55,11 @@ target triple = "x86_64-apple-macosx10.11.0"
 @staticvar2 = internal global i32 1, align 4
 @staticconstvar = internal unnamed_addr constant [2 x i32] [i32 10, i32 20], align 4
 @commonvar = common global i32 0, align 4
- at P = internal global void ()* null, align 8
+ at P = internal global ptr null, align 8
 
- at weakalias = weak alias void (...), bitcast (void ()* @globalfunc1 to void (...)*)
- at analias = alias void (...), bitcast (void ()* @globalfunc2 to void (...)*)
- at linkoncealias = alias void (...), bitcast (void ()* @linkoncefunc to void (...)*)
+ at weakalias = weak alias void (...), ptr @globalfunc1
+ at analias = alias void (...), ptr @globalfunc2
+ at linkoncealias = alias void (...), ptr @linkoncefunc
 
 define void @globalfunc1() #0 {
 entry:
@@ -79,14 +79,14 @@ entry:
 define i32 @referencestatics(i32 %i) #0 {
 entry:
   %i.addr = alloca i32, align 4
-  store i32 %i, i32* %i.addr, align 4
+  store i32 %i, ptr %i.addr, align 4
   %call = call i32 @staticfunc()
-  %0 = load i32, i32* @staticvar, align 4
+  %0 = load i32, ptr @staticvar, align 4
   %add = add nsw i32 %call, %0
-  %1 = load i32, i32* %i.addr, align 4
+  %1 = load i32, ptr %i.addr, align 4
   %idxprom = sext i32 %1 to i64
-  %arrayidx = getelementptr inbounds [2 x i32], [2 x i32]* @staticconstvar, i64 0, i64 %idxprom
-  %2 = load i32, i32* %arrayidx, align 4
+  %arrayidx = getelementptr inbounds [2 x i32], ptr @staticconstvar, i64 0, i64 %idxprom
+  %2 = load i32, ptr %arrayidx, align 4
   %add1 = add nsw i32 %add, %2
   ret i32 %add1
 }
@@ -94,29 +94,29 @@ entry:
 define i32 @referenceglobals(i32 %i) #0 {
 entry:
   %i.addr = alloca i32, align 4
-  store i32 %i, i32* %i.addr, align 4
+  store i32 %i, ptr %i.addr, align 4
   call void @globalfunc1()
-  %0 = load i32, i32* @globalvar, align 4
+  %0 = load i32, ptr @globalvar, align 4
   ret i32 %0
 }
 
 define i32 @referencecommon(i32 %i) #0 {
 entry:
   %i.addr = alloca i32, align 4
-  store i32 %i, i32* %i.addr, align 4
-  %0 = load i32, i32* @commonvar, align 4
+  store i32 %i, ptr %i.addr, align 4
+  %0 = load i32, ptr @commonvar, align 4
   ret i32 %0
 }
 
 define void @setfuncptr() #0 {
 entry:
-  store void ()* @staticfunc2, void ()** @P, align 8
+  store ptr @staticfunc2, ptr @P, align 8
   ret void
 }
 
 define void @callfuncptr() #0 {
 entry:
-  %0 = load void ()*, void ()** @P, align 8
+  %0 = load ptr, ptr @P, align 8
   call void %0()
   ret void
 }
@@ -140,6 +140,6 @@ entry:
 
 define internal void @staticfunc2() #0 {
 entry:
-  %0 = load i32, i32* @staticvar2, align 4
+  %0 = load i32, ptr @staticvar2, align 4
   ret void
 }

diff  --git a/llvm/test/ThinLTO/X86/import_opaque_type.ll b/llvm/test/ThinLTO/X86/import_opaque_type.ll
index 0a49116a62a2e..ecb7b927bd8b6 100644
--- a/llvm/test/ThinLTO/X86/import_opaque_type.ll
+++ b/llvm/test/ThinLTO/X86/import_opaque_type.ll
@@ -10,18 +10,16 @@
 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"
 
-; CHECK: %0 = type { i8 }
-%0 = type opaque
-
-%a = type { %0 * }
+; CHECK: %a = type { i8 }
+%a = type opaque
 
 declare void @baz()
-define void @foo(%a *) {
+define void @foo(%a) {
 	call void @baz()
 	ret void
 }
 
 define i32 @main() {
-    call void @foo(%a *null)
+  call void @foo(%a undef)
 	ret i32 0
 }

diff  --git a/llvm/test/ThinLTO/X86/type_test_noindircall.ll b/llvm/test/ThinLTO/X86/type_test_noindircall.ll
index 2e2f9f8565968..2d0faaa256023 100644
--- a/llvm/test/ThinLTO/X86/type_test_noindircall.ll
+++ b/llvm/test/ThinLTO/X86/type_test_noindircall.ll
@@ -23,31 +23,29 @@
 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-grtev4-linux-gnu"
 
-%"class.llvm::vfs::File" = type { i32 (...)** }
+%"class.llvm::vfs::File" = type { ptr }
 %"class.llvm::vfs::Status" = type <{ %"class.std::__cxx11::basic_string", %"class.llvm::sys::fs::UniqueID", %"struct.std::chrono::time_point", i32, i32, i64, i32, i32, i8, [7 x i8] }>
 %"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider", i64, %union.anon }
-%"struct.std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider" = type { i8* }
+%"struct.std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider" = type { ptr }
 %union.anon = type { i64, [8 x i8] }
 %"class.llvm::sys::fs::UniqueID" = type { i64, i64 }
 %"struct.std::chrono::time_point" = type { %"struct.std::chrono::duration" }
 %"struct.std::chrono::duration" = type { i64 }
 %"class.(anonymous namespace)::RealFile" = type { %"class.llvm::vfs::File", i32, [4 x i8], %"class.llvm::vfs::Status", %"class.std::__cxx11::basic_string" }
 
- at _ZTVN12_GLOBAL__N_18RealFileE = unnamed_addr constant { [3 x i8*] } { [3 x i8*] [i8* null, i8* null, i8* bitcast (void (%"class.(anonymous namespace)::RealFile"*)* @_ZN12_GLOBAL__N_18RealFileD2Ev to i8*)] }, align 8, !type !74
+ at _ZTVN12_GLOBAL__N_18RealFileE = unnamed_addr constant { [3 x ptr] } { [3 x ptr] [ptr null, ptr null, ptr @_ZN12_GLOBAL__N_18RealFileD2Ev] }, align 8, !type !74
 
-define internal void @_ZN12_GLOBAL__N_18RealFileD2Ev(%"class.(anonymous namespace)::RealFile"* %this) unnamed_addr #0 align 2 {
+define internal void @_ZN12_GLOBAL__N_18RealFileD2Ev(ptr %this) unnamed_addr #0 align 2 {
 entry:
-; CHECK-IR: %0 = getelementptr
-  %0 = getelementptr %"class.(anonymous namespace)::RealFile", %"class.(anonymous namespace)::RealFile"* %this, i64 0, i32 0, i32 0
-; CHECK-IR-NEXT: store
-  store i32 (...)** bitcast (i8** getelementptr inbounds ({ [3 x i8*] }, { [3 x i8*] }* @_ZTVN12_GLOBAL__N_18RealFileE, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %0, align 8
-  %1 = tail call i1 @llvm.type.test(i8* bitcast (i8** getelementptr inbounds ({ [3 x i8*] }, { [3 x i8*] }* @_ZTVN12_GLOBAL__N_18RealFileE, i64 0, inrange i32 0, i64 2) to i8*), metadata !"4$09c6cc733fc6accb91e5d7b87cb48f2d")
-  tail call void @llvm.assume(i1 %1)
+; CHECK-IR: store
+  store ptr getelementptr inbounds ({ [3 x ptr] }, ptr @_ZTVN12_GLOBAL__N_18RealFileE, i64 0, inrange i32 0, i64 2), ptr %this, align 8
+  %0 = tail call i1 @llvm.type.test(ptr getelementptr inbounds ({ [3 x ptr] }, ptr @_ZTVN12_GLOBAL__N_18RealFileE, i64 0, inrange i32 0, i64 2), metadata !"4$09c6cc733fc6accb91e5d7b87cb48f2d")
+  tail call void @llvm.assume(i1 %0)
 ; CHECK-IR-NEXT: ret void
   ret void
 }
 
-declare i1 @llvm.type.test(i8*, metadata)
+declare i1 @llvm.type.test(ptr, metadata)
 declare void @llvm.assume(i1)
 
 ; Make sure we don't inline or otherwise optimize out the direct calls.


        


More information about the llvm-commits mailing list