[PATCH][rs6000] mode-macroize TLS GOT referencing insns

Kenneth Zadeck zadeck@naturalbridge.com
Tue May 27 04:47:00 GMT 2008


David Edelsohn wrote:
>         * 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.
>
> Okay.
>
> Thanks!
> David
>
>   
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.

committed for stevenb as revision135961.

I am bootstrapping it now again, but steven has recently tested it and 
it is now in stage 2.

Kenny
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rs6000_TLS_rewrite.diff
Type: text/x-patch
Size: 15615 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20080527/2cd0a2b7/attachment.bin>


More information about the Gcc-patches mailing list