* config/sh/sh.c (TARGET_HAVE_TLS): Conditionally define. (prepare_move_operands): Handle TLS operands. (tls_symbolic_operand): New. (nonpic_symbol_mentioned_p): Handle TLS UNSPECs. (legitimize_pic_address): Do nothing for the TLS symbol. (sh_encode_section_info): Handle TLS case. (sh_strip_name_encoding): Drop TLS encoding. * config/sh/sh-protos.h (tls_symbolic_operand): Add prototype. * config/sh/sh.h (SH_TLS_ENCODING): Define. (TLS_SYMNAME_P, STRIP_TLS_ENCODING): Likewise. (ASM_OUTPUT_LABELREF): Drop TLS encoding. (OUTPUT_ADDR_CONST_EXTRA): Handle TLS UNSPECs. * config/sh/sh.md: Define TLS UNSPEC constants. (type): Add tls_load. ("tls_global_dynamic", "tls_local_dynamic"): New insns. ("sym2DTPOFF", "symDTPOFF2reg", "sym2GOTTPOFF"): New expanders. ("tls_initial_exec"): New insn. ("sym2TPOFF", "symTPOFF2reg"): New expanders. ("load_gbr"): New insn. * configure.in (HAVE_AS_TLS): Add sh-*-* and sh[34]*-*-* cases. * configure: Regenerate. From-SVN: r63353
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
coff.h | Loading commit data... | |
crt1.asm | Loading commit data... | |
crti.asm | Loading commit data... | |
crtn.asm | Loading commit data... | |
elf.h | Loading commit data... | |
embed-elf.h | Loading commit data... | |
lib1funcs.asm | Loading commit data... | |
libgcc-glibc.ver | Loading commit data... | |
linux.h | Loading commit data... | |
little.h | Loading commit data... | |
netbsd-elf.h | Loading commit data... | |
rtems.h | Loading commit data... | |
rtemself.h | Loading commit data... | |
sh-protos.h | Loading commit data... | |
sh.c | Loading commit data... | |
sh.h | Loading commit data... | |
sh.md | Loading commit data... | |
sh64.h | Loading commit data... | |
shmedia.h | Loading commit data... | |
sshmedia.h | Loading commit data... | |
t-be | Loading commit data... | |
t-elf | Loading commit data... | |
t-le | Loading commit data... | |
t-linux | Loading commit data... | |
t-monolib | Loading commit data... | |
t-netbsd | Loading commit data... | |
t-netbsd-sh5 | Loading commit data... | |
t-netbsd-sh5-64 | Loading commit data... | |
t-sh | Loading commit data... | |
t-sh64 | Loading commit data... | |
ushmedia.h | Loading commit data... |