mirror of git://gcc.gnu.org/git/gcc.git
configure.in (mips*-*-irix6*o32): Enable stabs.
* configure.in (mips*-*-irix6*o32): Enable stabs. gcc: * config.gcc (mips-sgi-irix6*o32): New configuration. * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32 configurations. * configure: Regenerate. * config/mips/iris6-o32-as.h: New file. * config/mips/iris6-o32.h: New file. * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define. (NM_FLAGS): Define. (HAVE_AS_SHF_MERGE): Undefine. * config/mips/t-iris5-as: New file. * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it. * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME, SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT, dp-bit.c, fp-bit.c): Move ... * config/mips/t-iris5-6: ... here. New file, shared by IRIX 5 and IRIX 6. * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*, mips-sgi-irix5*): Use it. * config/mips/iris6.h: Remove duplicate comment. * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 && !TARGET_IRIX6]: Define. (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6. * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment. gcc/testsuite: * gcc.misc-tests/linkage.exp: Handle mips-sgi-irix6*o32 configuration and IRIX 6 O32 ABI. libstdc++-v3: * configure.target (target_os switch): Allow for irix6*o32 configurations. From-SVN: r55401
This commit is contained in:
parent
a18c2c5f98
commit
789b7de56b
|
@ -1,3 +1,7 @@
|
||||||
|
2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||||||
|
|
||||||
|
* configure.in (mips*-*-irix6*o32): Enable stabs.
|
||||||
|
|
||||||
2002-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
|
2002-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||||
|
|
||||||
* configure.in: Don't build grez.
|
* configure.in: Don't build grez.
|
||||||
|
|
|
@ -1255,6 +1255,10 @@ esac
|
||||||
# Default to using --with-stabs for certain targets.
|
# Default to using --with-stabs for certain targets.
|
||||||
if test x${with_stabs} = x ; then
|
if test x${with_stabs} = x ; then
|
||||||
case "${target}" in
|
case "${target}" in
|
||||||
|
mips*-*-irix6*o32)
|
||||||
|
with_stabs=yes;
|
||||||
|
withoptions="${withoptions} --with-stabs"
|
||||||
|
;;
|
||||||
mips*-*-irix6*)
|
mips*-*-irix6*)
|
||||||
;;
|
;;
|
||||||
mips*-*-* | alpha*-*-osf*)
|
mips*-*-* | alpha*-*-osf*)
|
||||||
|
|
|
@ -1,3 +1,38 @@
|
||||||
|
2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||||||
|
|
||||||
|
* config.gcc (mips-sgi-irix6*o32): New configuration.
|
||||||
|
|
||||||
|
* configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
|
||||||
|
configurations.
|
||||||
|
* configure: Regenerate.
|
||||||
|
|
||||||
|
* config/mips/iris6-o32-as.h: New file.
|
||||||
|
* config/mips/iris6-o32.h: New file.
|
||||||
|
|
||||||
|
* config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
|
||||||
|
(NM_FLAGS): Define.
|
||||||
|
(HAVE_AS_SHF_MERGE): Undefine.
|
||||||
|
|
||||||
|
* config/mips/t-iris5-as: New file.
|
||||||
|
* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
|
||||||
|
|
||||||
|
* config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
|
||||||
|
SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
|
||||||
|
SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
|
||||||
|
dp-bit.c, fp-bit.c): Move ...
|
||||||
|
* config/mips/t-iris5-6: ... here.
|
||||||
|
New file, shared by IRIX 5 and IRIX 6.
|
||||||
|
* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
|
||||||
|
mips-sgi-irix5*): Use it.
|
||||||
|
|
||||||
|
* config/mips/iris6.h: Remove duplicate comment.
|
||||||
|
|
||||||
|
* config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
|
||||||
|
!TARGET_IRIX6]: Define.
|
||||||
|
(mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
|
||||||
|
|
||||||
|
* config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
|
||||||
|
|
||||||
2002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
2002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||||||
|
|
||||||
* pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
|
* pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
|
||||||
|
|
|
@ -1745,6 +1745,29 @@ mcore-*-pe*)
|
||||||
tm_file=mcore/mcore-pe.h
|
tm_file=mcore/mcore-pe.h
|
||||||
tmake_file=mcore/t-mcore-pe
|
tmake_file=mcore/t-mcore-pe
|
||||||
;;
|
;;
|
||||||
|
mips-sgi-irix6*o32) # SGI System V.4., IRIX 6, O32 ABI
|
||||||
|
if test x$gas = xyes
|
||||||
|
then
|
||||||
|
tm_file="mips/iris5.h mips/iris5gas.h"
|
||||||
|
if test x$stabs = xyes
|
||||||
|
then
|
||||||
|
tm_file="${tm_file} dbx.h"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
tm_file="mips/iris5.h mips/iris6-o32-as.h"
|
||||||
|
tmake_file=mips/t-iris5-as
|
||||||
|
fi
|
||||||
|
tm_file="${tm_file} mips/iris6-o32.h"
|
||||||
|
tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
|
||||||
|
xm_defines=POSIX
|
||||||
|
xm_file=mips/xm-iris5.h
|
||||||
|
# mips-tfile doesn't work yet
|
||||||
|
# See comment in mips/iris5.h file.
|
||||||
|
use_collect2=yes
|
||||||
|
# if test x$enable_threads = xyes; then
|
||||||
|
# thread_file='irix'
|
||||||
|
# fi
|
||||||
|
;;
|
||||||
mips-sgi-irix6*) # SGI System V.4., IRIX 6
|
mips-sgi-irix6*) # SGI System V.4., IRIX 6
|
||||||
if test "x$gnu_ld" = xyes
|
if test "x$gnu_ld" = xyes
|
||||||
then
|
then
|
||||||
|
@ -1752,7 +1775,7 @@ mips-sgi-irix6*) # SGI System V.4., IRIX 6
|
||||||
else
|
else
|
||||||
tm_file=mips/iris6.h
|
tm_file=mips/iris6.h
|
||||||
fi
|
fi
|
||||||
tmake_file="mips/t-iris mips/t-iris6"
|
tmake_file="mips/t-iris mips/t-iris5-6 mips/t-iris6"
|
||||||
xm_defines=POSIX
|
xm_defines=POSIX
|
||||||
# if test x$enable_threads = xyes; then
|
# if test x$enable_threads = xyes; then
|
||||||
# thread_file='irix'
|
# thread_file='irix'
|
||||||
|
@ -1805,8 +1828,9 @@ mips-sgi-irix5*) # SGI System V.4., IRIX 5
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
tm_file=mips/iris5.h
|
tm_file=mips/iris5.h
|
||||||
|
tmake_file=mips/t-iris5-as
|
||||||
fi
|
fi
|
||||||
tmake_file=mips/t-iris
|
tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
|
||||||
xm_defines=POSIX
|
xm_defines=POSIX
|
||||||
xm_file=mips/xm-iris5.h
|
xm_file=mips/xm-iris5.h
|
||||||
# mips-tfile doesn't work yet
|
# mips-tfile doesn't work yet
|
||||||
|
|
|
@ -34,3 +34,16 @@ do { \
|
||||||
extern FILE *asm_out_text_file; \
|
extern FILE *asm_out_text_file; \
|
||||||
fprintf (asm_out_text_file, "\t.etype\t0x%x;", (a)); \
|
fprintf (asm_out_text_file, "\t.etype\t0x%x;", (a)); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
|
/* Switch into a generic section. */
|
||||||
|
#undef TARGET_ASM_NAMED_SECTION
|
||||||
|
#define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
|
||||||
|
|
||||||
|
/* Add -g to mips.h default to avoid confusing gas with local symbols
|
||||||
|
generated from stabs info. */
|
||||||
|
#undef NM_FLAGS
|
||||||
|
#define NM_FLAGS "-Bng"
|
||||||
|
|
||||||
|
/* Disable SHF_MERGE support. Even if gas supports it, the IRIX ld does not
|
||||||
|
without a special elspec(5) file. */
|
||||||
|
#undef HAVE_GAS_SHF_MERGE
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
/* Definitions of target machine for GNU compiler, for MIPS running IRIX 6
|
||||||
|
(O32 ABI) using the SGI assembler. */
|
||||||
|
|
||||||
|
/* Override mips.h default: the IRIX 6 O32 assembler warns about -O3:
|
||||||
|
|
||||||
|
as: Warning: -O3 is not supported for assembly compiles for ucode
|
||||||
|
compilers; changing to -O2.
|
||||||
|
|
||||||
|
So avoid passing it in the first place. */
|
||||||
|
#undef SUBTARGET_ASM_OPTIMIZING_SPEC
|
||||||
|
#define SUBTARGET_ASM_OPTIMIZING_SPEC "\
|
||||||
|
%{noasmopt:-O0} \
|
||||||
|
%{!noasmopt:%{O|O1|O2|O3:-O2}}"
|
|
@ -0,0 +1,84 @@
|
||||||
|
/* Definitions of target machine for GNU compiler, for MIPS running IRIX 6
|
||||||
|
(O32 ABI). */
|
||||||
|
|
||||||
|
/* The O32 ABI on IRIX 6 defaults to the mips2 ISA. */
|
||||||
|
#undef MIPS_ISA_DEFAULT
|
||||||
|
#define MIPS_ISA_DEFAULT 2
|
||||||
|
|
||||||
|
/* Specify wchar_t and wint_t types. */
|
||||||
|
#undef WCHAR_TYPE
|
||||||
|
#define WCHAR_TYPE "long int"
|
||||||
|
|
||||||
|
#undef WCHAR_TYPE_SIZE
|
||||||
|
#define WCHAR_TYPE_SIZE 32
|
||||||
|
|
||||||
|
#undef WINT_TYPE
|
||||||
|
#define WINT_TYPE "long int"
|
||||||
|
|
||||||
|
#undef WINT_TYPE_SIZE
|
||||||
|
#define WINT_TYPE_SIZE 32
|
||||||
|
|
||||||
|
/* Copied from iris5.h, with _MIPS_SIM definition adapted to SGI cc usage
|
||||||
|
and -D_LONGLONG added as in iris6.h. */
|
||||||
|
#undef TARGET_OS_CPP_BUILTINS
|
||||||
|
#define TARGET_OS_CPP_BUILTINS() \
|
||||||
|
do { \
|
||||||
|
builtin_define_std ("host_mips"); \
|
||||||
|
builtin_define_std ("sgi"); \
|
||||||
|
builtin_define_std ("unix"); \
|
||||||
|
builtin_define_std ("SYSTYPE_SVR4"); \
|
||||||
|
builtin_define ("_LONGLONG"); \
|
||||||
|
builtin_define ("_MODERN_C"); \
|
||||||
|
builtin_define ("_SVR4_SOURCE"); \
|
||||||
|
builtin_define ("__DSO__"); \
|
||||||
|
builtin_define ("_ABIO32=1"); \
|
||||||
|
builtin_define ("_MIPS_SIM=_ABIO32"); \
|
||||||
|
builtin_define ("_MIPS_SZPTR=32"); \
|
||||||
|
builtin_assert ("system=unix"); \
|
||||||
|
builtin_assert ("system=svr4"); \
|
||||||
|
builtin_assert ("machine=sgi"); \
|
||||||
|
\
|
||||||
|
if (!TARGET_FLOAT64) \
|
||||||
|
builtin_define ("_MIPS_FPSET=16"); \
|
||||||
|
else \
|
||||||
|
builtin_define ("_MIPS_FPSET=32"); \
|
||||||
|
\
|
||||||
|
if (!TARGET_INT64) \
|
||||||
|
builtin_define ("_MIPS_SZINT=32"); \
|
||||||
|
else \
|
||||||
|
builtin_define ("_MIPS_SZINT=64"); \
|
||||||
|
\
|
||||||
|
if (!TARGET_LONG64) \
|
||||||
|
builtin_define ("_MIPS_SZLONG=32"); \
|
||||||
|
else \
|
||||||
|
builtin_define ("_MIPS_SZLONG=64"); \
|
||||||
|
\
|
||||||
|
if (!flag_iso) \
|
||||||
|
{ \
|
||||||
|
builtin_define ("__EXTENSIONS__"); \
|
||||||
|
builtin_define ("_SGI_SOURCE"); \
|
||||||
|
} \
|
||||||
|
} while (0);
|
||||||
|
|
||||||
|
/* Enforce use of O32 assembler, irrespective of SGI_ABI environment variable
|
||||||
|
and machine type (e.g., R8000 systems default to -64). Gas doesn't need
|
||||||
|
this, but doesn't hurt either. Need to pass -mips2 to gas which defaults
|
||||||
|
to -mips1 if no ISA is specified. */
|
||||||
|
#undef SUBTARGET_ASM_SPEC
|
||||||
|
#define SUBTARGET_ASM_SPEC "-32 %{!mips*:-mips2}"
|
||||||
|
|
||||||
|
/* Enforce use of O32 linker, irrespective of SGI_ABI environment variable
|
||||||
|
and machine type (e.g., R8000 systems default to -64). Copied from
|
||||||
|
iris5.h, only adding -32. The default options -call_shared -no_unresolved
|
||||||
|
are only passed if not invoked with -r. */
|
||||||
|
#undef LINK_SPEC
|
||||||
|
#define LINK_SPEC "\
|
||||||
|
%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} \
|
||||||
|
%{bestGnum} %{shared} %{non_shared} \
|
||||||
|
%{call_shared} %{no_archive} %{exact_version} \
|
||||||
|
%{static: -non_shared} \
|
||||||
|
%{!static: \
|
||||||
|
%{!shared:%{!non_shared:%{!call_shared:%{!r: -call_shared -no_unresolved}}}}} \
|
||||||
|
%{rpath} \
|
||||||
|
-_SYSTYPE_SVR4 \
|
||||||
|
-32"
|
|
@ -139,13 +139,6 @@ Boston, MA 02111-1307, USA. */
|
||||||
} \
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
/* The GNU C++ standard library requires that __EXTENSIONS__ and
|
|
||||||
_SGI_SOURCE be defined on at least irix6.2 and probably all irix6
|
|
||||||
prior to 6.5. They normally get defined in SUBTARGET_CPP_SPEC if
|
|
||||||
!ansi, for g++ we want them regardless. We don't need this on
|
|
||||||
irix6.5 itself, but it shouldn't hurt other than the namespace
|
|
||||||
pollution. */
|
|
||||||
|
|
||||||
/* Irix 6 uses DWARF-2. */
|
/* Irix 6 uses DWARF-2. */
|
||||||
#define DWARF2_DEBUGGING_INFO
|
#define DWARF2_DEBUGGING_INFO
|
||||||
#define MIPS_DEBUGGING_INFO
|
#define MIPS_DEBUGGING_INFO
|
||||||
|
|
|
@ -575,6 +575,8 @@ enum reg_class mips_char_to_class[256] =
|
||||||
#define TARGET_ASM_UNALIGNED_HI_OP "\t.align 0\n\t.half\t"
|
#define TARGET_ASM_UNALIGNED_HI_OP "\t.align 0\n\t.half\t"
|
||||||
#undef TARGET_ASM_UNALIGNED_SI_OP
|
#undef TARGET_ASM_UNALIGNED_SI_OP
|
||||||
#define TARGET_ASM_UNALIGNED_SI_OP "\t.align 0\n\t.word\t"
|
#define TARGET_ASM_UNALIGNED_SI_OP "\t.align 0\n\t.word\t"
|
||||||
|
#undef TARGET_ASM_UNALIGNED_DI_OP
|
||||||
|
#define TARGET_ASM_UNALIGNED_DI_OP "\t.align 0\n\t.dword\t"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#undef TARGET_ASM_FUNCTION_PROLOGUE
|
#undef TARGET_ASM_FUNCTION_PROLOGUE
|
||||||
|
@ -6343,13 +6345,14 @@ mips_asm_file_start (stream)
|
||||||
|
|
||||||
if (TARGET_GAS)
|
if (TARGET_GAS)
|
||||||
{
|
{
|
||||||
#if defined(OBJECT_FORMAT_ELF)
|
#if defined(OBJECT_FORMAT_ELF) && !(TARGET_IRIX5 || TARGET_IRIX6)
|
||||||
/* Generate a special section to describe the ABI switches used to
|
/* Generate a special section to describe the ABI switches used to
|
||||||
produce the resultant binary. This used to be done by the assembler
|
produce the resultant binary. This used to be done by the assembler
|
||||||
setting bits in the ELF header's flags field, but we have run out of
|
setting bits in the ELF header's flags field, but we have run out of
|
||||||
bits. GDB needs this information in order to be able to correctly
|
bits. GDB needs this information in order to be able to correctly
|
||||||
debug these binaries. See the function mips_gdbarch_init() in
|
debug these binaries. See the function mips_gdbarch_init() in
|
||||||
gdb/mips-tdep.c. */
|
gdb/mips-tdep.c. This is unnecessary for the IRIX 5/6 ABIs and
|
||||||
|
causes unnecessary IRIX 6 ld warnings. */
|
||||||
const char * abi_string = NULL;
|
const char * abi_string = NULL;
|
||||||
|
|
||||||
switch (mips_abi)
|
switch (mips_abi)
|
||||||
|
|
|
@ -4260,7 +4260,7 @@ do { \
|
||||||
/* This is how to declare a function name. The actual work of
|
/* This is how to declare a function name. The actual work of
|
||||||
emitting the label is moved to function_prologue, so that we can
|
emitting the label is moved to function_prologue, so that we can
|
||||||
get the line number correctly emitted before the .ent directive,
|
get the line number correctly emitted before the .ent directive,
|
||||||
and after any .file directives. Define to NULL so that the function
|
and after any .file directives. Define as empty so that the function
|
||||||
is not declared before the .ent directive elsewhere. */
|
is not declared before the .ent directive elsewhere. */
|
||||||
|
|
||||||
#undef ASM_DECLARE_FUNCTION_NAME
|
#undef ASM_DECLARE_FUNCTION_NAME
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
# Build a shared libgcc library.
|
||||||
|
SHLIB_EXT = .so
|
||||||
|
SHLIB_SOLINK = @shlib_base_name@.so
|
||||||
|
SHLIB_SONAME = @shlib_so_name@.so.1
|
||||||
|
SHLIB_NAME = @shlib_dir@@shlib_so_name@.so.1
|
||||||
|
SHLIB_MAP = @shlib_map_file@
|
||||||
|
SHLIB_OBJS = @shlib_objs@
|
||||||
|
SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
|
||||||
|
|
||||||
|
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
|
||||||
|
-Wl,-soname,$(SHLIB_SONAME) \
|
||||||
|
-o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) -lc && \
|
||||||
|
rm -f $(SHLIB_SOLINK) && \
|
||||||
|
$(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK)
|
||||||
|
# ??? Irix 6.5 seems to eat the option fine (if we somehow remove the
|
||||||
|
# -hidden_symbol option, which is documented to be ignored in conjunction
|
||||||
|
# with -exports_file), but fails to actually hide any symbols.
|
||||||
|
# -Wl,-exports_file,$(SHLIB_MAP)
|
||||||
|
|
||||||
|
# $(slibdir) double quoted to protect it from expansion while building
|
||||||
|
# libgcc.mk. We want this delayed until actual install time.
|
||||||
|
SHLIB_INSTALL = \
|
||||||
|
$$(SHELL) $$(srcdir)/mkinstalldirs $$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
|
||||||
|
$(INSTALL_DATA) $(SHLIB_NAME) \
|
||||||
|
$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
|
||||||
|
rm -f $$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
|
||||||
|
$(LN_S) $(SHLIB_SONAME) \
|
||||||
|
$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
|
||||||
|
SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
|
||||||
|
SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver
|
||||||
|
|
||||||
|
# We want fine grained libraries, so use the new code to build the
|
||||||
|
# floating point emulation libraries.
|
||||||
|
FPBIT = fp-bit.c
|
||||||
|
DPBIT = dp-bit.c
|
||||||
|
|
||||||
|
dp-bit.c: $(srcdir)/config/fp-bit.c
|
||||||
|
echo '#undef US_SOFTWARE_GOFAST' > dp-bit.c
|
||||||
|
echo '#undef FLOAT' >> dp-bit.c
|
||||||
|
cat $(srcdir)/config/fp-bit.c >> dp-bit.c
|
||||||
|
|
||||||
|
fp-bit.c: $(srcdir)/config/fp-bit.c
|
||||||
|
echo '#define FLOAT' > fp-bit.c
|
||||||
|
echo '#undef US_SOFTWARE_GOFAST' >> fp-bit.c
|
||||||
|
cat $(srcdir)/config/fp-bit.c >> fp-bit.c
|
|
@ -0,0 +1,7 @@
|
||||||
|
# omit -g, gcc doesn't support the o32 mdebug debugging format and warns about
|
||||||
|
# every invokation with -g*
|
||||||
|
# add -save-temps to avoid comparison failure due to embedded temp file names
|
||||||
|
BOOT_CFLAGS = -O2 -save-temps
|
||||||
|
|
||||||
|
# omit -g1
|
||||||
|
LIBGCC2_DEBUG_CFLAGS =
|
|
@ -14,53 +14,8 @@ INSTALL_LIBGCC = install-multilib
|
||||||
EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o
|
EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o
|
||||||
CRTSTUFF_T_CFLAGS=-g1
|
CRTSTUFF_T_CFLAGS=-g1
|
||||||
|
|
||||||
# Build a shared libgcc library.
|
|
||||||
SHLIB_EXT = .so
|
|
||||||
SHLIB_SOLINK = @shlib_base_name@.so
|
|
||||||
SHLIB_SONAME = @shlib_so_name@.so.1
|
|
||||||
SHLIB_NAME = @shlib_dir@@shlib_so_name@.so.1
|
|
||||||
SHLIB_MAP = @shlib_map_file@
|
|
||||||
SHLIB_OBJS = @shlib_objs@
|
|
||||||
SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
|
|
||||||
SHLIB_SLIBDIR_SUFFIXES = mabi=64:/mabi=64 mabi=n32:
|
SHLIB_SLIBDIR_SUFFIXES = mabi=64:/mabi=64 mabi=n32:
|
||||||
|
|
||||||
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
|
|
||||||
-Wl,-soname,$(SHLIB_SONAME) \
|
|
||||||
-o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) -lc && \
|
|
||||||
rm -f $(SHLIB_SOLINK) && \
|
|
||||||
$(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK)
|
|
||||||
# ??? Irix 6.5 seems to eat the option fine (if we somehow remove the
|
|
||||||
# -hidden_symbol option, which is documented to be ignored in conjunction
|
|
||||||
# with -exports_file), but fails to actually hide any symbols.
|
|
||||||
# -Wl,-exports_file,$(SHLIB_MAP)
|
|
||||||
|
|
||||||
# $(slibdir) double quoted to protect it from expansion while building
|
|
||||||
# libgcc.mk. We want this delayed until actual install time.
|
|
||||||
SHLIB_INSTALL = \
|
|
||||||
$$(SHELL) $$(srcdir)/mkinstalldirs $$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
|
|
||||||
$(INSTALL_DATA) $(SHLIB_NAME) \
|
|
||||||
$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
|
|
||||||
rm -f $$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
|
|
||||||
$(LN_S) $(SHLIB_SONAME) \
|
|
||||||
$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
|
|
||||||
SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
|
|
||||||
SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver
|
|
||||||
|
|
||||||
# We want fine grained libraries, so use the new code to build the
|
|
||||||
# floating point emulation libraries.
|
|
||||||
FPBIT = fp-bit.c
|
|
||||||
DPBIT = dp-bit.c
|
|
||||||
|
|
||||||
dp-bit.c: $(srcdir)/config/fp-bit.c
|
|
||||||
echo '#undef US_SOFTWARE_GOFAST' > dp-bit.c
|
|
||||||
echo '#undef FLOAT' >> dp-bit.c
|
|
||||||
cat $(srcdir)/config/fp-bit.c >> dp-bit.c
|
|
||||||
|
|
||||||
fp-bit.c: $(srcdir)/config/fp-bit.c
|
|
||||||
echo '#define FLOAT' > fp-bit.c
|
|
||||||
echo '#undef US_SOFTWARE_GOFAST' >> fp-bit.c
|
|
||||||
cat $(srcdir)/config/fp-bit.c >> fp-bit.c
|
|
||||||
|
|
||||||
# This is only needed in the static libgcc as a band-aid until gcc correctly
|
# This is only needed in the static libgcc as a band-aid until gcc correctly
|
||||||
# implements the N32/N64 ABI structure passing conventions
|
# implements the N32/N64 ABI structure passing conventions
|
||||||
LIB2FUNCS_STATIC_EXTRA = $(srcdir)/config/mips/irix6-libc-compat.c
|
LIB2FUNCS_STATIC_EXTRA = $(srcdir)/config/mips/irix6-libc-compat.c
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1592,6 +1592,15 @@ if test x"$gcc_cv_as_hidden" = xyes; then
|
||||||
fi
|
fi
|
||||||
AC_MSG_RESULT($gcc_cv_as_hidden)
|
AC_MSG_RESULT($gcc_cv_as_hidden)
|
||||||
libgcc_visibility=$gcc_cv_as_hidden
|
libgcc_visibility=$gcc_cv_as_hidden
|
||||||
|
case "$target" in
|
||||||
|
mips-sgi-irix6*o32)
|
||||||
|
if test x"$gnu_ld_flag" = x"no"; then
|
||||||
|
# Even if using gas with .hidden support, the resulting object files
|
||||||
|
# cannot be linked with the IRIX 6 O32 linker.
|
||||||
|
libgcc_visibility=no
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
AC_SUBST(libgcc_visibility)
|
AC_SUBST(libgcc_visibility)
|
||||||
|
|
||||||
AC_MSG_CHECKING(assembler leb128 support)
|
AC_MSG_CHECKING(assembler leb128 support)
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||||||
|
|
||||||
|
* gcc.misc-tests/linkage.exp: Handle mips-sgi-irix6*o32
|
||||||
|
configuration and IRIX 6 O32 ABI.
|
||||||
|
|
||||||
2002-07-11 Roger Sayle <roger@eyesopen.com>
|
2002-07-11 Roger Sayle <roger@eyesopen.com>
|
||||||
|
|
||||||
* gcc.c-torture/execute/builtin-noret-1.c: Test non-ANSI functions.
|
* gcc.c-torture/execute/builtin-noret-1.c: Test non-ANSI functions.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Copyright (C) 1988, 90-96, 1997, 2000, 2001 Free Software Foundation, Inc.
|
# Copyright (C) 1988, 90-96, 1997, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
@ -32,10 +32,16 @@ if [isnative] then {
|
||||||
if [ string match "*64*" $file_string ] {
|
if [ string match "*64*" $file_string ] {
|
||||||
set native_cflags "-64"
|
set native_cflags "-64"
|
||||||
}
|
}
|
||||||
|
if [ string match "*ELF 32*" $file_string ] {
|
||||||
|
set native_cflags "-32"
|
||||||
|
}
|
||||||
if [ string match "*N32*" $file_string ] {
|
if [ string match "*N32*" $file_string ] {
|
||||||
set native_cflags "-n32"
|
set native_cflags "-n32"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if [istarget "mips-sgi-iris6*o32" ] {
|
||||||
|
set native_cflags "-32"
|
||||||
|
}
|
||||||
if [istarget "sparc*-sun-solaris2*"] {
|
if [istarget "sparc*-sun-solaris2*"] {
|
||||||
set file_string [exec file "linkage-x.o"]
|
set file_string [exec file "linkage-x.o"]
|
||||||
if [ string match "*64*" $file_string ] {
|
if [ string match "*64*" $file_string ] {
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||||||
|
|
||||||
|
* configure.target (target_os switch): Allow for irix6*o32
|
||||||
|
configurations.
|
||||||
|
|
||||||
2002-07-10 Gabriel Dos Reis <gdr@nerim.net>
|
2002-07-10 Gabriel Dos Reis <gdr@nerim.net>
|
||||||
|
|
||||||
* include/bits/valarray_meta.h (_UnFunBase): Take a second
|
* include/bits/valarray_meta.h (_UnFunBase): Take a second
|
||||||
|
|
|
@ -160,12 +160,12 @@ case "${target_os}" in
|
||||||
os_include_dir="os/hpux"
|
os_include_dir="os/hpux"
|
||||||
CPULIMITSH="os/hpux"
|
CPULIMITSH="os/hpux"
|
||||||
;;
|
;;
|
||||||
irix[1-6] | irix[1-5].* | irix6.[0-4])
|
irix[1-6] | irix[1-5].* | irix6.[0-4]*)
|
||||||
# This is known to work on at least IRIX 5.2 and 6.3.
|
# This is known to work on at least IRIX 5.2 and 6.3.
|
||||||
os_include_dir="os/irix/irix5.2"
|
os_include_dir="os/irix/irix5.2"
|
||||||
ATOMICITYH=$os_include_dir
|
ATOMICITYH=$os_include_dir
|
||||||
;;
|
;;
|
||||||
irix6.5)
|
irix6.5*)
|
||||||
os_include_dir="os/irix/irix6.5"
|
os_include_dir="os/irix/irix6.5"
|
||||||
ATOMICITYH=$os_include_dir
|
ATOMICITYH=$os_include_dir
|
||||||
;;
|
;;
|
||||||
|
|
Loading…
Reference in New Issue