hppa: Modify TLS patterns to provide both 32 and 64-bit support.
commit96d1e233f2f06605628afea29797d1e6f1c69c14
authorJohn David Anglin <danglin@gcc.gnu.org>
Sat, 15 Jul 2023 17:20:24 +0000 (15 17:20 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Sat, 15 Jul 2023 17:20:24 +0000 (15 17:20 +0000)
tree120763f832c8035dfa5baccd8695103851451dc1
parent0de651db45c758f54e9ed917069795a3835499de
hppa: Modify TLS patterns to provide both 32 and 64-bit support.

2023-07-15  John David Anglin  <danglin@gcc.gnu.org>

gcc/ChangeLog:

* config/pa/pa.md: Define constants R1_REGNUM, R19_REGNUM and
R27_REGNUM.
(tgd_load): Restrict to !TARGET_64BIT. Use register constants.
(tld_load): Likewise.
(tgd_load_pic): Change to expander.
(tld_load_pic, tld_offset_load, tp_load): Likewise.
(tie_load_pic, tle_load): Likewise.
(tgd_load_picsi, tgd_load_picdi): New.
(tld_load_picsi, tld_load_picdi): New.
(tld_offset_load<P:mode>): New.
(tp_load<P:mode>): New.
(tie_load_picsi, tie_load_picdi): New.
(tle_load<P:mode>): New.
gcc/config/pa/pa.md