diff options
author | Philip Reames <listmail@philipreames.com> | 2014-10-21 00:13:20 +0000 |
---|---|---|
committer | Philip Reames <listmail@philipreames.com> | 2014-10-21 00:13:20 +0000 |
commit | 5a3f5f751bdca3483e1edb0d3ac025a466c1ec2d (patch) | |
tree | dcbbec576b30401977a2b90e0be7ab28413101c0 /llvm/lib/IR/LLVMContext.cpp | |
parent | 3eb69f5482199fe33c2963af380845238656c846 (diff) | |
download | llvm-5a3f5f751bdca3483e1edb0d3ac025a466c1ec2d.zip llvm-5a3f5f751bdca3483e1edb0d3ac025a466c1ec2d.tar.gz llvm-5a3f5f751bdca3483e1edb0d3ac025a466c1ec2d.tar.bz2 |
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.
llvm-svn: 220248
Diffstat (limited to 'llvm/lib/IR/LLVMContext.cpp')
-rw-r--r-- | llvm/lib/IR/LLVMContext.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/llvm/lib/IR/LLVMContext.cpp b/llvm/lib/IR/LLVMContext.cpp index 73ddc8c..a1a4f63 100644 --- a/llvm/lib/IR/LLVMContext.cpp +++ b/llvm/lib/IR/LLVMContext.cpp @@ -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; } |