llvm-project/llvm/test/Transforms/LoopStrengthReduce/X86
Roman Lebedev 78b8ce40ef
Reland [SCEV] Improve modelling for (null) pointer constants
This reverts commit 329aeb5db4,
and relands commit 61f006ac65.

This is a continuation of D89456.

As it was suggested there, now that SCEV models `PtrToInt`,
we can try to improve SCEV's pointer handling.
In particular, i believe, i will need this in the future
to further fix `SCEVAddExpr`operation type handling.

This removes special handling of `ConstantPointerNull`
from `ScalarEvolution::createSCEV()`, and add constant folding
into `ScalarEvolution::getPtrToIntExpr()`.
This way, `null` constants stay as such in SCEV's,
but gracefully become zero integers when asked.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D98147
2021-03-13 16:05:34 +03:00
..
2008-08-14-ShadowIV.ll
2009-11-10-LSRCrash.ll
2011-07-20-DoubleIV.ll
2011-11-29-postincphi.ll
2011-12-04-loserreg.ll
2012-01-13-phielim.ll [LSR][X86] Replace -march with -mtriples 2020-12-02 17:05:15 +00:00
bin_power.ll
canonical-2.ll
canonical.ll
eh-insertion-point-2.ll [LSR] Don't try to fixup uses in 'EH pad' instructions 2021-03-13 16:05:34 +03:00
eh-insertion-point.ll Reland [SCEV] Improve modelling for (null) pointer constants 2021-03-13 16:05:34 +03:00
expander-crashes.ll [SCEV] SCEVPtrToIntExpr simplifications 2020-10-30 11:13:35 +03:00
expander-reused-value-insert-point.ll
incorrect-offset-scaling.ll
ivchain-X86.ll
ivchain-stress-X86.ll [LSR][X86] Replace -march with -mtriples 2020-12-02 17:05:15 +00:00
lit.local.cfg
lsr-expand-quadratic.ll
lsr-filtering-scaledreg.ll
lsr-insns-1.ll [FileCheck] Enforce --allow-unused-prefixes=false for llvm/test/Transforms 2020-12-09 08:51:38 -08:00
lsr-insns-2.ll [LSR][X86] Replace -march with -mtriples 2020-12-02 17:05:15 +00:00
lsr-overflow.ll
macro-fuse-cmp.ll
nested-loop.ll
no_superflous_induction_vars.ll
pr17473.ll
pr28719.ll
pr40514.ll
pr46943.ll [LSR] Drop potentially invalid nowrap flags when switching to post-inc IV (PR46943) 2021-01-25 23:13:48 +01:00
pr47776-do-not-apply-info-from-guards-to-addrecs.ll [SCEV] Do not apply info from loop guards in AddRecs. 2020-10-09 14:47:26 +01:00
sibling-loops.ll [LSR] Drop potentially invalid nowrap flags when switching to post-inc IV (PR46943) 2021-01-25 23:13:48 +01:00