config.gcc (sparc-wrs-vxworks): New target.
authorRichard Sandiford <richard@codesourcery.com>
Thu, 10 May 2007 11:15:07 +0000 (11:15 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Thu, 10 May 2007 11:15:07 +0000 (11:15 +0000)
commit1910440ea6f09731f4c475f8556c101e8944340c
tree6dd6c8dc5926e50ceabcd4e33f3edafd37e19c3c
parent31b40480a461ba486b17ad808fd0266546fabddf
config.gcc (sparc-wrs-vxworks): New target.

gcc/
* config.gcc (sparc-wrs-vxworks): New target.
* config/sparc/vxworks.h, config/sparc/t-vxworks: New files.
* config/sparc/sparc-protos.h (sparc_emit_call_insn): Declare.
* config/sparc/sparc.h: Include vxworks-dummy.h.
(PRINT_OPERAND_ADDRESS): Extend SYMBOL_REF handling to
include LABEL_REFs too.
* config/sparc/sparc.c (sparc_expand_move): Don't assume that
_GLOBAL_OFFSET_TABLE_ - label_ref is a link-time constant on
VxWorks.
(legitimize_pic_address): Handle LABEL_REFs like SYMBOL_REFs
on VxWorks.
(load_pic_register): Use gen_vxworks_load_got for VxWorks.
(sparc_emit_call_insn): New function.
(sparc_function_ok_for_sibcall): Restrict sibcalls to locally-binding
functions when generating VxWorks PIC.
* config/sparc/sparc.md (vxworks_load_got): New pattern.
(call, call_value): Use sparc_emit_call_insn instead of
emit_call_insn.

libgcc/
* config.host (sparc-wrs-vxworks): New target.

From-SVN: r124595
gcc/ChangeLog
gcc/config.gcc
gcc/config/sparc/sparc-protos.h
gcc/config/sparc/sparc.c
gcc/config/sparc/sparc.h
gcc/config/sparc/sparc.md
gcc/config/sparc/t-vxworks [new file with mode: 0644]
gcc/config/sparc/vxworks.h [new file with mode: 0644]
libgcc/ChangeLog
libgcc/config.host