summaryrefslogtreecommitdiff
path: root/gcc/config/pa/pa-protos.h
diff options
context:
space:
mode:
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2005-07-06 02:18:21 +0000
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2005-07-06 02:18:21 +0000
commit716b2c5a2b6f76743107e21661ece492f54505fb (patch)
treeb033984f316da7a67bfe1fa08ed4aedef89780e8 /gcc/config/pa/pa-protos.h
parent11e66330dc317e0b2db05c43677ae3ac98a8c677 (diff)
downloadgcc-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.h2
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);