mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[LLVM-C] Add Accessors for Discarding Value Names in the IR
Summary: Add accessors so the performance improvement from this setting is accessible to third parties. Reviewers: whitequark, deadalnix Reviewed By: whitequark Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D56179 llvm-svn: 350196
This commit is contained in:
parent
640d2a5684
commit
28b0b5468c
@ -520,6 +520,23 @@ void *LLVMContextGetDiagnosticContext(LLVMContextRef C);
|
||||
void LLVMContextSetYieldCallback(LLVMContextRef C, LLVMYieldCallback Callback,
|
||||
void *OpaqueHandle);
|
||||
|
||||
/**
|
||||
* Retrieve whether the given context is set to discard all value names.
|
||||
*
|
||||
* @see LLVMContext::shouldDiscardValueNames()
|
||||
*/
|
||||
bool LLVMContextShouldDiscardValueNames(LLVMContextRef C);
|
||||
|
||||
/**
|
||||
* Set whether the given context discards all value names.
|
||||
*
|
||||
* If true, only the names of GlobalValue objects will be available in the IR.
|
||||
* This can be used to save memory and runtime, especially in release mode.
|
||||
*
|
||||
* @see LLVMContext::setDiscardValueNames()
|
||||
*/
|
||||
void LLVMContextSetDiscardValueNames(LLVMContextRef C, bool Discard);
|
||||
|
||||
/**
|
||||
* Destroy a context instance.
|
||||
*
|
||||
|
@ -108,6 +108,14 @@ void LLVMContextSetYieldCallback(LLVMContextRef C, LLVMYieldCallback Callback,
|
||||
unwrap(C)->setYieldCallback(YieldCallback, OpaqueHandle);
|
||||
}
|
||||
|
||||
bool LLVMContextShouldDiscardValueNames(LLVMContextRef C) {
|
||||
return unwrap(C)->shouldDiscardValueNames();
|
||||
}
|
||||
|
||||
void LLVMContextSetDiscardValueNames(LLVMContextRef C, bool Discard) {
|
||||
unwrap(C)->setDiscardValueNames(Discard);
|
||||
}
|
||||
|
||||
void LLVMContextDispose(LLVMContextRef C) {
|
||||
delete unwrap(C);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user