summaryrefslogtreecommitdiffstats
path: root/llvm/include/llvm-c/Core.h
diff options
context:
space:
mode:
authorRobert Widmann <devteam.codafi@gmail.com>2019-04-24 17:05:08 +0000
committerRobert Widmann <devteam.codafi@gmail.com>2019-04-24 17:05:08 +0000
commit09c5b883cb7ac66cb34d33291586a1055e0c816d (patch)
tree8881f00cf2945ff0e3c460d962156ab17c009c51 /llvm/include/llvm-c/Core.h
parentcee607e4144e6391472e04235479969d9b0408a2 (diff)
downloadbcm5719-llvm-09c5b883cb7ac66cb34d33291586a1055e0c816d.tar.gz
bcm5719-llvm-09c5b883cb7ac66cb34d33291586a1055e0c816d.zip
[LLVM-C] Deprecate the LLVMValueRef-returning metadata creation functions
Summary: There is still some value in using these functions while the remaining LLVMValueRef-based accessors are still around, but LLVMMDNodeInContext in particular has some wonky semantics that make it worth replacing outright. Reviewers: whitequark, deadalnix Reviewed By: whitequark Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D60524 llvm-svn: 359114
Diffstat (limited to 'llvm/include/llvm-c/Core.h')
-rw-r--r--llvm/include/llvm-c/Core.h42
1 files changed, 21 insertions, 21 deletions
diff --git a/llvm/include/llvm-c/Core.h b/llvm/include/llvm-c/Core.h
index 0a8135ff4a0..cac2f297056 100644
--- a/llvm/include/llvm-c/Core.h
+++ b/llvm/include/llvm-c/Core.h
@@ -2735,34 +2735,23 @@ void LLVMRemoveGlobalIFunc(LLVMValueRef IFunc);
*/
/**
- * Obtain a MDString value from a context.
+ * Create an MDString value from a given string value.
*
- * The returned instance corresponds to the llvm::MDString class.
+ * The MDString value does not take ownership of the given string, it remains
+ * the responsibility of the caller to free it.
*
- * The instance is specified by string data of a specified length. The
- * string content is copied, so the backing memory can be freed after
- * this function returns.
+ * @see llvm::MDString::get()
*/
-LLVMValueRef LLVMMDStringInContext(LLVMContextRef C, const char *Str,
- unsigned SLen);
-
-/**
- * Obtain a MDString value from the global context.
- */
-LLVMValueRef LLVMMDString(const char *Str, unsigned SLen);
+LLVMMetadataRef LLVMMDStringInContext2(LLVMContextRef C, const char *Str,
+ size_t SLen);
/**
- * Obtain a MDNode value from a context.
+ * Create an MDNode value with the given array of operands.
*
- * The returned value corresponds to the llvm::MDNode class.
+ * @see llvm::MDNode::get()
*/
-LLVMValueRef LLVMMDNodeInContext(LLVMContextRef C, LLVMValueRef *Vals,
- unsigned Count);
-
-/**
- * Obtain a MDNode value from the global context.
- */
-LLVMValueRef LLVMMDNode(LLVMValueRef *Vals, unsigned Count);
+LLVMMetadataRef LLVMMDNodeInContext2(LLVMContextRef C, LLVMMetadataRef *MDs,
+ size_t Count);
/**
* Obtain a Metadata as a Value.
@@ -2804,6 +2793,17 @@ unsigned LLVMGetMDNodeNumOperands(LLVMValueRef V);
*/
void LLVMGetMDNodeOperands(LLVMValueRef V, LLVMValueRef *Dest);
+/** Deprecated: Use LLVMMDStringInContext2 instead. */
+LLVMValueRef LLVMMDStringInContext(LLVMContextRef C, const char *Str,
+ unsigned SLen);
+/** Deprecated: Use LLVMMDStringInContext2 instead. */
+LLVMValueRef LLVMMDString(const char *Str, unsigned SLen);
+/** Deprecated: Use LLVMMDNodeInContext2 instead. */
+LLVMValueRef LLVMMDNodeInContext(LLVMContextRef C, LLVMValueRef *Vals,
+ unsigned Count);
+/** Deprecated: Use LLVMMDNodeInContext2 instead. */
+LLVMValueRef LLVMMDNode(LLVMValueRef *Vals, unsigned Count);
+
/**
* @}
*/
OpenPOWER on IntegriCloud