]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/tree-ssa-address.c
re PR tree-optimization/41857 (Loop optimizer breaks __ea pointers with -mea64)
authorUlrich Weigand <uweigand@de.ibm.com>
Mon, 2 Nov 2009 14:30:39 +0000 (14:30 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Mon, 2 Nov 2009 14:30:39 +0000 (14:30 +0000)
commitd7c0c068dd5d174f5183c2187499332198aea683
treef4baec2a8f727693a22c86047fb07064f6e86319
parent2b93f88dc57229e8e6d8fd6a868d3f54f8e7b43e
re PR tree-optimization/41857 (Loop optimizer breaks __ea pointers with -mea64)

gcc/
PR tree-optimization/41857
* tree-flow.h (rewrite_use_address): Add BASE_HINT argument.
* tree-ssa-loop-ivopts.c (rewrite_use_address): Pass base hint
to create_mem_ref.
* tree-ssa-address.c (move_hint_to_base): New function.
(most_expensive_mult_to_index): Add TYPE argument.  Use mode and
address space associated with TYPE.
(addr_to_parts): Add TYPE and BASE_HINT arguments.  Pass TYPE to
most_expensive_mult_to_index.  Call move_hint_to_base.
(create_mem_ref): Add BASE_HINT argument.  Pass BASE_HINT and
TYPE to addr_to_parts.

gcc/testsuite/
PR tree-optimization/41857
* gcc.target/spu/ea/pr41857.c: New file.

From-SVN: r153810
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/spu/ea/pr41857.c [new file with mode: 0644]
gcc/tree-flow.h
gcc/tree-ssa-address.c
gcc/tree-ssa-loop-ivopts.c