diff options
author | Marcus Shawcroft <marcus.shawcroft@arm.com> | 2014-02-06 10:17:18 +0000 |
---|---|---|
committer | Marcus Shawcroft <mshawcroft@gcc.gnu.org> | 2014-02-06 10:17:18 +0000 |
commit | 4a985a3778e38b8a9fc169f238069303a047c236 (patch) | |
tree | a64e00f3ae804ac12d8c364f39731a1ce0e62046 /gcc | |
parent | 8c7ff9a02dd04ebb5907bf972d532bff88045202 (diff) | |
download | gcc-4a985a3778e38b8a9fc169f238069303a047c236.zip gcc-4a985a3778e38b8a9fc169f238069303a047c236.tar.gz gcc-4a985a3778e38b8a9fc169f238069303a047c236.tar.bz2 |
[AArch64] Fix SYMBOL_REF symbol classification.
The symbol classification logic in correctly classifies all
SYMBOL_REF's as SYMBOL_FORCE_TO_MEM, the intention of the code is to
catch only the large memory model case.
From-SVN: r207544
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.c | 5 |
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a947212..078192d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2014-02-06 Marcus Shawcroft <marcus.shawcroft@arm.com> + + * config/aarch64/aarch64.c (aarch64_classify_symbol): Fix logic + for SYMBOL_REF in large memory model. + 2014-02-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * config/aarch64/aarch64-cores.def (cortex-a53): Specify CRC32 diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index d3c5cbc..16c51a8 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -5400,9 +5400,8 @@ aarch64_classify_symbol (rtx x, if (GET_CODE (x) == SYMBOL_REF) { - if (aarch64_cmodel == AARCH64_CMODEL_LARGE - || CONSTANT_POOL_ADDRESS_P (x)) - return SYMBOL_FORCE_TO_MEM; + if (aarch64_cmodel == AARCH64_CMODEL_LARGE) + return SYMBOL_FORCE_TO_MEM; if (aarch64_tls_symbol_p (x)) return aarch64_classify_tls_symbol (x); |