[Patch AArch64 63304] Fix issue with global state.
authorRamana Radhakrishnan <ramana@gcc.gnu.org>
Thu, 22 Oct 2015 04:26:50 +0000 (04:26 +0000)
committerRamana Radhakrishnan <ramana@gcc.gnu.org>
Thu, 22 Oct 2015 04:26:50 +0000 (04:26 +0000)
commit1be3429587ab561a658cf1e90fcf00a7a51a645a
treea72028ff5f01d94492c05b6feb2d35b23d572e8d
parent01f32f32aab2a474cbed3836e0d84a9fd943b69a
[Patch AArch64 63304] Fix issue with global state.

Jiong pointed out privately that there was a thinko
in the way in which the global state was being
set and reset. I don't like adding such
global state but ....

2015-10-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        PR target/63304
        * config/aarch64/aarch64.c (aarch64_nopcrelative_literal_loads): New.
        (aarch64_expand_mov_immediate): Use aarch64_nopcrelative_literal_loads.
        (aarch64_classify_address): Likewise.
        (aarch64_secondary_reload): Likewise.
        (aarch64_override_options_after_change_1): Adjust.
        * config/aarch64/aarch64.md (aarch64_reload_movcp<GPF_TF:mode><P:mode>):
        Use aarch64_nopcrelative_literal_loads.
        (aarch64_reload_movcp<VALL:mode><P:mode>): Likewise.
        * config/aarch64/aarch64-protos.h (aarch64_nopcrelative_literal_loads):
Declare

2015-10-22  Jiong Wang  <jiong.wang@arm.com>
            Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        PR target/63304
        * gcc.target/aarch64/pr63304_1.c: New test.

From-SVN: r229160
gcc/ChangeLog
gcc/config/aarch64/aarch64-protos.h
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/pr63304_1.c [new file with mode: 0644]