OmniSciDB  1dac507f6e
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
LLVMFunctionAttributesUtil.h File Reference
#include <llvm/IR/Attributes.h>
#include <llvm/IR/Function.h>
+ Include dependency graph for LLVMFunctionAttributesUtil.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void mark_function_always_inline (llvm::Function *func)
 
void mark_function_never_inline (llvm::Function *func)
 
void clear_function_attributes (llvm::Function *func)
 

Function Documentation

void clear_function_attributes ( llvm::Function *  func)

Definition at line 48 of file LLVMFunctionAttributesUtil.cpp.

48  {
49  llvm::AttributeSet no_attributes;
50  func->setAttributes(no_attributes);
51 }
void mark_function_always_inline ( llvm::Function *  func)

Definition at line 36 of file LLVMFunctionAttributesUtil.cpp.

Referenced by GroupByAndAggregate::codegenPerfectHashFunction(), and anonymous_namespace{ResultSetReductionJIT.cpp}::create_llvm_function().

36  {
37  func->addAttribute(llvm::AttributeSet::AttrIndex::FunctionIndex,
38  llvm::Attribute::AlwaysInline);
39 }

+ Here is the caller graph for this function:

void mark_function_never_inline ( llvm::Function *  func)

Definition at line 41 of file LLVMFunctionAttributesUtil.cpp.

41  {
42  llvm::AttributeSet no_inline_attrs;
43  no_inline_attrs =
44  no_inline_attrs.addAttribute(func->getContext(), 0, llvm::Attribute::NoInline);
45  func->setAttributes(no_inline_attrs);
46 }