aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorRichard Sandiford <richard@codesourcery.com>2007-05-10 11:15:07 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2007-05-10 11:15:07 +0000
commit1910440ea6f09731f4c475f8556c101e8944340c (patch)
tree6dd6c8dc5926e50ceabcd4e33f3edafd37e19c3c /gcc/config.gcc
parent31b40480a461ba486b17ad808fd0266546fabddf (diff)
downloadgcc-1910440ea6f09731f4c475f8556c101e8944340c.zip
gcc-1910440ea6f09731f4c475f8556c101e8944340c.tar.gz
gcc-1910440ea6f09731f4c475f8556c101e8944340c.tar.bz2
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
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 31b10d4..a26f3dd 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -2370,6 +2370,10 @@ sparc-*-sysv4*)
extra_parts="crtbegin.o crtend.o"
use_fixproto=yes
;;
+sparc-wrs-vxworks)
+ tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h vx-common.h vxworks.h sparc/vxworks.h"
+ tmake_file="${tmake_file} sparc/t-vxworks"
+ ;;
sparc64-*-elf*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sp64-elf.h"
extra_options="${extra_options} sparc/little-endian.opt"