diff options
author | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-06 02:18:21 +0000 |
---|---|---|
committer | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-06 02:18:21 +0000 |
commit | 716b2c5a2b6f76743107e21661ece492f54505fb (patch) | |
tree | b033984f316da7a67bfe1fa08ed4aedef89780e8 /gcc/config/pa/pa-protos.h | |
parent | 11e66330dc317e0b2db05c43677ae3ac98a8c677 (diff) | |
download | gcc-716b2c5a2b6f76743107e21661ece492f54505fb.tar.gz |
* configure.ac (hppa*-*-linux*: Check for a TLS capable gas.
* configure: Regenerate.
* config/pa/pa-protos.h (tls_symbolic_operand): Declare.
(pa_tls_referenced_p): Declare.
* config/pa/pa.c (legitimize_pic_address): Reject TLS operands.
(gen_tls_tga, gen_tls_get_addr, hppa_tls_call): New.
(legitimize_tls_address): New.
(hppa_legitimize_address): Handle TLS addresses.
(pa_tls_symbol_ref_1, pa_tls_referenced_p): New.
(TARGET_CANNOT_FORCE_CONST_MEM): Define.
(emit_move_sequence): Handle TLS addresses.
(pa_encode_section_info): Call default handler to handle common
sections.
* config/pa/pa.h (PA_SYMBOL_REF_TLS_P): New.
(CONSTANT_ADDRESS_P): Reject TLS operands.
(TARGET_HAVE_TLS) [HAVE_AS_TLS]: Define.
* config/pa/pa.md (UNSPEC_TP, UNSPEC_TLSGD, UNSPEC_TLSLDM)
(UNSPEC_TLSLDO, UNSPEC_TLSLDBASE, UNSPEC_TLSIE)
(UNSPEC_TLSLE): Define new constants.
(tgd_load, tld_load, tld_offset_load, tp_load, tie_load, tle_load): New.
* config/pa/predicates.md (symbolic_operand): Reject TLS operands.
(tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand)
(tie_symbolic_operand, tle_symbolic_operand): New
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101648 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/pa/pa-protos.h')
-rw-r--r-- | gcc/config/pa/pa-protos.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/pa/pa-protos.h b/gcc/config/pa/pa-protos.h index 031087ba718..3bc4c309585 100644 --- a/gcc/config/pa/pa-protos.h +++ b/gcc/config/pa/pa-protos.h @@ -22,6 +22,7 @@ Boston, MA 02110-1301, USA. */ #ifdef RTX_CODE /* Prototype function used in various macros. */ extern int symbolic_operand (rtx, enum machine_mode); +extern int tls_symbolic_operand (rtx); /* Used in insn-*.c. */ extern int following_call (rtx); @@ -67,6 +68,7 @@ extern int adddi3_operand (rtx, enum machine_mode); extern int indexed_memory_operand (rtx, enum machine_mode); extern int symbolic_expression_p (rtx); extern int symbolic_memory_operand (rtx, enum machine_mode); +extern bool pa_tls_referenced_p (rtx); extern int pa_adjust_insn_length (rtx, int); extern int int11_operand (rtx, enum machine_mode); extern int reg_or_cint_move_operand (rtx, enum machine_mode); |