1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 12:12:47 +01:00
llvm-mirror/lib/IR
Matheus Izvekov 33d35b0a79 [CodeView] Saturate values bigger than supported by APInt.
This fixes an assert firing when compiling code which involves 128 bit
integrals.

This would trigger runtime checks similar to this:
```
Assertion failed: getMinSignedBits() <= 64 && "Too many bits for int64_t", file llvm/include/llvm/ADT/APInt.h, line 1646
```

To get around this, we just saturate those big values.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D105320
2021-07-26 22:15:26 +02:00
..
AbstractCallSite.cpp Remove getNumUses() comparisons (NFC) 2020-05-02 11:05:19 +02:00
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] Fix GEP of GEP fold with opaque pointers 2021-07-23 23:56:41 +02:00
ConstantFold.h Remove "mask" operand from shufflevector. 2020-03-31 13:08:59 -07:00
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 [StructLayout] Use TrailingObjects to allocate space for MemberOffsets. 2021-03-30 17:36:50 -07:00
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 [IR] Delete unused ReplaceLast in DebugLoc::appendInlineAt 2021-01-08 23:28:22 -08:00
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 [gvn] Precisely propagate equalities to phi operands 2021-03-08 08:59:00 -08:00
FPEnv.cpp Fix some clang-tidy namespace closing comments warnings. NFC. 2020-06-26 09:58:21 +01:00
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 [NFC] Use Aliasee to determine Type and AddrSpace in GlobalAlias::create() 2021-05-02 11:50:08 -07:00
GVMaterializer.cpp
InlineAsm.cpp Support unwinding from inline assembly 2021-05-13 19:13:03 +01:00
Instruction.cpp [LLVM IR] Allow volatile stores to trap. 2021-07-26 10:51:00 -07: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 [NewPM] Support --print-before/after in NPM 2020-12-03 16:52:14 -08:00
LegacyPassManager.cpp [opt] Error if -debug-pass is specified alongside the new PM 2021-03-02 15:59:28 -08:00
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 [SystemZ][z/OS][Windows] Add new OF_TextWithCRLF flag and use this flag instead of OF_Text 2021-04-06 07:23:31 -04:00
Mangler.cpp [IR] Use range-based for loops (NFC) 2021-02-27 10:09:25 -08:00
MDBuilder.cpp [CSSPGO] Pseudo probe encoding and emission. 2020-12-10 17:29:28 -08:00
Metadata.cpp Revert "[DebugInfo] Enforce implicit constraints on distinct MDNodes" 2021-07-02 15:57:07 -07:00
MetadataImpl.h
Module.cpp [NFC][OpaquePtr] Use GlobalValue::getValueType() more 2021-07-09 09:55:41 -07:00
ModuleSummaryIndex.cpp [IR] Use range-based for loops (NFC) 2021-03-01 23:40:33 -08:00
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 [PM] Avoid duplicates in the Used/Preserved/Required sets 2021-01-20 13:55:18 +01:00
PassInstrumentation.cpp [NewPM] Handle passes with params in -print-before/-print-after 2021-07-09 09:27:37 +02:00
PassManager.cpp [NewPM] Make pass adaptors less templatey 2020-12-04 08:30:50 -08:00
PassRegistry.cpp [Analysis, IR] Use *Map::lookup (NFC) 2020-12-29 19:23:24 -08:00
PassTimingInfo.cpp [Time-report] Add a flag -ftime-report={per-pass,per-pass-run} to control the pass timing aggregation 2020-12-08 10:13:19 -08:00
PrintPasses.cpp [IR] Use llvm::is_contained (NFC) 2020-12-08 19:06:37 -08:00
ProfileSummary.cpp ProfileSummary.cpp - use auto const& iterator in for-range loop to avoid copies. NFCI. 2020-09-21 16:54:26 +01:00
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 [llvm] Use append_range (NFC) 2021-01-27 23:25:41 -08:00
Statepoint.cpp [Statepoint] Start the process of removing old interfaces 2020-06-03 20:00:52 -07:00
StructuralHash.cpp (Expensive) Check for Loop, SCC and Region pass return status 2020-08-28 07:56:35 +02:00
SymbolTableListTraitsImpl.h [IR] Lazily number instructions for local dominance queries 2020-02-18 14:44:24 -08:00
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 [IR] Simplify Use::swap. NFCI. 2020-07-21 12:15:12 +01:00
User.cpp Use AssumeInst in a few more places [nfc] 2021-04-06 13:18:53 -07:00
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