1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/include/llvm/IR
Teresa Johnson d39ccf1724 [ThinLTO] Use per-summary flag to prevent exporting locals used in inline asm
Summary:
Instead of using the workaround of suppressing the entire index for
modules that call inline asm that may reference locals, use the
NoRename flag on the summary for any locals in the llvm.used set, and
add a reference edge from any functions containing inline asm.

This avoids issues from having no summaries despite the module defining
global values, which was preventing more aggressive index-based
optimization. It will be followed by a subsequent patch to make a
similar fix for local references in module level asm (to fix PR30610).

Reviewers: mehdi_amini

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D26121

llvm-svn: 285513
2016-10-30 05:40:44 +00:00
..
Argument.h Swift Calling Convention: add swifterror attribute. 2016-04-01 21:41:15 +00:00
AssemblyAnnotationWriter.h
Attributes.h IR: Rename the tablegen'd Attributes file to .gen 2016-09-29 03:35:19 +00:00
Attributes.td Add writeonly IR attribute 2016-07-04 08:01:29 +00:00
AutoUpgrade.h Fix auto-upgrade of TBAA tags in Bitcode Reader 2016-09-14 22:29:59 +00:00
BasicBlock.h ADT: Remove ilist_*sentinel_traits, NFC 2016-08-22 20:51:00 +00:00
CallingConv.h [X86] Basic additions to support RegCall Calling Convention. 2016-10-13 07:53:43 +00:00
CallSite.h [IR] Add DenseMapInfo<CallSite>. 2016-10-21 20:10:44 +00:00
CFG.h s/static inline/static/ for headers I have changed in r279475. NFC. 2016-08-31 16:48:13 +00:00
CMakeLists.txt IR: Rename the tablegen'd Attributes file to .gen 2016-09-29 03:35:19 +00:00
Comdat.h [NFC] Remove some dead code: 2016-05-11 16:38:40 +00:00
Constant.h Simplify handleOperandChangeImpl() removing last argument (NFC) 2016-02-10 22:47:15 +00:00
ConstantFolder.h
ConstantRange.h Analysis: Move llvm::getConstantRangeFromMetadata to IR library. 2016-10-21 19:59:26 +00:00
Constants.h [IR] Require ArrayRef of 'uint32_t' instead of 'int' for the mask argument for one of the signatures of CreateShuffleVector. This better emphasises that you can't use it for the -1 as undef behavior. 2016-06-12 00:41:19 +00:00
DataLayout.h Correct PrivateLinkage for COFF 2016-10-13 00:55:24 +00:00
DebugInfo.h Add -strip-nonlinetable-debuginfo capability 2016-10-25 18:44:13 +00:00
DebugInfoFlags.def [codeview] support emitting indirect virtual base class information 2016-10-25 22:11:52 +00:00
DebugInfoMetadata.h DebugInfo: fix incorrect alignment type (NFC) 2016-10-26 21:32:29 +00:00
DebugLoc.h Do a sweep over move ctors and remove those that are identical to the default. 2016-10-20 12:20:28 +00:00
DerivedTypes.h Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 15:02:18 +00:00
DiagnosticInfo.h [OptRemarks] Remove non-printable chars from function name 2016-10-08 04:47:20 +00:00
DiagnosticPrinter.h
DIBuilder.h Wdocumentation fix 2016-10-20 10:53:38 +00:00
Dominators.h Do a sweep over move ctors and remove those that are identical to the default. 2016-10-20 12:20:28 +00:00
Function.h IR: Deduplicate getParent() functions on derived classes of GlobalValue into the base class. NFCI. 2016-10-25 02:54:08 +00:00
GetElementPtrTypeIterator.h [opaque pointer types] [NFC] gep_type_{begin,end} now take source element type and address space. 2016-01-22 01:33:43 +00:00
GlobalAlias.h IR: Deduplicate getParent() functions on derived classes of GlobalValue into the base class. NFCI. 2016-10-25 02:54:08 +00:00
GlobalIFunc.h IR: Deduplicate getParent() functions on derived classes of GlobalValue into the base class. NFCI. 2016-10-25 02:54:08 +00:00
GlobalIndirectSymbol.h [GlobalDCE, Misc] Don't remove functions referenced by ifuncs 2016-05-04 00:20:48 +00:00
GlobalObject.h IR: New representation for CFI and virtual call optimization pass metadata. 2016-06-24 21:21:32 +00:00
GlobalValue.h IR: Deduplicate getParent() functions on derived classes of GlobalValue into the base class. NFCI. 2016-10-25 02:54:08 +00:00
GlobalVariable.h IR: Deduplicate getParent() functions on derived classes of GlobalValue into the base class. NFCI. 2016-10-25 02:54:08 +00:00
GVMaterializer.h [ThinLTO] Remove post-pass metadata linking support 2016-03-29 18:24:19 +00:00
InlineAsm.h [inlineasm] Propagate operand constraints to the backend 2016-07-18 13:17:31 +00:00
InstIterator.h
InstrTypes.h [SimplifyCFG] Don't create PHI nodes for constant bundle operands 2016-10-12 18:15:33 +00:00
Instruction.def [IR] Remove terminatepad 2015-12-14 18:34:23 +00:00
Instruction.h fix documentation comments; NFC 2016-10-05 18:51:12 +00:00
Instructions.h [IR] Reintroduce getGEPReturnType(), it will be used in a later patch. 2016-10-27 23:38:51 +00:00
InstVisitor.h [IR] Remove terminatepad 2015-12-14 18:34:23 +00:00
IntrinsicInst.h [Profile] code refactoring: make getStep a method in base class 2016-09-20 19:07:22 +00:00
Intrinsics.h Use StringRef in TableGen generated Intrinsics.gen file (NFC) 2016-10-10 19:31:09 +00:00
Intrinsics.td Create llvm.addressofreturnaddress intrinsic 2016-10-12 22:13:19 +00:00
IntrinsicsAArch64.td IR: Set TargetPrefix for some X86 and AArch64 intrinsics where it was missing 2016-07-01 22:07:11 +00:00
IntrinsicsAMDGPU.td AMDGPU/SI: Change mimg intrinsic signatures 2016-10-12 16:35:29 +00:00
IntrinsicsARM.td [ARM] Add support for mrrc/mrrc2 intrinsics. 2016-06-17 00:52:41 +00:00
IntrinsicsBPF.td
IntrinsicsHexagon.td [Hexagon] Handle operand type differences for A2_tfrpi 2016-05-05 15:29:47 +00:00
IntrinsicsMips.td Split IntrReadArgMem into IntrReadMem and IntrArgMemOnly 2016-04-21 17:48:02 +00:00
IntrinsicsNVVM.td [NVPTX] Added intrinsics for atom.gen.{sys|cta}.* instructions. 2016-09-28 17:25:38 +00:00
IntrinsicsPowerPC.td Implement vector count leading/trailing bytes with zero lsb and vector parity 2016-10-28 19:38:24 +00:00
IntrinsicsSystemZ.td [SystemZ] Utilize Test Data Class instructions. 2016-07-10 14:41:22 +00:00
IntrinsicsWebAssembly.td [WebAssembly] Rename memory_size intrinsic to current_memory 2016-05-02 17:25:22 +00:00
IntrinsicsX86.td [AVX-512] Add scalar vfmsub/vfnmsub mask3 intrinsics 2016-10-26 04:59:58 +00:00
IntrinsicsXCore.td
IRBuilder.h ADT: Remove ilist_iterator::reset(), NFC 2016-09-11 20:47:27 +00:00
IRPrintingPasses.h [PM] Re-instate r279227 and r279228 with a fix to the way the templating 2016-08-19 18:36:06 +00:00
LegacyPassManager.h
LegacyPassManagers.h Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
LegacyPassNameParser.h Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
LLVMContext.h Use profile info to set function section prefix to group hot/cold functions. 2016-10-18 20:42:47 +00:00
Mangler.h Remove the default constructor and count variable from the Mangler since 2016-09-29 02:03:50 +00:00
MDBuilder.h Use profile info to set function section prefix to group hot/cold functions. 2016-10-18 20:42:47 +00:00
Metadata.def BitcodeReader: Avoid referencing unresolved nodes from distinct ones 2016-04-23 04:15:56 +00:00
Metadata.h Add -strip-nonlinetable-debuginfo capability 2016-10-25 18:44:13 +00:00
Module.h ADT: Split ilist_node_traits into alloc and callback, NFC 2016-08-30 18:40:47 +00:00
ModuleSlotTracker.h IR: Avoid mallocs in constructor of ModuleSlotTracker 2016-04-20 19:05:59 +00:00
ModuleSummaryIndex.h [ThinLTO] Use per-summary flag to prevent exporting locals used in inline asm 2016-10-30 05:40:44 +00:00
NoFolder.h
OperandTraits.h
Operator.h [EarlyCSE] Take the intersection of flags on instructions 2016-04-22 06:37:45 +00:00
OptBisect.h Re-commit optimization bisect support (r267022) without new pass manager support. 2016-04-22 22:06:11 +00:00
PassManager.h Clarify that MSVC is not the issue here anymore. 2016-10-24 18:11:05 +00:00
PassManagerInternal.h [PM] Re-instate r279227 and r279228 with a fix to the way the templating 2016-08-19 18:36:06 +00:00
PatternMatch.h Add support to paternmatch for simple const Value cases. 2016-08-12 22:16:05 +00:00
PredIteratorCache.h
ProfileSummary.h Apply clang-tidy's misc-move-constructor-init throughout LLVM. 2016-05-27 14:27:24 +00:00
Statepoint.h [statepoints][experimental] Add support for live-in semantics of values in deopt bundles 2016-08-31 15:12:17 +00:00
SymbolTableListTraits.h ADT: Split out iplist_impl from iplist, NFC 2016-09-03 02:07:45 +00:00
TrackingMDRef.h Remove some unneeded headers and replace some headers with forward class declarations (NFC) 2016-04-16 07:51:28 +00:00
Type.h Fix IntegerType::MAX_INT_BITS value 2016-10-04 12:43:46 +00:00
TypeBuilder.h
TypeFinder.h Fix ThinLTO crash with debug info 2016-09-03 21:12:33 +00:00
Use.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
UseListOrder.h Do a sweep over move ctors and remove those that are identical to the default. 2016-10-20 12:20:28 +00:00
User.h Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 15:02:18 +00:00
Value.def [GCC] Attribute ifunc support in llvm 2016-04-07 12:32:19 +00:00
Value.h Add an isSwiftError predicate to Value 2016-09-10 18:14:54 +00:00
ValueHandle.h
ValueMap.h Linker: Avoid constructing ValueMap::MDMapT 2016-04-19 16:57:24 +00:00
ValueSymbolTable.h Remove some unneeded headers and replace some headers with forward class declarations (NFC) 2016-04-16 07:51:28 +00:00
Verifier.h [PM] Remove support for omitting the AnalysisManager argument to new 2016-06-17 00:11:01 +00:00