1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/lib/Transforms
Florian Hahn b4dc084389 [SCCP] Use ValueLatticeElement instead of LatticeVal (NFCI)
This patch switches SCCP to use ValueLatticeElement for lattice values,
instead of the local LatticeVal, as first step to enable integer range support.

This patch does not make use of constant ranges for additional operations
and the only difference for now is that integer constants are represented by
single element ranges. To preserve the existing behavior, the following helpers
are used

* isConstant(LV): returns true when LV is either a constant or a constant range with a single element. This should return true in the same cases where LV.isConstant() returned true previously.
* getConstant(LV): returns a constant if LV is either a constant or a constant range with a single element. This should return a constant in the same cases as LV.getConstant() previously.
* getConstantInt(LV): same as getConstant, but additionally casted to ConstantInt.

Reviewers: davide, efriedma, mssimpso

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D60582
2020-03-12 12:03:06 +00:00
..
AggressiveInstCombine [ConstantFolding] Always return something from ConstantFoldConstant 2020-03-04 18:24:47 +01:00
CFGuard Add missing newlines at EOF; NFC 2020-02-12 15:57:25 +00:00
Coroutines [Coroutines] Optimized coroutine elision based on reachability 2020-03-05 14:43:50 +08:00
Hello
InstCombine [InstCombine] reduce demand-limited bool math to logic 2020-03-11 15:45:58 -04:00
Instrumentation Reland: [Coverage] Revise format to reduce binary size 2020-02-28 18:12:04 -08:00
IPO [WPD] Provide a way to prevent functions from being devirtualized 2020-03-09 14:05:15 +03:00
ObjCARC [ObjC][ARC] Don't remove autoreleaseRV/retainRV pairs if the call isn't 2020-03-09 13:21:38 -07:00
Scalar [SCCP] Use ValueLatticeElement instead of LatticeVal (NFCI) 2020-03-12 12:03:06 +00:00
Utils [LoopPeel] Turn incorrect assert into a check 2020-03-12 17:23:07 +07:00
Vectorize [TTI][ARM][MVE] Refine gather/scatter cost model 2020-03-11 10:23:41 +00:00
CMakeLists.txt
LLVMBuild.txt