Introduce enum values for previously defined metadata types. (NFC)

Our metadata scheme lazily assigns IDs to string metadata, but we have a mechanism to preassign them as well.  Using a preassigned ID is helpful since we get compile time type checking, and avoid some (minimal) string construction and comparison.  This change adds enum value for three existing metadata types:
+    MD_nontemporal = 9, // "nontemporal"
+    MD_mem_parallel_loop_access = 10, // "llvm.mem.parallel_loop_access"
+    MD_nonnull = 11 // "nonnull"

I went through an updated various uses as well.  I made no attempt to get all uses; I focused on the ones which were easily grepable and easily to translate.  For example, there were several items in LoopInfo.cpp I chose not to update.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220248 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Philip Reames
2014-10-21 00:13:20 +00:00
parent c0c4f1b78e
commit 9be9473394
8 changed files with 33 additions and 15 deletions
+17
View File
@@ -76,6 +76,23 @@ LLVMContext::LLVMContext() : pImpl(new LLVMContextImpl(*this)) {
unsigned NoAliasID = getMDKindID("noalias");
assert(NoAliasID == MD_noalias && "noalias kind id drifted");
(void)NoAliasID;
// Create the 'nontemporal' metadata kind.
unsigned NonTemporalID = getMDKindID("nontemporal");
assert(NonTemporalID == MD_nontemporal && "nontemporal kind id drifted");
(void)NonTemporalID;
// Create the 'llvm.mem.parallel_loop_access' metadata kind.
unsigned MemParallelLoopAccessID = getMDKindID("llvm.mem.parallel_loop_access");
assert(MemParallelLoopAccessID == MD_mem_parallel_loop_access &&
"mem_parallel_loop_access kind id drifted");
(void)MemParallelLoopAccessID;
// Create the 'nonnull' metadata kind.
unsigned NonNullID = getMDKindID("nonnull");
assert(NonNullID == MD_nonnull && "nonnull kind id drifted");
(void)NonNullID;
}
LLVMContext::~LLVMContext() { delete pImpl; }