diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2010-12-19 12:19:12 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2010-12-19 12:19:12 +0000 |
commit | a6fed83ffa62aa01d7add21c9d2b36ba12efb731 (patch) | |
tree | 76cc3ddd8315fc60ee1aa286b0d55ec81acc588c /libobjc/objc | |
parent | 2f8bed161326b1ffd27a3614ac8d8391a5eb7dd0 (diff) | |
download | gcc-a6fed83ffa62aa01d7add21c9d2b36ba12efb731.zip gcc-a6fed83ffa62aa01d7add21c9d2b36ba12efb731.tar.gz gcc-a6fed83ffa62aa01d7add21c9d2b36ba12efb731.tar.bz2 |
re PR target/46729 (32-bit 30_threads execution tests fail on Solaris 10/SPARC with Sun as)
PR target/46729
* config/sparc/sparc.h (GLOBAL_OFFSET_TABLE_REGNUM): New macro.
(PIC_OFFSET_TABLE_REGNUM): Rewrite in terms of above macro.
* config/sparc/sparc.c (pic_helper_needed): Delete.
(global_offset_table): Likewise.
(pic_helper_symbol): Rename to...
(got_helper_rtx): ...this.
(global_offset_table_rtx): New global variable.
(sparc_got_symbol): Likewise.
(sparc_got): New static function.
(check_pic): Use local variable and call sparc_got.
(sparc_tls_symbol): Initialize to NULL_RTX.
(sparc_tls_got): In non-PIC mode, reload the GOT register for Sun TLS
and 32-bit ABI and copy the GOT symbol to a new register otherwise.
(get_pc_thunk_name): Rename local variable.
(gen_load_pcrel_sym): New wrapper around load_pcrel_sym{si,di}.
(load_pic_register): Rename to...
(load_got_register): ...this. Adjust and call gen_load_pcrel_sym.
(sparc_expand_prologue): Do not test flag_pic.
(sparc_output_mi_thunk): Use pic_offset_table_rtx directly.
(sparc_file_end): Test got_helper_rtx instead of pic_helper_needed.
Rename local variable and do not call get_pc_thunk_name again.
* config/sparc/sparc.md (load_pcrel_sym): Add operand #3.
From-SVN: r168049
Diffstat (limited to 'libobjc/objc')
0 files changed, 0 insertions, 0 deletions