Bulk patch from Linas.
From-SVN: r28178
This commit is contained in:
parent
14eee79459
commit
92d6db668f
15 changed files with 3730 additions and 989 deletions
|
@ -1,3 +1,72 @@
|
|||
1999-07-19 Linas Vepstas <linas@linas.org>
|
||||
|
||||
* config/i370/README: New file.
|
||||
* config/i370/linux.h: New file.
|
||||
* config/i370/mvs.h: New file.
|
||||
* config/i370/oe.h: New file.
|
||||
* config/i370/t-linux: New file.
|
||||
* config/i370/t-mvs: New file.
|
||||
* config/i370/t-oe: New file.
|
||||
* config/i370/x-oe: New file.
|
||||
* config/i370/xm-linux.h: New file.
|
||||
* config/i370/xm-mvs.h: New file.
|
||||
* config/i370/xm-oe.h: New file.
|
||||
|
||||
* i370.c (label_node_t): Add first_ref_page, label_addr,
|
||||
label_first_ref, label_last_ref members.
|
||||
(mvs_need_base_reload): Renamed from mvs_label_emitted.
|
||||
(MAX_MVS_LABEL_SIZE): Define.
|
||||
(MAX_LONG_LABEL_SIZE): Define.
|
||||
(alias_node_t, alias_anchor, alias_number): New.
|
||||
(mvs_function_table): Reorder for EBCDIC.
|
||||
(ascebc, ebcasc): Unconditionally define.
|
||||
(i370_branch_dest, i370_branch_length): New functions.
|
||||
(i370_short_branch, i370_label_scan): New functions.
|
||||
(mvs_get_label): Renamed from mvs_add_label. Search for
|
||||
an existing label before creating a new one.
|
||||
(mvs_add_label): New function.
|
||||
(mvs_get_label_page): New function.
|
||||
(mvs_free_label_list): Renamed from mvs_free_label. Iterate
|
||||
over the entire list.
|
||||
(mvs_check_page) [TARGET_HLASM]: Use BASR not BALR.
|
||||
(mvs_check_page) [TARGET_ELF_ABI]: New function.
|
||||
(mvs_add_alias, mvs_need_alias): New functions.
|
||||
(mvs_get_alias, mvs_check_alias): New functions.
|
||||
(handle_pragma): New function.
|
||||
(mvs_function_check): New function.
|
||||
(unsigned_jump_follows_p): Search harder.
|
||||
(i370_function_prolog) [TARGET_HLASM]: Handle LE370. Scan labels.
|
||||
(i370_function_prolog) [TARGET_ELF_ABI]: New function.
|
||||
* i370.h (TARGET_VERSION): Delete.
|
||||
(CPP_SPEC, CPP_PREDEFINES): Delete.
|
||||
(mvs_label_emitted): Delete.
|
||||
(TARGET_EBCDIC): Delete.
|
||||
(MAP_CHARACTER): Define only if TARGET_EBCDIC.
|
||||
(HANDLE_PRAGMA): Define.
|
||||
(HARD_REGNO_NREGS): Handle complex modes.
|
||||
(HARD_REGNO_MODE_OK): Likewise.
|
||||
(CLASS_MAX_NREGS): Likewise.
|
||||
(RET_REG): Likewise.
|
||||
(EXTRA_CONSTRAINT): Define.
|
||||
(RETURN_IN_MEMORY): True for DImode.
|
||||
(TRAMPOLINE_TEMPLATE): Use gen_rtx instead of GEN_INT.
|
||||
(FUNCTION_PROFILER): Delete.
|
||||
(COUNT_REGS): Fail if REG_P but not REG_OK_FOR_BASE_P.
|
||||
(NOTICE_UPDATE_CC): Correct handling of MULT, DIV, logicals and shifts.
|
||||
(TARGET_ESC, TARGET_BELL): Conditionally define for TARGET_EBCDIC.
|
||||
(TARGET_BS, TARGET_TAB, TARGET_NEWLINE): Likewise.
|
||||
(TARGET_VT, TARGET_FF, TARGET_CR): Likewise.
|
||||
(ASM_FILE_START): Add "RMODE ANY".
|
||||
(ASM_OUTPUT_EXTERNAL): Check for aliases.
|
||||
(ASM_GLOBALIZE_LABEL): Likewise.
|
||||
(ASM_OUTPUT_LABELREF): Likewise.
|
||||
(ASM_OUTPUT_COMMON): Likewise.
|
||||
(PRINT_OPERAND): Handle 'K', 'W', default.
|
||||
(PRINT_OPERAND_ADDRESS): New.
|
||||
(Lots of defines): Add support for TARGET_ELF_ABI.
|
||||
* i370.md (attr length): New. Define for all patterns.
|
||||
(*): Lots of tweeks to assembly output and constraints.
|
||||
|
||||
Mon Jul 19 15:09:29 1999 David Edelsohn <edelsohn@gnu.org>
|
||||
|
||||
* rs6000.md (arithmetic, logical, and shift Rc combiner patterns):
|
||||
|
|
87
gcc/config/i370/README
Normal file
87
gcc/config/i370/README
Normal file
|
@ -0,0 +1,87 @@
|
|||
|
||||
This directory contains code for building a compiler for the
|
||||
32-bit ESA/390 architecture. It supports three different styles
|
||||
of assembly:
|
||||
|
||||
-- MVS for use with the HLASM assembler
|
||||
-- Open Edition (USS Unix System Services)
|
||||
-- ELF/Linux for use with the binutils/gas GNU assembler.
|
||||
|
||||
|
||||
Cross-compiling Hints
|
||||
---------------------
|
||||
When building a cross-compiler on AIX, set the environment variable CC
|
||||
and be sure to set the -ma and -qcpluscmt flags; i.e.
|
||||
|
||||
export CC="cc -ma -qcpluscmt"
|
||||
|
||||
do this *before* running configure, e.g.
|
||||
|
||||
configure --target=i370-ibm-linux --prefix=/where/to/install/usr
|
||||
|
||||
The Objective-C and FORTRAN front ends don't build. To avoid looking at
|
||||
errors, do only
|
||||
|
||||
make LANGUAGES=c
|
||||
|
||||
|
||||
OpenEdition Hints
|
||||
-----------------
|
||||
The shell script "install" is handy for users of OpenEdition.
|
||||
|
||||
|
||||
ChangeLog
|
||||
---------
|
||||
Oct98-Dec98 -- add ELF back end; work on getting ABI more or less correct.
|
||||
98.12.05 -- fix numerous MVC bugs
|
||||
99.02.06 -- multiply insn sometimes not generated when needed.
|
||||
-- extendsidi bugs, bad literal values printed
|
||||
-- remove broken adddi subdi patterns
|
||||
99.02.15 -- add clrstrsi pattern
|
||||
-- fix -O2 divide bug
|
||||
99.03.04 -- base & index reg usage bugs
|
||||
99.03.15 -- fixes for returning long longs and structs (struct value return)
|
||||
99.03.29 -- fix handling & alignment of shorts
|
||||
99.03.31 -- clobbered register 14 is not always clobbered
|
||||
99.04.02 -- operand constraints for cmphi
|
||||
99.04.07 -- function pointer fixes for call, call_value patterns,
|
||||
function pointers derefed once too often.
|
||||
99.04.14 -- add pattern to print double-wide int
|
||||
-- check intval<4096 for misc operands
|
||||
-- add clrstrsi pattern
|
||||
-- movstrsi fixes
|
||||
99.04.16 -- use r2 to pass args into r11 in subroutine call.
|
||||
-- fixes to movsi; some operand combinations impossible;
|
||||
rework constraints
|
||||
-- start work on forward jump optimization
|
||||
-- char alignment bug
|
||||
99.04.25 -- add untyped_call pattern so that builtin_apply works
|
||||
99.04.27 -- fixes to compare logical under mask
|
||||
99.04.28 -- reg 2 is clobbered by calls
|
||||
99.04.30 -- fix rare mulsi bug
|
||||
99.04.30 -- add constraints so that all RS, SI, SS forms insns have valid
|
||||
addressing modes
|
||||
99.04.30 -- major condition code fixes. The old code was just way off
|
||||
w.r.t. which insns set condition code, and the codes that
|
||||
were set. The extent of this damage was unbeleivable.
|
||||
99.05.01 -- restructuring of operand constraints on many patterns,
|
||||
many lead to invalid instructions being genned.
|
||||
99.05.02 -- float pt fixes
|
||||
-- fix movdi issue bugs
|
||||
99.05.03 -- fix divide insn; was dividing incorrectly
|
||||
99.05.05 -- fix sign extension problems on andhi
|
||||
-- deprecate some constraints
|
||||
99.05.06 -- add set_attr insn lengths; fix misc litpool sizes
|
||||
-- add notes about how unsigned jumps work (i.e.
|
||||
arithmetic vs. logical vs. signed vs unsigned).
|
||||
99.05.11 -- use insn length to predict forward branch target;
|
||||
use relative branchining where possible,
|
||||
remove un-needed base register reload.
|
||||
99.05.15 -- fix movstrsi, clrstrsi, cmpstrsi patterns as per conversation
|
||||
w/ Richard Henderson
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
128
gcc/config/i370/linux.h
Normal file
128
gcc/config/i370/linux.h
Normal file
|
@ -0,0 +1,128 @@
|
|||
/* Definitions of target machine for GNU compiler. System/370 version.
|
||||
Copyright (C) 1989, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
Contributed by Jan Stein (jan@cd.chalmers.se).
|
||||
Modified for Linux/390 by Linas Vepstas (linas@linas.org)
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC 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 GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
|
||||
#define TARGET_VERSION fprintf (stderr, " (i370 GNU/Linux with ELF)");
|
||||
|
||||
/* Specify that we're generating code for a Linux port to 370 */
|
||||
|
||||
#define TARGET_ELF_ABI
|
||||
#define LINUX_DEFAULT_ELF
|
||||
|
||||
|
||||
/* hack alert define to get dbx/gdb/dwarf to compile */
|
||||
/* problem is that host float format is not target float format. */
|
||||
/* define REAL_ARITHMETIC for software emulation of float to
|
||||
* int conversion. This seems to have somethings to do with
|
||||
* cross-compiling ... */
|
||||
#define REAL_ARITHMETIC
|
||||
|
||||
/* Include system common definitions */
|
||||
|
||||
#include "config/linux.h"
|
||||
#include "config/i370/i370.h"
|
||||
|
||||
/* Names to predefine in the preprocessor for this target machine. */
|
||||
|
||||
#undef CPP_PREDEFINES
|
||||
#define CPP_PREDEFINES "-DGCC -Dgcc -D__ELF__ -Dunix -Dlinux -Asystem(posix) -Acpu(i370) -Amachine(i370)"
|
||||
|
||||
/* Options for this target machine. */
|
||||
|
||||
#define LIBGCC_SPEC "libgcc.a%s"
|
||||
|
||||
#ifdef SOME_FUTURE_DAY
|
||||
|
||||
#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} %(cpp_sysv) %(cpp_endian_big) \
|
||||
%{mcall-linux: %(cpp_os_linux) } \
|
||||
%{!mcall-linux: %(cpp_os_default) }"
|
||||
|
||||
#define LIB_SPEC "\
|
||||
%{mcall-linux: %(lib_linux) } \
|
||||
%{!mcall-linux:%(lib_default) }"
|
||||
|
||||
#define STARTFILE_SPEC "\
|
||||
%{mcall-linux: %(startfile_linux) } \
|
||||
%{!mcall-linux: %(startfile_default) }"
|
||||
|
||||
#define ENDFILE_SPEC "\
|
||||
%{mcall-linux: %(endfile_linux) } \
|
||||
%{!mcall-linux: %(endfile_default) }"
|
||||
|
||||
/* GNU/Linux support. */
|
||||
#ifndef LIB_LINUX_SPEC
|
||||
#define LIB_LINUX_SPEC "%{mnewlib: --start-group -llinux -lc --end-group } %{!mnewlib: -lc }"
|
||||
#endif
|
||||
|
||||
#ifndef STARTFILE_LINUX_SPEC
|
||||
#define STARTFILE_LINUX_SPEC "\
|
||||
%{!shared: %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:crt1.o%s}}} \
|
||||
%{mnewlib: ecrti.o%s} \
|
||||
%{!mnewlib: crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}}"
|
||||
#endif
|
||||
|
||||
#ifndef ENDFILE_LINUX_SPEC
|
||||
#define ENDFILE_LINUX_SPEC "\
|
||||
%{mnewlib: ecrtn.o%s} \
|
||||
%{!mnewlib: %{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s}"
|
||||
#endif
|
||||
|
||||
#ifndef LINK_START_LINUX_SPEC
|
||||
#define LINK_START_LINUX_SPEC "-Ttext 0x10000"
|
||||
#endif
|
||||
|
||||
#ifndef LINK_OS_LINUX_SPEC
|
||||
#define LINK_OS_LINUX_SPEC ""
|
||||
#endif
|
||||
|
||||
#ifndef CPP_OS_LINUX_SPEC
|
||||
#define CPP_OS_LINUX_SPEC "-D__unix__ -D__linux__ \
|
||||
%{!ansi: -Dunix -Dlinux } \
|
||||
-Asystem(unix) -Asystem(linux)"
|
||||
#endif
|
||||
|
||||
#ifndef CPP_OS_LINUX_SPEC
|
||||
#define CPP_OS_LINUX_SPEC ""
|
||||
#endif
|
||||
|
||||
|
||||
/* Define any extra SPECS that the compiler needs to generate. */
|
||||
#undef SUBTARGET_EXTRA_SPECS
|
||||
#define SUBTARGET_EXTRA_SPECS \
|
||||
{ "lib_linux", LIB_LINUX_SPEC }, \
|
||||
{ "lib_default", LIB_DEFAULT_SPEC }, \
|
||||
{ "startfile_linux", STARTFILE_LINUX_SPEC }, \
|
||||
{ "startfile_default", STARTFILE_DEFAULT_SPEC }, \
|
||||
{ "endfile_linux", ENDFILE_LINUX_SPEC }, \
|
||||
{ "endfile_default", ENDFILE_DEFAULT_SPEC }, \
|
||||
{ "link_shlib", LINK_SHLIB_SPEC }, \
|
||||
{ "link_target", LINK_TARGET_SPEC }, \
|
||||
{ "link_start", LINK_START_SPEC }, \
|
||||
{ "link_start_linux", LINK_START_LINUX_SPEC }, \
|
||||
{ "link_os", LINK_OS_SPEC }, \
|
||||
{ "link_os_linux", LINK_OS_LINUX_SPEC }, \
|
||||
{ "link_os_default", LINK_OS_DEFAULT_SPEC }, \
|
||||
{ "cpp_endian_big", CPP_ENDIAN_BIG_SPEC }, \
|
||||
{ "cpp_os_linux", CPP_OS_LINUX_SPEC }, \
|
||||
{ "cpp_os_default", CPP_OS_DEFAULT_SPEC },
|
||||
|
||||
#endif /* SOME_FUTURE_DAY */
|
46
gcc/config/i370/mvs.h
Normal file
46
gcc/config/i370/mvs.h
Normal file
|
@ -0,0 +1,46 @@
|
|||
/* Definitions of target machine for GNU compiler. System/370 version.
|
||||
Copyright (C) 1989, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
Contributed by Jan Stein (jan@cd.chalmers.se).
|
||||
Modified for OS/390 LanguageEnvironment C by Dave Pitts (dpitts@cozx.com)
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC 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 GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#define TARGET_VERSION printf (" (370/MVS)");
|
||||
|
||||
/* Specify that we're generating code for the Language Environment */
|
||||
|
||||
#define LE370 1
|
||||
#define TARGET_EBCDIC 1
|
||||
#define TARGET_HLASM 1
|
||||
|
||||
/* Options for the preprocessor for this target machine. */
|
||||
|
||||
#define CPP_SPEC "-trigraphs"
|
||||
|
||||
/* Names to predefine in the preprocessor for this target machine. */
|
||||
|
||||
#if defined(LE370)
|
||||
#define CPP_PREDEFINES "-DGCC -Dgcc -DMVS -Dmvs -DLE370 -Asystem(mvs) -Acpu(i370) -Amachine(i370)"
|
||||
#else
|
||||
#define CPP_PREDEFINES "-DGCC -Dgcc -DMVS -Dmvs -Asystem(mvs) -Acpu(i370) -Amachine(i370)"
|
||||
#endif
|
||||
|
||||
/* Include system common definitions */
|
||||
|
||||
#include "config/i370/i370.h"
|
||||
|
45
gcc/config/i370/oe.h
Normal file
45
gcc/config/i370/oe.h
Normal file
|
@ -0,0 +1,45 @@
|
|||
/* Definitions of target machine for GNU compiler. System/370 version.
|
||||
Copyright (C) 1989, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
Contributed by Jan Stein (jan@cd.chalmers.se).
|
||||
Modified for OS/390 OpenEdition by Dave Pitts (dpitts@cozx.com)
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC 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 GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#define TARGET_VERSION printf (" (370/OpenEdition)");
|
||||
|
||||
/* Specify that we're generating code for the Language Environment */
|
||||
|
||||
#define LE370 1
|
||||
#define LONGEXTERNAL 1
|
||||
#define TARGET_EBCDIC 1
|
||||
#define TARGET_HLASM 1
|
||||
|
||||
/* Options for this target machine. */
|
||||
|
||||
#define LIB_SPEC ""
|
||||
#define LIBGCC_SPEC ""
|
||||
#define STARTFILE_SPEC "/usr/local/lib/gccmain.o"
|
||||
|
||||
/* Names to predefine in the preprocessor for this target machine. */
|
||||
|
||||
#define CPP_PREDEFINES "-DGCC -Dgcc -DUNIX -Dunix -Dopenedition -D__i370__ -Asystem(openedition) -Asystem(unix) -Acpu(i370) -Amachine(i370)"
|
||||
|
||||
/* Include system common definitions */
|
||||
|
||||
#include "config/i370/i370.h"
|
||||
|
4
gcc/config/i370/t-linux
Normal file
4
gcc/config/i370/t-linux
Normal file
|
@ -0,0 +1,4 @@
|
|||
# config/i370/t-linux: this file defines Makefile overrides when building
|
||||
# for a Linux target. Thes definitions are in addition to config/t-linux.
|
||||
# pretty busted at the moment
|
||||
CROSS_LIBGCC1 =
|
4
gcc/config/i370/t-mvs
Normal file
4
gcc/config/i370/t-mvs
Normal file
|
@ -0,0 +1,4 @@
|
|||
# There is no libgcc for mvs
|
||||
LIBGCC =
|
||||
INSTALL_LIBGCC =
|
||||
LIBGCC1_TEST =
|
4
gcc/config/i370/t-oe
Normal file
4
gcc/config/i370/t-oe
Normal file
|
@ -0,0 +1,4 @@
|
|||
# There is no libgcc for OpenEdition
|
||||
LIBGCC =
|
||||
INSTALL_LIBGCC =
|
||||
LIBGCC1_TEST =
|
26
gcc/config/i370/x-oe
Normal file
26
gcc/config/i370/x-oe
Normal file
|
@ -0,0 +1,26 @@
|
|||
#
|
||||
# Host is an i370 running OpenEdition
|
||||
#
|
||||
|
||||
# Use GCC alloca
|
||||
|
||||
ALLOCA = alloca.o
|
||||
|
||||
# Don't bother fixing up header files, they're wierd
|
||||
|
||||
STMP_FIXPROTO =
|
||||
|
||||
# Set up to make using c89
|
||||
|
||||
X_CFLAGS=-D_ALL_SOURCE
|
||||
CC=c89
|
||||
|
||||
# Explicitly use libiberty
|
||||
|
||||
CLIB=-liberty
|
||||
LDFLAGS=-L../libiberty
|
||||
|
||||
# TAR Options
|
||||
|
||||
TAROUTOPTS=xpf
|
||||
|
67
gcc/config/i370/xm-linux.h
Normal file
67
gcc/config/i370/xm-linux.h
Normal file
|
@ -0,0 +1,67 @@
|
|||
/* Configuration for GNU C-compiler for System/370.
|
||||
Copyright (C) 1989, 1993, 1997 Free Software Foundation, Inc.
|
||||
Contributed by Jan Stein (jan@cd.chalmers.se).
|
||||
Modified for OS/390 OpenEdition by Dave Pitts (dpitts@cozx.com)
|
||||
Modified for 390/Linux by Linas Vepstas (linas@linas.org)
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC 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 GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* #defines that need visibility everywhere. */
|
||||
|
||||
#define FALSE 0
|
||||
#define TRUE 1
|
||||
|
||||
#define USE_STDARGS 1
|
||||
#define USE_PROTOTYPES 1
|
||||
|
||||
/* This describes the machine the compiler is hosted on. */
|
||||
|
||||
#define HOST_BITS_PER_CHAR 8
|
||||
#define HOST_BITS_PER_SHORT 16
|
||||
#define HOST_BITS_PER_INT 32
|
||||
#define HOST_BITS_PER_LONG 32
|
||||
#define HOST_BITS_PER_LONGLONG 64
|
||||
#define HOST_FLOAT_FORMAT IEEE_FLOAT_FORMAT
|
||||
|
||||
#define HOST_WORDS_BIG_ENDIAN
|
||||
|
||||
/* If not compiled with GNU C, use the C alloca and use only int bitfields. */
|
||||
#ifndef __GNUC__
|
||||
#define USE_C_ALLOCA
|
||||
#if __STDC__
|
||||
extern void *alloca ();
|
||||
#else
|
||||
extern char *alloca ();
|
||||
#endif
|
||||
#define ONLY_INT_FIELDS
|
||||
#endif
|
||||
|
||||
// #define USG
|
||||
|
||||
/* Target machine dependencies. tm.h is a symbolic link to the actual
|
||||
target specific file. */
|
||||
|
||||
#include "tm.h"
|
||||
|
||||
/* Arguments to use with `exit'. */
|
||||
|
||||
#define SUCCESS_EXIT_CODE 0
|
||||
#define FATAL_EXIT_CODE 12
|
||||
|
||||
// #define NO_DBX_FORMAT
|
||||
|
53
gcc/config/i370/xm-mvs.h
Normal file
53
gcc/config/i370/xm-mvs.h
Normal file
|
@ -0,0 +1,53 @@
|
|||
/* Configuration for GNU C-compiler for System/370.
|
||||
Copyright (C) 1989, 1993, 1997 Free Software Foundation, Inc.
|
||||
Contributed by Jan Stein (jan@cd.chalmers.se).
|
||||
Modified for OS/390 LanguageEnvironment C by Dave Pitts (dpitts@cozx.com)
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC 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 GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* #defines that need visibility everywhere. */
|
||||
|
||||
#define FALSE 0
|
||||
#define TRUE 1
|
||||
|
||||
/* This describes the machine the compiler is hosted on. */
|
||||
|
||||
#define HOST_BITS_PER_CHAR 8
|
||||
#define HOST_BITS_PER_SHORT 16
|
||||
#define HOST_BITS_PER_INT 32
|
||||
#define HOST_BITS_PER_LONG 32
|
||||
#define HOST_FLOAT_FORMAT IBM_FLOAT_FORMAT
|
||||
#define HOST_EBCDIC 1
|
||||
|
||||
#define USG
|
||||
#ifndef MVS
|
||||
#define MVS
|
||||
#endif
|
||||
|
||||
/* Target machine dependencies. tm.h is a symbolic link to the actual
|
||||
target specific file. */
|
||||
|
||||
#include "tm.h"
|
||||
|
||||
/* Arguments to use with `exit'. */
|
||||
|
||||
#define SUCCESS_EXIT_CODE 0
|
||||
#define FATAL_EXIT_CODE 12
|
||||
|
||||
#define NO_DBX_FORMAT
|
||||
|
55
gcc/config/i370/xm-oe.h
Normal file
55
gcc/config/i370/xm-oe.h
Normal file
|
@ -0,0 +1,55 @@
|
|||
/* Configuration for GNU C-compiler for System/370.
|
||||
Copyright (C) 1989, 1993, 1997 Free Software Foundation, Inc.
|
||||
Contributed by Jan Stein (jan@cd.chalmers.se).
|
||||
Modified for OS/390 OpenEdition by Dave Pitts (dpitts@cozx.com)
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC 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 GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* #defines that need visibility everywhere. */
|
||||
|
||||
#define FALSE 0
|
||||
#define TRUE 1
|
||||
|
||||
#define USE_STDARGS 1
|
||||
#define USE_PROTOTYPES 1
|
||||
|
||||
/* This describes the machine the compiler is hosted on. */
|
||||
|
||||
#define HOST_BITS_PER_CHAR 8
|
||||
#define HOST_BITS_PER_SHORT 16
|
||||
#define HOST_BITS_PER_INT 32
|
||||
#define HOST_BITS_PER_LONG 32
|
||||
#define HOST_FLOAT_FORMAT IBM_FLOAT_FORMAT
|
||||
#define HOST_EBCDIC 1
|
||||
|
||||
#define ONLY_INT_FIELDS 1
|
||||
|
||||
#define USG
|
||||
|
||||
/* Target machine dependencies. tm.h is a symbolic link to the actual
|
||||
target specific file. */
|
||||
|
||||
#include "tm.h"
|
||||
|
||||
/* Arguments to use with `exit'. */
|
||||
|
||||
#define SUCCESS_EXIT_CODE 0
|
||||
#define FATAL_EXIT_CODE 12
|
||||
|
||||
#define NO_DBX_FORMAT
|
||||
|
Loading…
Add table
Reference in a new issue