llvm-project/llvm/lib/IR
James Molloy e6f87ca812 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.

llvm-svn: 252282
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 llvm/lib/IR/AttributeImpl.h: Move comment block not to cover typedef, introduced in r244164. [-Wdocumentation] 2015-08-06 09:49:17 +00:00
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 IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
ConstantFold.cpp Remove roundingMode argument in APFloat::mod 2015-09-21 19:29:25 +00:00
ConstantFold.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ConstantRange.cpp [IR] Add a `makeNoWrapRegion` method to `ConstantRange` 2015-10-22 03:12:57 +00:00
Constants.cpp [opaque pointer type]: Pass explicit pointee type when building a constant GEP. 2015-08-21 20:16:51 +00:00
ConstantsContext.h [opaque pointer type] Avoid using pointee types to retrieve InlineAsm's function type 2015-07-28 00:06:38 +00:00
Core.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
DIBuilder.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
DataLayout.cpp Revert "Add const to a bunch of Type* in DataLayout. NFC." 2015-07-27 17:15:28 +00:00
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 IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
DiagnosticInfo.cpp StringRef-ify DiagnosticInfoSampleProfile::Filename 2015-11-02 20:01:13 +00:00
DiagnosticPrinter.cpp MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
Dominators.cpp Constant propagation after hitting assume(cmp) bugfix 2015-09-02 19:59:59 +00:00
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
GVMaterializer.cpp
Globals.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
IRBuilder.cpp [IRBuilder] Change the `gc.statepoint` creation interface 2015-10-08 23:18:33 +00:00
IRPrintingPasses.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
InlineAsm.cpp Fix SEGV in InlineAsm::ConstraintInfo::Parse. 2015-09-03 15:41:37 +00:00
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 IR: Split Metadata from Value 2014-12-09 18:38:53 +00:00
LLVMBuild.txt
LLVMContext.cpp Introduce !align metadata for load instruction 2015-09-28 17:41:08 +00:00
LLVMContextImpl.cpp [IR] Add operand bundles to CallInst and InvokeInst. 2015-09-24 19:14:18 +00:00
LLVMContextImpl.h DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LegacyPassManager.cpp Simplify code. No functionality change. 2015-10-05 18:53:30 +00:00
MDBuilder.cpp add unpredictable metadata type for control flow 2015-09-02 19:06:43 +00:00
Makefile
Mangler.cpp Remove unused arguments and move ManglerPrefixTy to the implementation. 2015-06-23 14:11:09 +00:00
Metadata.cpp Preserve load alignment and dereferenceable metadata during some transformations 2015-11-02 17:53:51 +00:00
MetadataImpl.h DI: Disallow uniquable DICompileUnits 2015-08-03 17:26:41 +00:00
MetadataTracking.cpp IR: Store RAUW support and Context in the same pointer, NFC 2015-01-19 19:02:06 +00:00
Module.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Operator.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Pass.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
PassManager.cpp [PM] Push the debug option for the new pass manager into the opt tool 2015-01-13 22:42:38 +00:00
PassRegistry.cpp Revert r231276 (including r231277): Add a lock() function in PassRegistry to speed up multi-thread synchronization. 2015-03-05 17:53:00 +00:00
Statepoint.cpp Add invoke related functionality into StatepointSite classes. 2015-02-19 11:02:11 +00:00
SymbolTableListTraitsImpl.h IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Type.cpp [IR] Simplify code. No functionality change. 2015-08-16 21:16:26 +00:00
TypeFinder.cpp IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Use.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
User.cpp [IR] Teach `llvm::User` to co-allocate a descriptor. 2015-09-24 01:00:49 +00:00
Value.cpp Remove handling of AddrSpaceCast in stripAndAccumulateInBoundsConstantOffsets 2015-09-23 19:48:43 +00:00
ValueSymbolTable.cpp Changed renaming of local symbols by inserting a dot vefore the numeric suffix. 2015-05-12 16:47:30 +00:00
ValueTypes.cpp SelectionDAG: Support Expand of f16 extloads 2015-09-09 01:12:27 +00:00
Verifier.cpp Add a new attribute: norecurse 2015-11-06 10:32:53 +00:00
module.modulemap