1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00
llvm-mirror/include/llvm/IR
Nikita Popov 32304a1b52 [IR] Add WithOverflowInst class
This adds a WithOverflowInst class with a few helper methods to get
the underlying binop, signedness and nowrap type and makes use of it
where sensible. There will be two more uses in D60650/D60656.

The refactorings are all NFC, though I left some TODOs where things
could be improved. In particular we have two places where add/sub are
handled but mul isn't.

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

llvm-svn: 358512
2019-04-16 18:55:16 +00:00
..
Argument.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
AssemblyAnnotationWriter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Attributes.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Attributes.td IR: Add immarg attribute 2019-03-12 21:02:54 +00:00
AutoUpgrade.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BasicBlock.h Revert "[INLINER] allow inlining of address taken blocks" 2019-02-14 23:42:21 +00:00
CallingConv.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CallSite.h Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
CFG.h Replace llvm::isPodLike<...> by llvm::is_trivially_copyable<...> 2019-01-20 21:19:56 +00:00
CFGDiff.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CMakeLists.txt
Comdat.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Constant.h [InstCombine] canonicalize funnel shift constant shift amount to be modulo bitwidth 2019-03-14 19:22:08 +00:00
ConstantFolder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ConstantRange.h [ConstantRange] Delete unused getSetSize 2019-04-14 04:45:04 +00:00
Constants.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DataLayout.h [IR][ARM] Add function pointer alignment to datalayout 2019-03-08 10:44:06 +00:00
DebugInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DebugInfoFlags.def [DebugInfo] Combine Trivial and NonTrivial flags 2019-04-11 20:25:10 +00:00
DebugInfoMetadata.h Revert r358268 "[DebugInfo] DW_OP_deref_size in PrologEpilogInserter." 2019-04-12 12:54:52 +00:00
DebugLoc.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DerivedTypes.h [opaque pointer types] Add a FunctionCallee wrapper type, and use it. 2019-02-01 02:28:03 +00:00
DerivedUser.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DiagnosticHandler.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DiagnosticInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DiagnosticPrinter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DIBuilder.h Fix Wdocumentation warning. NFCI. 2019-04-09 09:38:25 +00:00
Dominators.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Function.h [IR] Refactor attribute methods in Function class (NFC) 2019-04-04 22:40:06 +00:00
GetElementPtrTypeIterator.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalAlias.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalIFunc.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalIndirectSymbol.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalObject.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalValue.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalVariable.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GVMaterializer.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
InlineAsm.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
InstIterator.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
InstrTypes.h Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
Instruction.def Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
Instruction.h Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
Instructions.h [InstCombine] canonicalize select shuffles by commuting 2019-03-31 15:01:30 +00:00
InstVisitor.h Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
IntrinsicInst.h [IR] Add WithOverflowInst class 2019-04-16 18:55:16 +00:00
Intrinsics.h Fix misspelled filenames in file headers 2019-02-07 14:38:25 +00:00
Intrinsics.td Remove immarg from llvm.expect 2019-03-17 23:16:18 +00:00
IntrinsicsAArch64.td [AArch64] Split the neon.addp intrinsic into integer and fp variants. 2019-03-21 22:31:37 +00:00
IntrinsicsAMDGPU.td AMDGPU: Fix copy/paste error in intrnsic comment 2019-04-03 13:56:36 +00:00
IntrinsicsARM.td ARM: Add ImmArg to intrinsics 2019-03-14 13:46:14 +00:00
IntrinsicsBPF.td Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IntrinsicsHexagon.td Hexagon: Add ImmArg to intrinsics 2019-03-13 19:46:33 +00:00
IntrinsicsMips.td Mips: Add ImmArg to intrinsics 2019-03-13 19:07:59 +00:00
IntrinsicsNVVM.td [NVPTX] Some nvvm.read.ptx.sreg intrinsics should have IntrInaccessibleMemOnly attribute. 2019-01-26 00:28:32 +00:00
IntrinsicsPowerPC.td [PowerPC] Add the support for __builtin_setrnd() 2019-03-29 08:45:24 +00:00
IntrinsicsRISCV.td [RISCV] Add ImmArg to intrinsics 2019-03-18 06:01:27 +00:00
IntrinsicsSystemZ.td SystemZ: Add ImmArg to intrinsics 2019-03-13 19:46:32 +00:00
IntrinsicsWebAssembly.td [WebAssembly] Add immarg attribute to intrinsics 2019-03-19 05:02:30 +00:00
IntrinsicsX86.td [X86] Restore the pavg intrinsics. 2019-04-15 17:17:35 +00:00
IntrinsicsXCore.td Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IRBuilder.h Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
IRPrintingPasses.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LegacyPassManager.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LegacyPassManagers.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LegacyPassNameParser.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LLVMContext.h Reland "[Remarks] Refactor remark diagnostic emission in a RemarkStreamer" 2019-03-06 15:20:13 +00:00
Mangler.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MDBuilder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Metadata.def Add LLVM IR debug info support for Fortran COMMON blocks 2019-04-08 19:13:55 +00:00
Metadata.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Module.h [PGO] Remove the default parameter in ProfileSummary API. NFC 2019-03-01 18:36:24 +00:00
ModuleSlotTracker.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ModuleSummaryIndex.h [ThinLTO] Restructure AliasSummary to contain ValueInfo of Aliasee 2019-03-15 15:11:38 +00:00
ModuleSummaryIndexYAML.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
NoFolder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OperandTraits.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Operator.h Reland "Relax constraints for reduction vectorization" 2019-03-12 01:31:44 +00:00
OptBisect.h Fix IR/Analysis layering issue with OptBisect 2019-02-28 04:00:55 +00:00
PassInstrumentation.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassManager.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassManagerInternal.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassTimingInfo.h [Legacy][TimePasses] allow -time-passes reporting into a custom stream 2019-03-22 23:11:08 +00:00
PatternMatch.h [PatternMatch] add special-case uaddo matching for increment-by-one (2nd try) 2019-02-03 16:16:48 +00:00
PredIteratorCache.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ProfileSummary.h [PGO] Context sensitive PGO (part 2) 2019-02-28 19:55:07 +00:00
RemarkStreamer.h Reland "[Remarks] Add -foptimization-record-passes to filter remark emission" 2019-03-12 21:22:27 +00:00
RuntimeLibcalls.def Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SafepointIRVerifier.h SafepointIRVerifier port to new Pass Manager 2019-03-31 10:15:39 +00:00
Statepoint.h [CallSite removal] Migrate the statepoint GC infrastructure to use the 2019-02-11 07:42:30 +00:00
SymbolTableListTraits.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TrackingMDRef.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Type.h [opaque pointer types] Remove GraphTraits specialization for Type. 2019-01-28 13:25:57 +00:00
TypeFinder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Use.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
UseListOrder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
User.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Value.def Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Value.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ValueHandle.h Replace llvm::isPodLike<...> by llvm::is_trivially_copyable<...> 2019-01-20 21:19:56 +00:00
ValueMap.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ValueSymbolTable.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Verifier.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00