Browse Source
Added initial support for the z8k * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files * configure.in, Makefile.in: modified to reflect above * ldlang.c (lang_check): when linking conflicting architectures, make the output file reflect at least one of the bad inputs.gdb-4_18-branch
7 changed files with 180 additions and 24 deletions
@ -0,0 +1,86 @@ |
|||
cat >em_${EMULATION_NAME}.c <<EOF |
|||
/* Copyright (C) 1991 Free Software Foundation, Inc. |
|||
|
|||
This file is part of GLD, the Gnu Linker. |
|||
|
|||
GLD is free software; you can redistribute it and/or modify |
|||
it under the terms of the GNU General Public License as published by |
|||
the Free Software Foundation; either version 1, or (at your option) |
|||
any later version. |
|||
|
|||
GLD is distributed in the hope that it will be useful, |
|||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
GNU General Public License for more details. |
|||
|
|||
You should have received a copy of the GNU General Public License |
|||
along with GLD; see the file COPYING. If not, write to |
|||
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ |
|||
|
|||
/* |
|||
Written by Steve Chamberlain steve@cygnus.com |
|||
|
|||
*/ |
|||
|
|||
#include "bfd.h" |
|||
#include "sysdep.h" |
|||
|
|||
#include "ld.h" |
|||
#include "config.h" |
|||
#include "ldemul.h" |
|||
#include "ldfile.h" |
|||
#include "ldmisc.h" |
|||
|
|||
extern boolean lang_float_flag; |
|||
|
|||
|
|||
extern enum bfd_architecture ldfile_output_architecture; |
|||
extern unsigned long ldfile_output_machine; |
|||
extern char *ldfile_output_machine_name; |
|||
|
|||
extern bfd *output_bfd; |
|||
|
|||
|
|||
|
|||
static void z8ksim_before_parse() |
|||
{ |
|||
ldfile_output_architecture = bfd_arch_z8k; |
|||
} |
|||
|
|||
static char *z8ksim_script = |
|||
#include "z8ksim.x" |
|||
; |
|||
static char *z8ksim_script_option_Ur = |
|||
#include "z8ksim.x" |
|||
; |
|||
static char *z8ksim_script_option_r = |
|||
#include "z8ksim.x" |
|||
; |
|||
|
|||
static char *z8ksim_get_script() |
|||
{ |
|||
extern ld_config_type config; |
|||
if (config.relocateable_output == true && |
|||
config.build_constructors == true) { |
|||
return z8ksim_script_option_Ur; |
|||
} |
|||
if (config.relocateable_output) { |
|||
return z8ksim_script_option_r; |
|||
} |
|||
|
|||
return z8ksim_script; |
|||
} |
|||
struct ld_emulation_xfer_struct ld_z8ksim_emulation = |
|||
{ |
|||
z8ksim_before_parse, |
|||
syslib_default, |
|||
hll_default, |
|||
after_parse_default, |
|||
after_allocation_default, |
|||
set_output_arch_default, |
|||
ldemul_default_target, |
|||
before_allocation_default, |
|||
z8ksim_get_script, |
|||
"z8ksim" |
|||
}; |
|||
EOF |
|||
@ -0,0 +1,26 @@ |
|||
cat <<EOF |
|||
OUTPUT_FORMAT("${OUTPUT_FORMAT}") |
|||
OUTPUT_ARCH(${ARCH}) |
|||
|
|||
|
|||
SECTIONS |
|||
{ |
|||
.text : |
|||
{ |
|||
*(.text) |
|||
*(.strings) |
|||
_etext = .; |
|||
*(.data) |
|||
_edata = .; |
|||
*(.bss) |
|||
*(COMMON) |
|||
_end = .; |
|||
|
|||
} |
|||
|
|||
} |
|||
EOF |
|||
|
|||
|
|||
|
|||
|
|||
@ -0,0 +1,8 @@ |
|||
EMULATION_NAME=z8ksim |
|||
SCRIPT_NAME=z8ksim |
|||
OUTPUT_FORMAT="coff-z8k" |
|||
TEXT_START_ADDR=0x0 |
|||
PAGE_SIZE=128 |
|||
ARCH=z8k |
|||
TEMPLATE_NAME=z8ksim |
|||
|
|||
Loading…
Reference in new issue