llvm-project/polly/test/Isl/CodeGen
Eli Friedman fd229caa01 [polly] Fix SCEVLoopAddRecRewriter to avoid invalid AddRecs.
When we're remapping an AddRec, the AddRec constructed by a partial
rewrite might not make sense.  This triggers an assertion complaining
it's not loop-invariant.

Instead of constructing the partially rewritten AddRec, just skip
straight to calling evaluateAtIteration.

Testcase was automatically reduced using llvm-reduce, so it's a little
messy, but hopefully makes sense.

Differential Revision: https://reviews.llvm.org/D102959
2021-06-01 09:51:05 -07:00
..
LoopParallelMD [Polly][Codegen] Emit access group metadata. 2021-03-04 03:58:03 -06:00
MemAccess Reland "[ScalarEvolution] createSCEV(): recognize `udiv`/`urem` disguised as an `sdiv`/`srem`" 2020-07-06 18:00:22 +03:00
OpenMP [polly] Fix SCEVLoopAddRecRewriter to avoid invalid AddRecs. 2021-06-01 09:51:05 -07:00
RuntimeDebugBuilder [CodeGen] Print executed statement instances at runtime. 2018-04-25 19:43:49 +00:00
20100617.ll
20100622.ll
20100707.ll
20100707_2.ll
20100708.ll
20100708_2.ll
20100713.ll
20100713_2.ll
20100717.ll
20100718-DomInfo-2.ll
20100718-DomInfo.ll
20100720-MultipleConditions.ll
20100809-IndependentBlock.ll
20100811-ScalarDependencyBetweenBrAndCnd.ll
20101030-Overflow.ll
20101103-Overflow3.ll
20101103-signmissmatch.ll
20110226-Ignore-Dead-Code.ll
20110226-PHI-Node-removed.ll
20120316-InvalidCast.ll
20120403-RHS-type-mismatch.ll
20130211-getNumberOfIterations.ll
20130221.ll
20150328-SCEVExpanderIntroducesNewIV.ll Require "target datalayout" to be at the beginning of an IR file. 2020-04-20 11:55:49 -07:00
PHIInExit.ll
alias-check-multi-dim.ll
alias_metadata_too_many_arrays.ll
aliasing_different_base_and_access_type.ll
aliasing_different_pointer_types.ll
aliasing_multidimensional_access.ll
aliasing_parametric_simple_1.ll
aliasing_parametric_simple_2.ll
aliasing_struct_element.ll
alignment.ll
annotated_alias_scopes.ll
blas_sscal_simplified.ll
conflict-between-loop-invariant-code-hosting-and-escape-map-computation.ll
constant_condition.ll
create-conditional-scop.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
dead_invariant_load_instruction_referenced_by_parameter_1.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
dead_invariant_load_instruction_referenced_by_parameter_2.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
debug-intrinsics.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
dominance_problem_after_early_codegen_bailout.ll
empty_domain_in_context.ll [Polly] Update isl to isl-0.23-61-g24e8cd12. 2021-01-19 12:01:31 -06:00
entry_with_trivial_phi.ll
entry_with_trivial_phi_other_bb.ll
error-stmt-in-non-affine-region.ll
error_block_contains_invalid_memory_access.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
exprModDiv.ll
exprModDiv___%for.cond---%for.end.jscop [Polly] Track defined behavior for PHI predecessor computation. 2021-01-23 13:03:49 -06:00
exprModDiv___%for.cond---%for.end.jscop.pow2 [Polly] Track defined behavior for PHI predecessor computation. 2021-01-23 13:03:49 -06:00
fortran_array_runtime_size_generation.ll
getNumberOfIterations.ll [Polly][Codegen] Emit access group metadata. 2021-03-04 03:58:03 -06:00
hoisted_load_escapes_through_phi.ll
hoisting_1.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
hoisting_2.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
if-conditions-in-vector-code.ll
inner_scev_sdiv_1.ll
inner_scev_sdiv_2.ll
inner_scev_sdiv_3.ll
inner_scev_sdiv_in_lb.ll
inner_scev_sdiv_in_lb_invariant.ll
inner_scev_sdiv_in_rtc.ll
intrinsics_lifetime.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
intrinsics_misc.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
inv-load-lnt-crash-wrong-order-2.ll
inv-load-lnt-crash-wrong-order-3.ll
inv-load-lnt-crash-wrong-order.ll
invariant-load-dimension.ll
invariant-load-preload-base-pointer-origin-first.ll
invariant_cannot_handle_void.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
invariant_load.ll
invariant_load_address_space.ll
invariant_load_alias_metadata.ll Make IRBuilder automatically set alignment on load/store/alloca. 2020-04-13 13:43:14 -07:00
invariant_load_base_pointer.ll
invariant_load_base_pointer_conditional.ll
invariant_load_base_pointer_conditional_2.ll
invariant_load_canonicalize_array_baseptrs.ll
invariant_load_condition.ll
invariant_load_different_sized_types.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
invariant_load_escaping.ll
invariant_load_escaping_second_scop.ll
invariant_load_hoist_alignment.ll [IR] Let IRBuilder's CreateVectorSplat/CreateShuffleVector use poison as placeholder 2020-12-30 04:21:04 +09:00
invariant_load_in_non_affine_subregion.ll
invariant_load_loop_ub.ll
invariant_load_not_executed_but_in_parameters.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
invariant_load_outermost.ll
invariant_load_parameters_cyclic_dependence.ll [Polly] Track defined behavior for PHI predecessor computation. 2021-01-23 13:03:49 -06:00
invariant_load_ptr_ptr_noalias.ll
invariant_load_scalar_dep.ll
invariant_load_scalar_escape_alloca_sharing.ll
invariant_loads_from_struct_with_different_types_1.ll
invariant_loads_from_struct_with_different_types_2.ll
invariant_loads_ignore_parameter_bounds.ll
invariant_verify_function_failed.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
invariant_verify_function_failed_2.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
large-numbers-in-boundary-context.ll [Polly] Add XFAIL to large-numbers-in-boundary-context.ll 2017-10-16 15:12:39 +00:00
load_subset_with_context.ll [CodeGen] Allow undefined loads in statement instances outside context. 2018-04-10 01:20:51 +00:00
load_subset_with_context___%for.cond7.preheader---%for.cond33.preheader.jscop [CodeGen] Allow undefined loads in statement instances outside context. 2018-04-10 01:20:51 +00:00
load_subset_with_context___%for.cond7.preheader---%for.cond33.preheader.jscop.transformed [CodeGen] Allow undefined loads in statement instances outside context. 2018-04-10 01:20:51 +00:00
loop-invariant-load-type-mismatch.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
loop_with_condition.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
loop_with_condition_2.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
loop_with_condition_ineq.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
loop_with_condition_nested.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
loop_with_conditional_entry_edge_split_hard_case.ll
memcpy_annotations.ll [CodeGen] Fix noalias annotations for memcpy/memmove. 2017-12-22 17:44:53 +00:00
multidim-non-matching-typesize-2.ll Update polly tests to use -disable-basicaa to -disable-basic-aa 2020-06-27 15:56:01 +01:00
multidim-non-matching-typesize.ll Update polly tests to use -disable-basicaa to -disable-basic-aa 2020-06-27 15:56:01 +01:00
multidim_2d_parametric_array_static_loop_bounds.ll
multidim_alias_check.ll
multiple-codegens.ll [Polly] Preserve DetectionContext references. 2021-02-13 03:36:09 -06:00
multiple-scops-in-a-row.ll
multiple-types-invariant-load-2.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
multiple-types-invariant-load.ll
multiple_sai_fro_same_base_address.ll
new_multidim_access___%bb1---%bb17.jscop
no-overflow-tracking.ll
no_guard_bb.ll
non-affine-dominance-generated-entering.ll
non-affine-exit-node-dominance.ll
non-affine-phi-node-expansion-2.ll Make IRBuilder automatically set alignment on load/store/alloca. 2020-04-13 13:43:14 -07:00
non-affine-phi-node-expansion-3.ll
non-affine-phi-node-expansion-4.ll
non-affine-phi-node-expansion.ll
non-affine-region-exit-phi-incoming-synthesize-2.ll
non-affine-region-exit-phi-incoming-synthesize.ll
non-affine-region-implicit-store.ll
non-affine-region-phi-references-in-scop-value.ll
non-affine-subregion-dominance-reuse.ll
non-affine-switch.ll
non-affine-synthesized-in-branch.ll
non-affine-update.ll
non-affine-update___%bb1---%bb15.jscop
non-hoisted-load-needed-as-base-ptr.ll
non_affine_float_compare.ll
only_non_affine_error_region.ll
openmp_limit_threads.ll [CodeGen] LLVM OpenMP Backend. 2019-03-19 03:18:21 +00:00
out-of-scop-phi-node-use.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
param_div_div_div_2.ll [NFCI] Fix polly tests after b46c085d2b 2021-03-07 20:44:04 +03:00
partial_write_array.ll Make IRBuilder automatically set alignment on load/store/alloca. 2020-04-13 13:43:14 -07:00
partial_write_array___%for---%return.jscop
partial_write_array___%for---%return.jscop.transformed
partial_write_emptyset.ll
partial_write_emptyset___%for---%return.jscop
partial_write_emptyset___%for---%return.jscop.transformed
partial_write_full_write_that_appears_partial.ll
partial_write_impossible_restriction.ll Reland [SCEV] Improve modelling for (null) pointer constants 2021-03-13 16:05:34 +03:00
partial_write_impossible_restriction___%for.body344---%if.then.i.i1141.loopexit.jscop [CodeGen] Detect impossible partial write conditions more reliably. 2017-08-24 14:51:35 +00:00
partial_write_impossible_restriction___%for.body344---%if.then.i.i1141.loopexit.jscop.transformed [CodeGen] Detect impossible partial write conditions more reliably. 2017-08-24 14:51:35 +00:00
partial_write_in_region.ll
partial_write_in_region___%bb1---%bb12.jscop
partial_write_in_region___%bb1---%bb12.jscop.transformed
partial_write_in_region_with_loop.ll [test] Add wrap flags after D61934. 2019-06-17 19:17:07 +00:00
partial_write_in_region_with_loop___%bb1---%bb14.jscop
partial_write_in_region_with_loop___%bb1---%bb14.jscop.transformed
partial_write_mapped_scalar.ll [ScopBuilder] Make -polly-stmt-granularity=scalar-indep the default. 2018-02-03 06:59:47 +00:00
partial_write_mapped_scalar___%for---%return.jscop
partial_write_mapped_scalar___%for---%return.jscop.transformed
partial_write_mapped_scalar_subregion.ll
partial_write_mapped_scalar_subregion___%for---%return.jscop
partial_write_mapped_scalar_subregion___%for---%return.jscop.transformed
partial_write_mapped_vector.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
partial_write_mapped_vector___%for---%return.jscop
partial_write_mapped_vector___%for---%return.jscop.transformed
perf_monitoring.ll [PerfMonitor] Fix rdtscp callsites 2018-09-11 14:17:44 +00:00
perf_monitoring_cycles_per_scop.ll [PerfMonitor] Fix rdtscp callsites 2018-09-11 14:17:44 +00:00
perf_monitoring_trip_counts_per_scop.ll [PerfMonitor] Fix rdtscp callsites 2018-09-11 14:17:44 +00:00
phi-defined-before-scop.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
phi_after_error_block_outside_of_scop.ll [ScopDetect/Info] Look through PHIs that follow an error block 2017-09-24 09:25:30 +00:00
phi_condition_modeling_1.ll
phi_condition_modeling_2.ll
phi_conditional_simple_1.ll
phi_in_exit_early_lnt_failure_1.ll
phi_in_exit_early_lnt_failure_2.ll
phi_in_exit_early_lnt_failure_3.ll
phi_in_exit_early_lnt_failure_5.ll
phi_loop_carried_float.ll
phi_loop_carried_float_escape.ll
phi_scalar_simple_1.ll
phi_scalar_simple_2.ll
phi_with_multi_exiting_edges_2.ll
phi_with_one_exit_edge.ll
pointer-type-expressions-2.ll
pointer-type-expressions.ll
pointer-type-pointer-type-comparison.ll
pointer_rem.ll
pr25241.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
ptrtoint_as_parameter.ll [SCEV] Introduce SCEVPtrToIntExpr (PR46786) 2020-10-30 11:13:35 +03:00
read-only-scalars.ll
reduction.ll
reduction_2.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
reduction_simple_binary.ll
region-with-instructions.ll [BlockGenerator] Generate entry block of regions from instruction lists 2017-08-31 03:17:35 +00:00
region_exiting-domtree.ll
region_multiexit_partialwrite.ll [CodeGen] Fix order of PHINode and MA Write generation. 2019-05-20 22:31:09 +00:00
region_multiexit_partialwrite___%bb3---%bb19.jscop [CodeGen] Fix order of PHINode and MA Write generation. 2019-05-20 22:31:09 +00:00
region_multiexit_partialwrite___%bb3---%bb19.jscop.transformed [CodeGen] Fix order of PHINode and MA Write generation. 2019-05-20 22:31:09 +00:00
run-time-condition-with-scev-parameters.ll
run-time-condition.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
scalar-references-used-in-scop-compute.ll
scalar-store-from-same-bb.ll
scalar_codegen_crash.ll
scev-backedgetaken.ll [Polly] Fix test after D96534. 2021-02-19 12:49:29 -06:00
scev-division-invariant-load.ll
scev.ll
scev_expansion_in_nonaffine.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
scev_looking_through_bitcasts.ll Reland [SCEV] Improve modelling for (null) pointer constants 2021-03-13 16:05:34 +03:00
scop_expander_insert_point.ll [NFCI] Fix polly tests after b46c085d2b 2021-03-07 20:44:04 +03:00
scop_expander_segfault.ll
scop_never_executed_runtime_check_location.ll
select-base-pointer.ll Remove irrelevant references to legacy git repositories from 2019-01-15 16:18:52 +00:00
sequential_loops.ll
simple_loop_non_single_exit.ll [IslAst] Untangle IslAst lit-testcases from specifics of the legacy-PM 2017-07-25 15:07:42 +00:00
simple_loop_non_single_exit_2.ll [IslAst] Untangle IslAst lit-testcases from specifics of the legacy-PM 2017-07-25 15:07:42 +00:00
simple_non_single_entry.ll [IslAst] Untangle IslAst lit-testcases from specifics of the legacy-PM 2017-07-25 15:07:42 +00:00
simple_nonaffine_loop.ll
simple_vec_assign_scalar.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
simple_vec_assign_scalar_2.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
simple_vec_call.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
simple_vec_call_2.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
simple_vec_cast.ll [IR] Let IRBuilder's CreateVectorSplat/CreateShuffleVector use poison as placeholder 2020-12-30 04:21:04 +09:00
simple_vec_const.ll [IR] Let IRBuilder's CreateVectorSplat/CreateShuffleVector use poison as placeholder 2020-12-30 04:21:04 +09:00
simple_vec_large_width.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
simple_vec_ptr_ptr_ty.ll [IR] Let IRBuilder's CreateVectorSplat/CreateShuffleVector use poison as placeholder 2020-12-30 04:21:04 +09:00
simple_vec_stride_negative_one.ll
simple_vec_stride_one.ll
simple_vec_stride_x.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
simple_vec_strides_multidim.ll
simple_vec_two_stmts.ll [BasicAA] Replace -basicaa with -basic-aa in polly 2020-06-30 15:50:17 -07:00
single_do_loop_int_max_iterations.ll
single_do_loop_int_max_iterations___%do.body---%do.end.jscop
single_do_loop_int_param_iterations.ll
single_do_loop_ll_max_iterations.ll
single_do_loop_one_iteration.ll
single_do_loop_scev_replace.ll
single_loop.ll
single_loop_int_max_iterations.ll
single_loop_ll_max_iterations.ll
single_loop_one_iteration.ll
single_loop_param.ll
single_loop_zero_iterations.ll [IslAst] Untangle IslAst lit-testcases from specifics of the legacy-PM 2017-07-25 15:07:42 +00:00
split_edge_of_exit.ll
split_edges.ll
split_edges_2.ll
srem-in-other-bb.ll
stack-overflow-in-load-hoisting.ll
stmt_split_no_dependence.ll [ScopBuilder] Introduce metadata for splitting scop statement. 2017-08-30 10:11:06 +00:00
switch-in-non-affine-region.ll
synthesizable_phi_write_after_loop.ll
test-invalid-operands-for-select-2.ll
test-invalid-operands-for-select.ll
test.ll
two-loops-right-after-each-other-2.ll
two-scops-in-row-invalidate-scevs.ll
two-scops-in-row.ll
udiv_expansion_position.ll
uninitialized_scalar_memory.ll
unpredictable-loop-unsynthesizable.ll [ScopBuilder] Make -polly-stmt-granularity=scalar-indep the default. 2018-02-03 06:59:47 +00:00
variant_load_empty_domain.ll
whole-scop-non-affine-subregion.ll