forked from OSchip/llvm-project
e1ff0cf2eb
Summary: Instead of forbidding such access functions completely, we verify that their base pointer has been hoisted and only assert in case the base pointer was not hoisted. I was trying for a little while to get a test case that ensures the assert is correctly fired in case of invariant load hoisting being disabled, but I could not find a good way to do so, as llvm-lit immediately aborts if a command yields a non-zero return value. As we do not generally test our asserts, not having a test case here seems OK. This resolves http://llvm.org/PR31494 Suggested-by: Michael Kruse <llvm@meinersbur.de> Reviewers: efriedma, jdoerfert, Meinersbur, gareevroman, sebpop, zinob, huihuiz, pollydev Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D28798 llvm-svn: 292213 |
||
---|---|---|
.. | ||
bad_alignment.ll | ||
bad_alignment___%for.cond---%for.end.jscop | ||
codegen_address_space.ll | ||
codegen_constant_offset.ll | ||
codegen_constant_offset___%for.cond---%for.end.jscop | ||
codegen_constant_offset___%for.cond---%for.end.jscop.transformed | ||
codegen_simple.ll | ||
codegen_simple___%for.cond---%for.end.jscop | ||
codegen_simple___%for.cond---%for.end.jscop.transformed | ||
codegen_simple_float.ll | ||
codegen_simple_md.ll | ||
codegen_simple_md___%for.cond---%for.end6.jscop | ||
codegen_simple_md___%for.cond---%for.end6.jscop.transformed+withconst | ||
codegen_simple_md___%for.cond---%for.end6.jscop.transformed+withoutconst | ||
codegen_simple_md_float.ll | ||
create_arrays.ll | ||
create_arrays___%bb9---%bb26.jscop | ||
create_arrays___%bb9---%bb26.jscop.transformed | ||
default_aligned_new_access_function.ll | ||
different_types.ll | ||
different_types___%bb2---%bb18.jscop | ||
generate-all.ll | ||
invariant_base_ptr.ll | ||
invariant_base_ptr___%loop---%exit.jscop | ||
map_scalar_access.ll | ||
map_scalar_access___%outer.for---%return.jscop | ||
map_scalar_access___%outer.for---%return.jscop.transformed | ||
multiple_types.ll | ||
multiple_types___%bb1---%bb22.jscop | ||
simple.ll | ||
simple___%for.cond---%for.end.jscop | ||
simple___%for.cond---%for.end.jscop.transformed | ||
simple___%for.cond---%for.end14.jscop | ||
simple___%for.cond---%for.end14.jscop.transformed | ||
simple___%for.cond4---%for.end14.jscop | ||
simple___%for.cond4---%for.end14.jscop.transformed | ||
simple_analyze.ll | ||
simple_stride___%for.cond---%for.end.jscop | ||
simple_stride_test.ll | ||
update_access_functions.ll | ||
update_access_functions___%loop1---%exit.jscop | ||
update_access_functions___%loop1---%exit.jscop.transformed |