rs6000.c (rs6000_legitimize_tls_address): Generate new tls_gd_* and tls_ld_* insns...
authorSteven Bosscher <stevenb.gcc@gmail.com>
Mon, 26 May 2008 23:37:05 +0000 (23:37 +0000)
committerKenneth Zadeck <zadeck@gcc.gnu.org>
Mon, 26 May 2008 23:37:05 +0000 (23:37 +0000)
commit02135bc1b421b4b0f67f139615f44c6b79ec14fd
tree4ad21d079581bfa6ce84ba8875710d3fa2213aae
parent273d8a65e2e9b220f067c490951d23a6b81610a6
rs6000.c (rs6000_legitimize_tls_address): Generate new tls_gd_* and tls_ld_* insns instead of an insn sequence.

2008-05-26  Steven Bosscher  <stevenb.gcc@gmail.com>

* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Generate
new tls_gd_* and tls_ld_* insns instead of an insn sequence.
* config/rs6000/rs6000.md (TLSmode, tls_abi_suffix, tls_insn_suffix,
tls_sysv_suffix): New mode and mode attribute iterators.
(tls_gd_32, tls_gd_64, tls_ld_32, tls_ld_64): Remove.
(lts_gd_aix*, tls_gd_sysv*, tls_ld_aix*, tls_ld_sysv*): New patterns.
(tls_dtprel_*, tls_dtprel_ha_*, tls_dtprel_lo_*, tls_got_dtprel_*,
tls_tprel_*, tls_tprel_ha_*, tls_tprel_lo_*, tls_got_tprel_*,
tls_tls_*): Merge 32 bit and 64 bit variants using aforementioned
iterators.

From-SVN: r135961
gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.md