diff options
author | Marcus Shawcroft <marcus.shawcroft@arm.com> | 2013-05-31 15:40:09 +0000 |
---|---|---|
committer | Marcus Shawcroft <mshawcroft@gcc.gnu.org> | 2013-05-31 15:40:09 +0000 |
commit | 38e6c9a62bcc210685bf721fc45478c5a73acd45 (patch) | |
tree | 1b0ad790528b925945558ac483547bd2259ab507 /gcc | |
parent | 6a8b3087b223cb902c61002fc26e2e711d27f8f6 (diff) | |
download | gcc-38e6c9a62bcc210685bf721fc45478c5a73acd45.zip gcc-38e6c9a62bcc210685bf721fc45478c5a73acd45.tar.gz gcc-38e6c9a62bcc210685bf721fc45478c5a73acd45.tar.bz2 |
[AArch64] -mcmodel=tiny -fPIC use tiny absolute for non binds local.
From-SVN: r199544
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2e6d853f..d44fcdc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-05-31 Marcus Shawcroft <marcus.shawcroft@arm.com> + + * config/aarch64/aarch64.c (aarch64_classify_symbol): + Use SYMBOL_TINY_ABSOLUTE for AARCH64_CMODEL_TINY_PIC. + 2013-05-31 Tobias Burnus <burnus@net-b.de> PR middle-end/57073 diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 9c77888..a6859cc 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -5068,6 +5068,10 @@ aarch64_classify_symbol (rtx x, return SYMBOL_SMALL_ABSOLUTE; case AARCH64_CMODEL_TINY_PIC: + if (!aarch64_symbol_binds_local_p (x)) + return SYMBOL_SMALL_GOT; + return SYMBOL_TINY_ABSOLUTE; + case AARCH64_CMODEL_SMALL_PIC: if (!aarch64_symbol_binds_local_p (x)) return SYMBOL_SMALL_GOT; |