1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/lib/CodeGen/SelectionDAG
Ulrich Weigand de4e3874c1 [FPEnv] Fix chain handling for fpexcept.strict nodes
We need to ensure that fpexcept.strict nodes are not optimized away even if
the result is unused. To do that, we need to chain them into the block's
terminator nodes, like already done for PendingExcepts.

This patch adds two new lists of pending chains, PendingConstrainedFP and
PendingConstrainedFPStrict to hold constrained FP intrinsic nodes without
and with fpexcept.strict markers. This allows not only to solve the above
problem, but also to relax chains a bit further by no longer flushing all
FP nodes before a store or other memory access. (They are still flushed
before nodes with other side effects.)

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D72341
2020-01-13 14:38:49 +01:00
..
CMakeLists.txt [cmake] Explicitly mark libraries defined in lib/ as "Component Libraries" 2019-11-21 10:48:08 -08:00
DAGCombiner.cpp [DAGCombiner] reduce extract subvector of concat 2020-01-09 09:38:12 -05:00
FastISel.cpp Move tail call disabling code to target independent code 2020-01-03 11:27:41 -08:00
FunctionLoweringInfo.cpp [AArch64][SVE] Allocate locals that are scalable vectors. 2019-11-13 09:45:24 +00:00
InstrEmitter.cpp [FPEnv] Invert sense of MIFlag::FPExcept flag 2020-01-10 15:34:50 +01:00
InstrEmitter.h [SelectionDAG] Enhance the simplification of copyto from implicit-def. 2019-05-27 18:26:29 +00:00
LegalizeDAG.cpp [Intrinsic] Add fixed point division intrinsics. 2020-01-08 15:17:46 +01:00
LegalizeFloatTypes.cpp [X86] Adding fp128 support for strict fcmp 2020-01-08 12:59:31 +08:00
LegalizeIntegerTypes.cpp [Intrinsic] Add fixed point division intrinsics. 2020-01-08 15:17:46 +01:00
LegalizeTypes.cpp [LegalizeTypes] Remove manual worklist management from SoftenFloatRes_FP_EXTEND. 2019-12-10 22:33:31 -08:00
LegalizeTypes.h [Intrinsic] Add fixed point division intrinsics. 2020-01-08 15:17:46 +01:00
LegalizeTypesGeneric.cpp [NFC] Use SelectionDAG::getMemBasePlusOffset() instead of getNode(ISD::ADD) 2019-12-13 21:40:03 +00:00
LegalizeVectorOps.cpp [LegalizeVectorOps] Parallelize the lo/hi part of STRICT_UINT_TO_FLOAT legalization. 2020-01-11 17:50:30 -08:00
LegalizeVectorTypes.cpp [Intrinsic] Add fixed point division intrinsics. 2020-01-08 15:17:46 +01:00
LLVMBuild.txt
ResourcePriorityQueue.cpp Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
ScheduleDAGFast.cpp Finish moving TargetRegisterInfo::isVirtualRegister() and friends to llvm::Register as started by r367614. NFC 2019-08-01 23:27:28 +00:00
ScheduleDAGRRList.cpp [ScheduleDAG] When a node is cloned, add an edge between the nodes. 2019-10-04 19:51:40 +00:00
ScheduleDAGSDNodes.cpp Recommit "Add a heap alloc site marker field to the ExtraInfo in MachineInstrs" 2019-10-28 16:59:32 -07:00
ScheduleDAGSDNodes.h Prune Analysis includes from SelectionDAG.h 2019-10-19 01:07:48 +00:00
ScheduleDAGVLIW.cpp Prune Analysis includes from SelectionDAG.h 2019-10-19 01:07:48 +00:00
SDNodeDbgValue.h
SelectionDAG.cpp [SelectionDAG] ComputeKnownBits add getValidMinimumShiftAmountConstant() ISD::SHL support 2020-01-13 12:02:13 +00:00
SelectionDAGAddressAnalysis.cpp Prune a LegacyDivergenceAnalysis and MachineLoopInfo include each 2019-10-19 01:31:09 +00:00
SelectionDAGBuilder.cpp [FPEnv] Fix chain handling for fpexcept.strict nodes 2020-01-13 14:38:49 +01:00
SelectionDAGBuilder.h [FPEnv] Fix chain handling for fpexcept.strict nodes 2020-01-13 14:38:49 +01:00
SelectionDAGDumper.cpp [MIR] Fix cyclic dependency of MIR formatter 2020-01-10 11:18:12 +01:00
SelectionDAGISel.cpp DAG: Don't use unchecked dyn_cast 2020-01-09 17:37:52 -05:00
SelectionDAGPrinter.cpp
SelectionDAGTargetInfo.cpp
StatepointLowering.cpp [SVE][CodeGen] Scalable vector MVT size queries 2019-11-18 12:30:59 +00:00
StatepointLowering.h [FastISel] Fix crash for gc.relocate lowring 2019-04-05 05:41:08 +00:00
TargetLowering.cpp [TargetLowering][X86] Connect the chain from STRICT_FSETCC in TargetLowering::expandFP_TO_UINT and X86TargetLowering::FP_TO_INTHelper. 2020-01-11 17:50:20 -08:00