* config/cris/cris-protos.h (cris_gotless_symbol, cris_got_symbol) (cris_symbol): Remove prototypes for removed functions. (cris_pic_symbol_type_of, cris_valid_pic_const) (cris_expand_pic_call_address): Prototypes for new functions. * config/cris/cris/cris.c (cris_pic_sympart_only): Remove unused variable. (cris_print_operand) <case 'v', 'P'>: Remove cases for unused modifiers. <case ':'>: Add case for new punctuation character. <case 'd'>: Temporarily set flag_pic = 2 instead of incorrectly emitting (extra) PIC modifier. <case UNSPEC>: Do not assert for PLT. (cris_initial_frame_pointer_offset, cris_simple_epilogue) (cris_expand_prologue, cris_expand_epilogue): Check for pic_offset_table_rtx usage instead of taking current_function_uses_pic_offset_table as the final word. (cris_rtx_costs, cris_address_cost, cris_side_effect_mode_ok): Remove flag_pic difference. (cris_valid_pic_const, cris_pic_symbol_type_of): New functions, the moral equivalents of... (cris_symbol, cris_gotless_symbol, cris_got_symbol): Remove functions. (cris_legitimate_pic_operand): Just call cris_valid_pic_const. (cris_handle_option): Mark ARG as unused. (cris_expand_pic_call_address): New worker function for "call", "call_value". (cris_asm_output_symbol_ref, cris_asm_output_label_ref): Do not output PIC constructs here. (cris_output_addr_const_extra): Changes for emitting PIC modifiers as symbol-specific modifers, not whole or part of operands. * config/cris/cris/cris.h (EXTRA_CONSTRAINT): Remove 'U' case. (EXTRA_CONSTRAINT_S): Changed semantics: allow only CONST-wrapped constants and flag_pic. (CONSTANT_INDEX_P): Adjust for new functions. (enum cris_pic_symbol_type): New helper type. (PRINT_OPERAND_PUNCT_VALID_P): Add ':'. * config/cris/cris/cris.md (CRIS_UNSPEC_GOTREL) (CRIS_UNSPEC_GOTREAD, CRIS_UNSPEC_PLTGOTREAD): New define_constants. ("movsi"): Emit actual instructions for GOT and relative access. ("*movsi_got_load"): New pattern to set up the register holding the GOT pointer. ("*movsi_internal"): Operand 1 is not a plain general_operand. Adjust FIXME for 'S'. <output for 'S' alternative>: Sanity-check UNSPEC types for PIC. Use "movs" for -fpic cases. ("addsi3"): Add alternative for 'S'; use adds.w when possible. ("uminsi3","*expanded_call_value"): Remove 'S' alternative. ("call", "call_value"): Just call cris_expand_pic_call_address for PIC addresses. ("*expanded_call_no_gotplt", "*expanded_call_value_no_gotplt"): Remove special pattern. ("*expanded_call_side", "*expanded_call_value_side"): New patterns. (gotplt-to-plt, gotplt-to-plt-side-call) (gotplt-to-plt-side-call-value, gotplt-to-plt-side): New peephole2:s. * config/cris/cris/predicates.md ("cris_general_operand_or_gotless_symbol"): Remove unused predicate. ("cris_general_operand_or_symbol"): Adjust for new functions. From-SVN: r101812
Name |
Last commit
|
Last update |
---|---|---|
INSTALL | Loading commit data... | |
boehm-gc | Loading commit data... | |
config | Loading commit data... | |
contrib | Loading commit data... | |
fastjar | 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... | |
libffi | Loading commit data... | |
libgfortran | 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... | |
.cvsignore | Loading commit data... | |
ABOUT-NLS | Loading commit data... | |
COPYING | Loading commit data... | |
COPYING.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.in | Loading commit data... | |
depcomp | Loading commit data... | |
install-sh | Loading commit data... | |
libtool.m4 | Loading commit data... | |
ltcf-c.sh | Loading commit data... | |
ltcf-cxx.sh | Loading commit data... | |
ltcf-gcj.sh | Loading commit data... | |
ltconfig | Loading commit data... | |
ltmain.sh | 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... |