1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 02:33:06 +01:00
llvm-mirror/lib/IR
Eli Friedman a75903d41d [ConstantFold] Get rid of special cases for sizeof etc.
Target-dependent constant folding will fold these down to simple
constants (or at least, expressions that don't involve a GEP).  We don't
need heroics to try to optimize the form of the expression before that
happens.

Fixes https://bugs.llvm.org/show_bug.cgi?id=51232 .

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

(cherry picked from commit 2a2847823f0d13188c43ebdd0baf42a95df750c7)
2021-08-04 21:25:15 -07:00
..
AbstractCallSite.cpp
AsmWriter.cpp [NFC][AssemblyWriter] Allow AssemblyWriter::printBasicBlock() to print blocks that don't have parents. 2021-07-20 15:46:31 -07:00
Assumptions.cpp [OpenMP] Detect SPMD compatible kernels and execute them as such 2021-07-10 18:44:25 -05:00
AttributeImpl.h [Attributes] Use single method to fetch type from AttributeSet (NFC) 2021-07-14 21:10:56 +02:00
Attributes.cpp [Attributes] Clean up handling of UB implying attributes (NFC) 2021-07-25 18:21:13 +02:00
AutoUpgrade.cpp [IRBuilder] Add type argument to CreateMaskedLoad/Gather 2021-07-04 12:17:59 +02:00
BasicBlock.cpp [IR] Add BasicBlock::isEntryBlock() (NFC) 2021-05-15 12:41:58 +02:00
BuiltinGCs.cpp [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
CMakeLists.txt [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
Comdat.cpp [IR] Rename comdat noduplicates to comdat nodeduplicate 2021-07-20 12:47:10 -07:00
ConstantFold.cpp [ConstantFold] Get rid of special cases for sizeof etc. 2021-08-04 21:25:15 -07:00
ConstantFold.h
ConstantRange.cpp [ConstantRanges] Use APInt for constant case for urem/srem. 2021-06-30 11:18:20 +01:00
Constants.cpp [IR] Don't accept null type in ConstantExpr::getGetElementPtr() 2021-07-17 15:59:31 +02:00
ConstantsContext.h [IR] Added operator delete to subclasses of User to avoid UB 2021-07-08 11:59:22 +02:00
Core.cpp Intrinsic::getName: require a Module argument 2021-06-14 14:52:29 +02:00
DataLayout.cpp
DebugInfo.cpp Remove redundant comparisons (NFC) 2021-06-02 09:52:45 -07:00
DebugInfoMetadata.cpp Revert "[DebugInfo] Enforce implicit constraints on distinct MDNodes" 2021-07-02 15:57:07 -07:00
DebugLoc.cpp
DiagnosticHandler.cpp
DiagnosticInfo.cpp Improve the diagnostic of DiagnosticInfoResourceLimit (and warn-stack-size in particular) 2021-06-22 09:55:20 -07:00
DiagnosticPrinter.cpp
DIBuilder.cpp [CodeView] Saturate values bigger than supported by APInt. 2021-07-26 22:15:26 +02:00
Dominators.cpp
FPEnv.cpp
Function.cpp [Attributes] Clean up handling of UB implying attributes (NFC) 2021-07-25 18:21:13 +02:00
GCStrategy.cpp [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
Globals.cpp
GVMaterializer.cpp
InlineAsm.cpp Support unwinding from inline assembly 2021-05-13 19:13:03 +01:00
Instruction.cpp Strip undef implying attributes when moving calls 2021-07-27 10:57:05 -04:00
Instructions.cpp [InstCombine] Precommit tests for D105088 (NFC) 2021-07-13 20:35:04 +02:00
IntrinsicInst.cpp [VP] Implementation of intrinsic and SDNode definitions for VP load, store, gather, scatter. 2021-07-01 13:34:44 +02:00
IRBuilder.cpp [BPF] Use elementtype attribute for preserve.array/struct.index intrinsics 2021-07-17 11:09:18 +02:00
IRPrintingPasses.cpp
LegacyPassManager.cpp
LLVMContext.cpp [clang] Use i64 for the !srcloc metadata on asm IR nodes. 2021-07-22 10:24:52 +01:00
LLVMContextImpl.cpp Revert "[DebugInfo] Enforce implicit constraints on distinct MDNodes" 2021-07-02 15:57:07 -07:00
LLVMContextImpl.h Revert "[DebugInfo] Enforce implicit constraints on distinct MDNodes" 2021-07-02 15:57:07 -07:00
LLVMRemarkStreamer.cpp
Mangler.cpp
MDBuilder.cpp
Metadata.cpp Revert "[DebugInfo] Enforce implicit constraints on distinct MDNodes" 2021-07-02 15:57:07 -07:00
MetadataImpl.h
Module.cpp [PredicateInfo] Use Intrinsic::getDeclaration now that it handles unnamed types. 2021-08-04 16:51:33 -07:00
ModuleSummaryIndex.cpp
Operator.cpp Partial Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" 2021-06-24 09:46:38 +01:00
OptBisect.cpp Revert "Delay initialization of OptBisect" 2021-06-18 13:16:45 -05:00
Pass.cpp
PassInstrumentation.cpp [NewPM] Handle passes with params in -print-before/-print-after 2021-07-09 09:27:37 +02:00
PassManager.cpp
PassRegistry.cpp
PassTimingInfo.cpp
PrintPasses.cpp
ProfileSummary.cpp
PseudoProbe.cpp [CSSPGO] Undoing the concept of dangling pseudo probe 2021-06-18 15:14:11 -07:00
ReplaceConstant.cpp [IR] Simplify createReplacementInstr 2021-06-23 10:47:43 +01:00
SafepointIRVerifier.cpp
Statepoint.cpp
StructuralHash.cpp
SymbolTableListTraitsImpl.h
Type.cpp [IR] Add Type::isOpaquePointerTy() helper (NFC) 2021-06-25 20:56:59 +02:00
TypeFinder.cpp [IR] Make TypeFinder aware of DIArgList values 2021-05-28 17:09:45 +02:00
Use.cpp
User.cpp
Value.cpp Global variables with strong definitions cannot be freed 2021-07-14 13:26:18 -07:00
ValueSymbolTable.cpp PR51018: Remove explicit conversions from SmallString to StringRef to future-proof against C++23 2021-07-08 13:37:57 -07:00
Verifier.cpp [Verifier] Check byval/etc type when comparing ABI attributes 2021-07-20 20:19:47 +02:00