llvm/lib/IR
James Molloy d001932f3a Add a new attribute: norecurse
This attribute allows the compiler to assume that the function never recurses into itself, either directly or indirectly (transitively). This can be used among other things to demote global variables to locals.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@252282 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-06 10:32:53 +00:00
..
AsmWriter.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
AttributeImpl.h
Attributes.cpp Add a new attribute: norecurse 2015-11-06 10:32:53 +00:00
AutoUpgrade.cpp [X86][XOP] Add support for the matching of the VPCMOV bit select instruction 2015-11-03 20:27:01 +00:00
BasicBlock.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
CMakeLists.txt Support for function summary index bitcode sections and files. 2015-10-04 14:33:43 +00:00
Comdat.cpp
ConstantFold.cpp
ConstantFold.h
ConstantRange.cpp [IR] Add a makeNoWrapRegion method to ConstantRange 2015-10-22 03:12:57 +00:00
Constants.cpp
ConstantsContext.h
Core.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
DataLayout.cpp
DebugInfo.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
DebugInfoMetadata.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
DebugLoc.cpp
DiagnosticInfo.cpp StringRef-ify DiagnosticInfoSampleProfile::Filename 2015-11-02 20:01:13 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
Dominators.cpp
Function.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
FunctionInfo.cpp Fix use-after-free in function index merging code. 2015-11-02 20:43:33 +00:00
GCOV.cpp Rename one of our two llvm::GCOVOptions classes to llvm::GCOV::Options. We used 2015-10-14 00:04:19 +00:00
Globals.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Instructions.cpp [IR] Add bounds checking to dataOperandHasImpliedAttr 2015-11-05 01:53:26 +00:00
IntrinsicInst.cpp
IRBuilder.cpp [IRBuilder] Change the gc.statepoint creation interface 2015-10-08 23:18:33 +00:00
IRPrintingPasses.cpp
LegacyPassManager.cpp Simplify code. No functionality change. 2015-10-05 18:53:30 +00:00
LLVMBuild.txt
LLVMContext.cpp Introduce !align metadata for load instruction 2015-09-28 17:41:08 +00:00
LLVMContextImpl.cpp
LLVMContextImpl.h DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
Makefile
Mangler.cpp
MDBuilder.cpp
Metadata.cpp Preserve load alignment and dereferenceable metadata during some transformations 2015-11-02 17:53:51 +00:00
MetadataImpl.h
MetadataTracking.cpp
Module.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
module.modulemap
Operator.cpp
Pass.cpp
PassManager.cpp
PassRegistry.cpp
Statepoint.cpp
SymbolTableListTraitsImpl.h IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Type.cpp
TypeFinder.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Use.cpp
User.cpp
Value.cpp
ValueSymbolTable.cpp
ValueTypes.cpp
Verifier.cpp Add a new attribute: norecurse 2015-11-06 10:32:53 +00:00