* doc/Makefile.in (TEXI2DVI): Set to just name of program.

(DVIPS): Set to dvips.
	(ps, as.ps, gasp.ps): New targets.
	(internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
 	and MAKEINFO env variables.
	(internals.ps): Use DVIPS macro.
	(clean): Remove core and backup files.
	(distclean): Remove temporary files from building internals.
	(clean-dvi): Ditto.
	* doc/internals.texi (Frags): Fix typo.
	(GAS processing): Ditto.
	(CPU backend): Ditto.
	* ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
	* mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
	* read.c: Remove ugly hack that dealt with config files not
	correctly defining TARGET_BYTES_BIG_ENDIAN.
	(target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
	* config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
	* config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
	* config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
	* config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
	* config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
	* config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
	with TARGET_BYTES_BIG_ENDIAN defined to 0.
	* config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
	and simplify.  Test value of TARGET_BYTES_BIG_ENDIAN, not just
	whether it is defined or not.
	* config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
	* config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
	and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
	whether it is defined or not.
start-sanitize-tic80
	* config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
	(TARGET_BYTES_BIG_ENDIAN): Define to 0.
end-sanitize-tic80
This commit is contained in:
Fred Fish 1997-02-14 01:04:19 +00:00
parent d83c8ac193
commit af16e4115d
13 changed files with 1222 additions and 393 deletions

View File

@ -1,3 +1,41 @@
Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
* doc/Makefile.in (TEXI2DVI): Set to just name of program.
(DVIPS): Set to dvips.
(ps, as.ps, gasp.ps): New targets.
(internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
and MAKEINFO env variables.
(internals.ps): Use DVIPS macro.
(clean): Remove core and backup files.
(distclean): Remove temporary files from building internals.
(clean-dvi): Ditto.
* doc/internals.texi (Frags): Fix typo.
(GAS processing): Ditto.
(CPU backend): Ditto.
* ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
* mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
* read.c: Remove ugly hack that dealt with config files not
correctly defining TARGET_BYTES_BIG_ENDIAN.
(target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
* config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
* config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
* config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
* config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
* config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
* config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
with TARGET_BYTES_BIG_ENDIAN defined to 0.
* config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
whether it is defined or not.
* config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
* config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
whether it is defined or not.
start-sanitize-tic80
* config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
(TARGET_BYTES_BIG_ENDIAN): Define to 0.
end-sanitize-tic80
Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
* write.c (write_relocs): Correct text in as_fatal error message,

View File

@ -1 +1 @@
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN=1

View File

@ -1 +1 @@
TDEFINES=-DTARGET_BYTES_LITTLE_ENDIAN
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN=0

View File

@ -1 +1 @@
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN=1

View File

@ -1 +1 @@
TDEFINES=-DTARGET_BYTES_LITTLE_ENDIAN
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN=0

View File

@ -1 +1 @@
TDEFINES=-DTARGET_BYTES_LITTLE_ENDIAN=1
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN=0

View File

@ -1 +1 @@
TDEFINES=-DTARGET_BYTES_LITTLE_ENDIAN=1 -DTARGET_SOLARIS_COMMENT
TDEFINES=-DTARGET_BYTES_BIG_ENDIAN=0 -DTARGET_SOLARIS_COMMENT

View File

@ -32,19 +32,15 @@
#define LITTLE_ENDIAN 1234
#define BIG_ENDIAN 4321
/* If neither TARGET_BYTES_BIG_ENDIAN nor TARGET_BYTES_LITTLE_ENDIAN
is specified, default to little endian. */
#ifndef TARGET_BYTES_BIG_ENDIAN
#ifndef TARGET_BYTES_LITTLE_ENDIAN
#define TARGET_BYTES_LITTLE_ENDIAN
#endif
#define TARGET_BYTES_BIG_ENDIAN 0
#endif
#ifdef OBJ_AOUT
#ifdef TE_RISCIX
#define TARGET_FORMAT "a.out-riscix"
#else
#ifdef TARGET_BYTES_BIG_ENDIAN
#if TARGET_BYTES_BIG_ENDIAN
#define TARGET_FORMAT "a.out-arm-big"
#else
#define TARGET_FORMAT "a.out-arm-little"
@ -57,11 +53,13 @@
#endif
#ifdef OBJ_COFF
#ifdef TE_PE
#define TC_FORCE_RELOCATION(x) ((x)->fx_r_type==11)
#define TARGET_FORMAT (target_big_endian ? "pe-arm-big" : "pe-arm-little")
/* Tell tc-arm.c to support runtime endian selection. */
#define ARM_BI_ENDIAN
#ifdef TE_PE
#define TC_FORCE_RELOCATION(x) ((x)->fx_r_type==BFD_RELOC_RVA)
#define TARGET_FORMAT (target_big_endian ? "pe-arm-big" : "pe-arm-little")
#else
#define TARGET_FORMAT (target_big_endian ? "coff-arm-big" : "coff-arm-little")
/* Tell tc-arm.c to support runtime endian selection. */
#endif
#endif
@ -73,6 +71,17 @@
#define obj_fix_adjustable(fixP) 0
#define TC_FIX_TYPE PTR
#define TC_INIT_FIX_DATA(FIXP) ((FIXP)->tc_fix_data = NULL)
#define TC_START_LABEL(C,STR) \
(c == ':' || (c == '/' && arm_data_in_code ()))
int arm_data_in_code PARAMS ((void));
#define tc_canonicalize_symbol_name(str) \
arm_canonicalize_symbol_name (str);
char *arm_canonicalize_symbol_name PARAMS ((char *));
#if 0 /* It isn't as simple as this */
#define tc_frob_symbol(sym,punt) \
{ if (S_IS_LOCAL (sym)) \
@ -95,6 +104,10 @@
#define md_operand(x)
#define TC_HANDLES_FX_DONE
#define MD_APPLY_FIX3
#define LOCAL_LABELS_FB 1
/* Use defaults for OBJ_AOUT. */

View File

@ -58,8 +58,7 @@ extern int mips_relax_frag PARAMS ((struct frag *, long));
#define DIFF_EXPR_OK
/* Default to big endian. */
#ifndef TARGET_BYTES_LITTLE_ENDIAN
#undef TARGET_BYTES_BIG_ENDIAN
#ifndef TARGET_BYTES_BIG_ENDIAN
#define TARGET_BYTES_BIG_ENDIAN 1
#endif

View File

@ -1,5 +1,5 @@
/* tc-ppc.h -- Header file for tc-ppc.c.
Copyright (C) 1994 Free Software Foundation, Inc.
Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support.
This file is part of GAS, the GNU Assembler.
@ -15,8 +15,9 @@
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GAS; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
along with GAS; see the file COPYING. If not, write to the Free
Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
#define TC_PPC
@ -88,12 +89,10 @@ extern int target_big_endian;
/* Set the endianness we are using. Default to big endian. */
#ifndef TARGET_BYTES_BIG_ENDIAN
#ifndef TARGET_BYTES_LITTLE_ENDIAN
#define TARGET_BYTES_BIG_ENDIAN 1
#endif
#endif
#ifdef TARGET_BYTES_BIG_ENDIAN
#if TARGET_BYTES_BIG_ENDIAN
#define PPC_BIG_ENDIAN 1
#else
#define PPC_BIG_ENDIAN 0
@ -174,6 +173,10 @@ extern void ppc_frob_label PARAMS ((struct symbol *));
#define tc_fix_adjustable(fixp) ppc_fix_adjustable (fixp)
extern int ppc_fix_adjustable PARAMS ((struct fix *));
/* A relocation from one csect to another must be kept. */
#define TC_FORCE_RELOCATION(FIXP) ppc_force_relocation (FIXP)
extern int ppc_force_relocation PARAMS ((struct fix *));
/* We need to set the section VMA. */
#define tc_frob_section(sec) ppc_frob_section (sec)
extern void ppc_frob_section PARAMS ((asection *));
@ -217,6 +220,22 @@ extern int ppc_section_flags PARAMS ((int, int, int));
#define md_elf_section_type(PTR_STR) ppc_section_type (PTR_STR)
#define md_elf_section_word(PTR_STR) ppc_section_word (PTR_STR)
#define md_elf_section_flags(FLAGS, ATTR, TYPE) ppc_section_flags (FLAGS, ATTR, TYPE)
/* Add extra PPC sections -- Note, for now, make .sbss2 and .PPC.EMB.sbss0 a
normal section, and not a bss section so that the linker doesn't crater
when trying to make more than 2 sections. */
#define ELF_TC_SPECIAL_SECTIONS \
{ ".tags", SHT_ORDERED, SHF_ALLOC }, \
{ ".sdata", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE }, \
{ ".sbss", SHT_NOBITS, SHF_ALLOC + SHF_WRITE }, \
{ ".sdata2", SHT_PROGBITS, SHF_ALLOC }, \
{ ".sbss2", SHT_PROGBITS, SHF_ALLOC }, \
{ ".PPC.EMB.sdata0", SHT_PROGBITS, SHF_ALLOC }, \
{ ".PPC.EMB.sbss0", SHT_PROGBITS, SHF_ALLOC },
#define tc_comment_chars ppc_comment_chars
extern const char *ppc_comment_chars;
#endif /* OBJ_ELF */
/* call md_apply_fix3 with segment instead of md_apply_fix */
@ -225,5 +244,8 @@ extern int ppc_section_flags PARAMS ((int, int, int));
/* call md_pcrel_from_section, not md_pcrel_from */
#define MD_PCREL_FROM_SECTION(FIXP, SEC) md_pcrel_from_section(FIXP, SEC)
#define md_parse_name(name, exp) ppc_parse_name (name, exp)
extern int ppc_parse_name PARAMS ((const char *, struct expressionS *));
#define md_operand(x)

View File

@ -21,8 +21,11 @@
#define TC_TIC80
#define TARGET_ARCH bfd_arch_tic80
#define TARGET_FORMAT "coff-tic80"
#define BFD_ARCH TARGET_ARCH
#define TARGET_BYTES_BIG_ENDIAN 0
#define md_number_to_chars number_to_chars_littleendian
/* We have no special operand handling. */

File diff suppressed because it is too large Load Diff

View File

@ -43,13 +43,13 @@ Else If "{target_canonical}" =~ /m68k-\Option-x-coff/
Else If "{target_canonical}" =~ /mips-idt-ecoff/
Set bfd_gas yes
Set TDEFINES '-d TARGET_BYTES_BIG_ENDIAN'
Set TDEFINES '-d TARGET_BYTES_BIG_ENDIAN=1'
Else If "{target_canonical}" =~ /mips-\Option-x-\Option-x/
# Assume other OSes etc use ELF
Set obj_format "elf"
Set bfd_gas yes
Set TDEFINES '-d TARGET_BYTES_BIG_ENDIAN'
Set TDEFINES '-d TARGET_BYTES_BIG_ENDIAN=1'
forward-include "{srcroot}"bfd:elf-bfd.h 'bfd/elf-bfd.h'
Else If "{target_canonical}" =~ /sh-\Option-x-hms/