diff options
author | Randolph Chung <tausq@debian.org> | 2005-07-06 02:18:21 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2005-07-06 02:18:21 +0000 |
commit | 51076f9604483f4f1b4dc16a90871384c1fd15cc (patch) | |
tree | b033984f316da7a67bfe1fa08ed4aedef89780e8 /gcc/configure | |
parent | f04f1d2c6305eea31102357d0b2aa7ab95ece2fb (diff) | |
download | gcc-51076f9604483f4f1b4dc16a90871384c1fd15cc.zip gcc-51076f9604483f4f1b4dc16a90871384c1fd15cc.tar.gz gcc-51076f9604483f4f1b4dc16a90871384c1fd15cc.tar.bz2 |
configure.ac (hppa*-*-linux*): Check for a TLS capable gas.
* 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
From-SVN: r101648
Diffstat (limited to 'gcc/configure')
-rwxr-xr-x | gcc/configure | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc/configure b/gcc/configure index 79ed496b..3611276 100755 --- a/gcc/configure +++ b/gcc/configure @@ -14015,6 +14015,35 @@ x: .long 25 tls_first_major=2 tls_first_minor=14 ;; + hppa*-*-linux*) + conftest_s=' +t1: .reg %r20 +t2: .reg %r21 +gp: .reg %r19 + .section ".tdata","awT",@progbits +foo: .long 25 + .text + .align 4 + addil LT%foo-$tls_gdidx$,gp + ldo RT%foo-$tls_gdidx$(%r1),%arg0 + b __tls_get_addr + nop + addil LT%foo-$tls_ldidx$,gp + b __tls_get_addr + ldo RT%foo-$tls_ldidx$(%r1),%arg0 + addil LR%foo-$tls_dtpoff$,%ret0 + ldo RR%foo-$tls_dtpoff$(%r1),%t1 + mfctl %cr27,%t1 + addil LT%foo-$tls_ieoff$,gp + ldw RT%foo-$tls_ieoff$(%r1),%t2 + add %t1,%t2,%t3 + mfctl %cr27,%t1 + addil LR%foo-$tls_leoff$,%t1 + ldo RR%foo-$tls_leoff$(%r1),%t2' + tls_first_major=2 + tls_first_minor=15 + tls_as_opt=--fatal-warnings + ;; i[34567]86-*-*) conftest_s=' .section ".tdata","awT",@progbits |