gcc/ * config/sh/sh.h (PREFERRED_RELOAD_CLASS): Test PIC_ADDR_P instead of PIC_DIRECT_ADDR_P. (SECONDARY_INPUT_RELOAD_CLASS): Likewise. (IS_LITERAL_OR_SYMBOLIC_S16_P, IS_LITERAL_OR_SYMBOLIC_U16_P): Delete. (IS_NON_EXPLICIT_CONSTANT_P): Don't test PIC_OFFSET_P. (PIC_OFFSET_P): Rename to... (PCREL_SYMOFF_P): ...this. (PIC_DIRECT_ADDR_P): Delete. (MOVI_SHORI_BASE_OPERAND_P): Check PCREL_SYMOFF_P instead of PIC_OFFSET_P. (OUTPUT_ADDR_CONST_EXTRA): Don't require unspecs to have a single argument. Handle UNSPEC_EXTRACT_S16, UNSPEC_EXTRACT_U16, UNSPEC_SYMOFF and UNSPEC_PCREL_SYMOFF. * config/sh/sh.c (print_operand): Remove CONST handling. (unspec_caller_rtx_p): Rewrite to use split_const and check the operands of UNSPEC bases. (fixup_mova): Replace (unspec [(minus A B)] UNSPEC_PIC) with (unspec [A B] UNSPEC_SYMOFF). (nonpic_symbol_mentioned_p): Check for UNSPEC_SYMOFF and UNSPEC_PCREL_SYMOFF. (sh_secondary_reload): Test PIC_ADDR_P instead of PIC_DIRECT_ADDR_P. * config/sh/sh.md (UNSPEC_EXTRACT_S16): New unspec. (UNSPEC_EXTRACT_U16): Likewise. (UNSPEC_SYMOFF): Likewise. (UNSPEC_PCREL_SYMOFF): Likewise. (movsi_const): Use UNSPEC_EXTRACT_*16s to extract 16-bit portions of constants. (movsi_const_16bit): Likewise. (movdi_const, movdi_const_32bit, movdi_const_16bit): Likewise. (GOTaddr2picreg): Replace (unspec [(minus A (minus B pc))] UNSPEC_PIC) with (unspec [A B] UNSPEC_PCREL_SYMOFF). (sym_label2reg): Replace (minus (const (unspec [A] UNSPEC_PIC)) B) with (unspec [A B] UNSPEC_SYMOFF). (symPLT_label2reg): Replace (minus A (minus B pc)) with (unspec [A B] PCREL_UNSPEC_SYMOFF). * config/sh/constraints.md (Css): Check for an UNSPEC_EXTRACT_S16. (Csu): Likewise UNSPEC_EXTRACT_U16. (Csy): Test PIC_ADDR_P instead of PIC_DIRECT_ADDR_P. (Cpg): Update after changes to IS_NON_EXPLICIT_CONSTANT_P. From-SVN: r141046
Name |
Last commit
|
Last update |
---|---|---|
INSTALL | Loading commit data... | |
boehm-gc | Loading commit data... | |
config | Loading commit data... | |
contrib | Loading commit data... | |
fixincludes | Loading commit data... | |
gcc | Loading commit data... | |
gnattools | Loading commit data... | |
include | Loading commit data... | |
intl | Loading commit data... | |
libada | Loading commit data... | |
libcpp | Loading commit data... | |
libdecnumber | Loading commit data... | |
libffi | Loading commit data... | |
libgcc | Loading commit data... | |
libgfortran | Loading commit data... | |
libgomp | Loading commit data... | |
libiberty | Loading commit data... | |
libjava | Loading commit data... | |
libmudflap | Loading commit data... | |
libobjc | Loading commit data... | |
libssp | Loading commit data... | |
libstdc++-v3 | Loading commit data... | |
maintainer-scripts | Loading commit data... | |
zlib | Loading commit data... | |
ABOUT-NLS | Loading commit data... | |
COPYING | Loading commit data... | |
COPYING.LIB | Loading commit data... | |
COPYING3 | Loading commit data... | |
COPYING3.LIB | Loading commit data... | |
ChangeLog | Loading commit data... | |
ChangeLog.tree-ssa | Loading commit data... | |
MAINTAINERS | Loading commit data... | |
Makefile.def | Loading commit data... | |
Makefile.in | Loading commit data... | |
Makefile.tpl | Loading commit data... | |
README | Loading commit data... | |
README.SCO | Loading commit data... | |
compile | Loading commit data... | |
config-ml.in | Loading commit data... | |
config.guess | Loading commit data... | |
config.rpath | Loading commit data... | |
config.sub | Loading commit data... | |
configure | Loading commit data... | |
configure.ac | Loading commit data... | |
depcomp | Loading commit data... | |
install-sh | Loading commit data... | |
libtool-ldflags | Loading commit data... | |
libtool.m4 | Loading commit data... | |
ltgcc.m4 | Loading commit data... | |
ltmain.sh | Loading commit data... | |
ltoptions.m4 | Loading commit data... | |
ltsugar.m4 | Loading commit data... | |
ltversion.m4 | Loading commit data... | |
lt~obsolete.m4 | Loading commit data... | |
missing | Loading commit data... | |
mkdep | Loading commit data... | |
mkinstalldirs | Loading commit data... | |
move-if-change | Loading commit data... | |
symlink-tree | Loading commit data... | |
ylwrap | Loading commit data... |