re PR bootstrap/39150 (Configure scripts have no 64-Bit Solaris defined (only i386-solaris*).)

gcc:
	PR target/39150
	* configure.ac (gcc_cv_as_hidden): Also accept
	x86_64-*-solaris2.1[0-9]*.
	(gcc_cv_as_cfi_directive): Likewise.
	(gcc_cv_as_comdat_group_group): Likewise.
	(set_have_as_tls): Likewise.
	* configure: Regenerate.
	* config.gcc (i[34567]86-*-solaris2*): Also handle
	x86_64-*-solaris2.1[0-9]*.
	* config.host (i[34567]86-*-solaris2*): Likewise.
	* config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Remove.
	* config/sol2-bi.h (ASM_CPU_DEFAULT_SPEC): Redefine.
	[USE_GLD] (ARCH_DEFAULT_EMULATION): Define.
	(TARGET_LD_EMULATION): Use it.
	* config/i386/sol2.h (ASM_CPU_DEFAULT_SPEC): Define.
	(SUBTARGET_CPU_EXTRA_SPECS): Add asm_cpu_default.
	* config/i386/sol2-bi.h (ASM_CPU32_DEFAULT_SPEC): Define.
	(ASM_CPU64_DEFAULT_SPEC): Define.
	(ASM_CPU_SPEC): Use %(asm_cpu_default).
	(ASM_SPEC): Redefine.
	(DEFAULT_ARCH32_P): Define using TARGET_64BIT_DEFAULT.
	* config/host-solaris.c [__x86_64__] (TRY_EMPTY_VM_SPACE): Reduce.
	* doc/install.texi (Specific, amd64-*-solaris2.1[0-9]*):
	Document.
	(Specific, i?86-*-solaris2.10): Mention x86_64-*-solaris2.1[0-9]*
	configuration.
	(Specific, x86_64-*-solaris2.1[0-9]*): Document.

	gcc/ada:
	PR target/39150
	* gcc-interface/Makefile.in: Handle x86_64-solaris2.

	libgcc:
	PR target/39150
	* config.host (*-*-solaris2*): Handle x86_64-*-solaris2.1[0-9]*
	like i?86-*-solaris2.1[0-9]*.
	(i[34567]86-*-solaris2*): Also handle x86_64-*-solaris2.1[0-9]*.
	* configure.ac (i?86-*-solaris2*): Likewise.
	* configure: Regenerate.

	gcc/testsuite:
	PR target/39150
	* gcc.misc-tests/linkage.exp: Handle x86_64-*-solaris2.1[0-9]*.

	toplevel:
	PR target/39150
	* configure.ac (i[3456789]86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	boehm-gc:
	PR target/39150
	* configure.ac (i?86-*-solaris2.[89]): Also accept
	x86_64-*-solaris2.1?.
	* configure: Regenerate.

	gnattools:
	PR target/39150
	* configure.ac (*86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libcpp:
	PR target/39150
	* configure.ac (host_wide_int): Handle x86_64-*-solaris2.1[0-9]
	like i[34567]86-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libgo:
	PR target/39150
	* config/libtool.m4: Handle x86_64-*-solaris2.1[0-9]* like
	i?86-*-solaris*.
	* configure: Regenerate.

	libjava:
	PR target/39150
	* configure.host (x86_64-*): Add -Usun to libgcj_flags.
	(x86_64-*-solaris2.1[0-9]*): New case.
	(i?86-*-solaris2*): Also accept x86_64-*-solaris2.1[0-9]*.

From-SVN: r175958
This commit is contained in:
Rainer Orth 2011-07-07 09:24:16 +00:00 committed by Rainer Orth
parent fcf7471a39
commit fbdd5d8715
35 changed files with 213 additions and 58 deletions

View File

@ -1,3 +1,10 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* configure.ac (i[3456789]86-*-solaris2*): Also accept
x86_64-*-solaris2.1[0-9]*.
* configure: Regenerate.
2011-06-29 Richard Sandiford <rdsandiford@googlemail.com> 2011-06-29 Richard Sandiford <rdsandiford@googlemail.com>
* MAINTAINERS (RTL optimizers): Add self. * MAINTAINERS (RTL optimizers): Add self.

View File

@ -1,3 +1,10 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* configure.ac (i?86-*-solaris2.[89]): Also accept
x86_64-*-solaris2.1?.
* configure: Regenerate.
2011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 2011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR libgcj/49451 PR libgcj/49451

2
boehm-gc/configure vendored
View File

@ -15163,7 +15163,7 @@ $as_echo "$as_me: WARNING: OpenBSD/Alpha without dlopen(). Shared library suppor
alpha*-*-linux*) alpha*-*-linux*)
machdep="alpha_mach_dep.lo" machdep="alpha_mach_dep.lo"
;; ;;
i?86-*-solaris2.[89] | i?86-*-solaris2.1?) i?86-*-solaris2.[89] | i?86-*-solaris2.1? | x86_64-*-solaris2.1?)
$as_echo "#define SOLARIS25_PROC_VDB_BUG_FIXED 1" >>confdefs.h $as_echo "#define SOLARIS25_PROC_VDB_BUG_FIXED 1" >>confdefs.h

View File

@ -400,7 +400,7 @@ case "$host" in
alpha*-*-linux*) alpha*-*-linux*)
machdep="alpha_mach_dep.lo" machdep="alpha_mach_dep.lo"
;; ;;
i?86-*-solaris2.[[89]] | i?86-*-solaris2.1?) i?86-*-solaris2.[[89]] | i?86-*-solaris2.1? | x86_64-*-solaris2.1?)
AC_DEFINE(SOLARIS25_PROC_VDB_BUG_FIXED,1,[PROC_VDB in Solaris 2.5 gives wrong values for dirty bits]) AC_DEFINE(SOLARIS25_PROC_VDB_BUG_FIXED,1,[PROC_VDB in Solaris 2.5 gives wrong values for dirty bits])
;; ;;
mipstx39-*-elf*) mipstx39-*-elf*)

2
configure vendored
View File

@ -3477,7 +3477,7 @@ case "${target}" in
i[3456789]86-*-sco*) i[3456789]86-*-sco*)
noconfigdirs="$noconfigdirs gprof target-libgloss" noconfigdirs="$noconfigdirs gprof target-libgloss"
;; ;;
i[3456789]86-*-solaris2*) i[3456789]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
noconfigdirs="$noconfigdirs target-libgloss" noconfigdirs="$noconfigdirs target-libgloss"
;; ;;
i[3456789]86-*-sysv4*) i[3456789]86-*-sysv4*)

View File

@ -923,7 +923,7 @@ case "${target}" in
i[[3456789]]86-*-sco*) i[[3456789]]86-*-sco*)
noconfigdirs="$noconfigdirs gprof target-libgloss" noconfigdirs="$noconfigdirs gprof target-libgloss"
;; ;;
i[[3456789]]86-*-solaris2*) i[[3456789]]86-*-solaris2* | x86_64-*-solaris2.1[[0-9]]*)
noconfigdirs="$noconfigdirs target-libgloss" noconfigdirs="$noconfigdirs target-libgloss"
;; ;;
i[[3456789]]86-*-sysv4*) i[[3456789]]86-*-sysv4*)

View File

@ -1,3 +1,33 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* configure.ac (gcc_cv_as_hidden): Also accept
x86_64-*-solaris2.1[0-9]*.
(gcc_cv_as_cfi_directive): Likewise.
(gcc_cv_as_comdat_group_group): Likewise.
(set_have_as_tls): Likewise.
* configure: Regenerate.
* config.gcc (i[34567]86-*-solaris2*): Also handle
x86_64-*-solaris2.1[0-9]*.
* config.host (i[34567]86-*-solaris2*): Likewise.
* config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Remove.
* config/sol2-bi.h (ASM_CPU_DEFAULT_SPEC): Redefine.
[USE_GLD] (ARCH_DEFAULT_EMULATION): Define.
(TARGET_LD_EMULATION): Use it.
* config/i386/sol2.h (ASM_CPU_DEFAULT_SPEC): Define.
(SUBTARGET_CPU_EXTRA_SPECS): Add asm_cpu_default.
* config/i386/sol2-bi.h (ASM_CPU32_DEFAULT_SPEC): Define.
(ASM_CPU64_DEFAULT_SPEC): Define.
(ASM_CPU_SPEC): Use %(asm_cpu_default).
(ASM_SPEC): Redefine.
(DEFAULT_ARCH32_P): Define using TARGET_64BIT_DEFAULT.
* config/host-solaris.c [__x86_64__] (TRY_EMPTY_VM_SPACE): Reduce.
* doc/install.texi (Specific, amd64-*-solaris2.1[0-9]*):
Document.
(Specific, i?86-*-solaris2.10): Mention x86_64-*-solaris2.1[0-9]*
configuration.
(Specific, x86_64-*-solaris2.1[0-9]*): Document.
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/sol2.h (ASM_SPEC): Split into ... * config/sol2.h (ASM_SPEC): Split into ...

View File

@ -1,3 +1,8 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* gcc-interface/Makefile.in: Handle x86_64-solaris2.
2011-07-06 Richard Guenther <rguenther@suse.de> 2011-07-06 Richard Guenther <rguenther@suse.de>
* gcc-interface/misc.c (gnat_init): * gcc-interface/misc.c (gnat_init):

View File

@ -1011,8 +1011,8 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(targ))),)
endif endif
endif endif
ifeq ($(strip $(filter-out %86 solaris2%,$(arch) $(osys))),) ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(arch) $(osys))),)
LIBGNAT_TARGET_PAIRS = \ LIBGNAT_TARGET_PAIRS_COMMON = \
a-numaux.adb<a-numaux-x86.adb \ a-numaux.adb<a-numaux-x86.adb \
a-numaux.ads<a-numaux-x86.ads \ a-numaux.ads<a-numaux-x86.ads \
a-intnam.ads<a-intnam-solaris.ads \ a-intnam.ads<a-intnam-solaris.ads \
@ -1028,13 +1028,29 @@ ifeq ($(strip $(filter-out %86 solaris2%,$(arch) $(osys))),)
s-tpopsp.adb<s-tpopsp-solaris.adb \ s-tpopsp.adb<s-tpopsp-solaris.adb \
g-soliop.ads<g-soliop-solaris.ads g-soliop.ads<g-soliop-solaris.ads
ifeq ($(strip $(MULTISUBDIR)),/amd64) LIBGNAT_TARGET_PAIRS_32 = \
LIBGNAT_TARGET_PAIRS += \
system.ads<system-solaris-x86_64.ads
else
LIBGNAT_TARGET_PAIRS += \
g-bytswa.adb<g-bytswa-x86.adb \ g-bytswa.adb<g-bytswa-x86.adb \
system.ads<system-solaris-x86.ads system.ads<system-solaris-x86.ads
LIBGNAT_TARGET_PAIRS_64 = \
system.ads<system-solaris-x86_64.ads
ifeq ($(strip $(filter-out %86 solaris2%,$(arch) $(osys))),)
ifeq ($(strip $(MULTISUBDIR)),/amd64)
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_64)
else
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_32)
endif
else
ifeq ($(strip $(MULTISUBDIR)),/32)
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_32)
else
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_64)
endif
endif endif
TOOLS_TARGET_PAIRS=mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb TOOLS_TARGET_PAIRS=mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb

View File

@ -1369,7 +1369,7 @@ i[34567]86-*-rtems*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h newlib-stdint.h" tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h newlib-stdint.h"
tmake_file="${tmake_file} i386/t-rtems t-rtems" tmake_file="${tmake_file} i386/t-rtems t-rtems"
;; ;;
i[34567]86-*-solaris2*) i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
tm_file="${tm_file} i386/unix.h i386/att.h ${sol2_tm_file}" tm_file="${tm_file} i386/unix.h i386/att.h ${sol2_tm_file}"
# Set default arch_32 to pentium4, tune_32 to generic like the other # Set default arch_32 to pentium4, tune_32 to generic like the other
# i386 targets, although config.guess defaults to i386-pc-solaris2*. # i386 targets, although config.guess defaults to i386-pc-solaris2*.
@ -3529,7 +3529,7 @@ case ${target} in
i[34567]86-*-gnu*) i[34567]86-*-gnu*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-linux" tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-linux"
;; ;;
i[34567]86-*-solaris2*) i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp" tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"
;; ;;
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*) i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)

View File

@ -197,7 +197,7 @@ case ${host} in
i370-*-opened* | i370-*-mvs* ) # IBM 360/370/390 Architecture i370-*-opened* | i370-*-mvs* ) # IBM 360/370/390 Architecture
host_xm_defines='FATAL_EXIT_CODE=12' host_xm_defines='FATAL_EXIT_CODE=12'
;; ;;
i[34567]86-*-solaris2*) i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
out_host_hook_obj=host-solaris.o out_host_hook_obj=host-solaris.o
host_xmake_file="${host_xmake_file} x-solaris" host_xmake_file="${host_xmake_file} x-solaris"
;; ;;

View File

@ -73,7 +73,7 @@ mmap_fixed (void *addr, size_t len, int prot, int flags, int fd, off_t off)
#elif defined(__sparc__) #elif defined(__sparc__)
# define TRY_EMPTY_VM_SPACE 0x80000000 # define TRY_EMPTY_VM_SPACE 0x80000000
#elif defined(__x86_64__) #elif defined(__x86_64__)
# define TRY_EMPTY_VM_SPACE 0x8000000000000000 # define TRY_EMPTY_VM_SPACE 0x80000000000
#elif defined(__i386__) #elif defined(__i386__)
# define TRY_EMPTY_VM_SPACE 0xB0000000 # define TRY_EMPTY_VM_SPACE 0xB0000000
#else #else

View File

@ -31,13 +31,17 @@ along with GCC; see the file COPYING3. If not see
/* GNU as understands --32 and --64, but the native Solaris /* GNU as understands --32 and --64, but the native Solaris
assembler requires -xarch=generic or -xarch=generic64 instead. */ assembler requires -xarch=generic or -xarch=generic64 instead. */
#undef ASM_CPU_SPEC
#ifdef USE_GAS #ifdef USE_GAS
#define ASM_CPU_SPEC "%{m32:--32} %{m64:--64}" #define ASM_CPU32_DEFAULT_SPEC "--32"
#define ASM_CPU64_DEFAULT_SPEC "--64"
#else #else
#define ASM_CPU_SPEC "%{m32:-xarch=generic} %{m64:-xarch=generic64}" #define ASM_CPU32_DEFAULT_SPEC "-xarch=generic"
#define ASM_CPU64_DEFAULT_SPEC "-xarch=generic64"
#endif #endif
#undef ASM_CPU_SPEC
#define ASM_CPU_SPEC "%(asm_cpu_default)"
/* Don't let i386/x86-64.h override i386/sol2.h version. Still cannot use /* Don't let i386/x86-64.h override i386/sol2.h version. Still cannot use
-K PIC with the Solaris 10+ assembler, it gives many warnings: -K PIC with the Solaris 10+ assembler, it gives many warnings:
Absolute relocation is used for symbol "<symbol>" */ Absolute relocation is used for symbol "<symbol>" */
@ -47,8 +51,7 @@ along with GCC; see the file COPYING3. If not see
/* We do not need to search a special directory for startup files. */ /* We do not need to search a special directory for startup files. */
#undef MD_STARTFILE_PREFIX #undef MD_STARTFILE_PREFIX
/* No 64-bit default configurations. */ #define DEFAULT_ARCH32_P !TARGET_64BIT_DEFAULT
#define DEFAULT_ARCH32_P 1
#define ARCH64_SUBDIR "amd64" #define ARCH64_SUBDIR "amd64"

View File

@ -59,6 +59,8 @@ along with GCC; see the file COPYING3. If not see
#undef CPP_SPEC #undef CPP_SPEC
#define CPP_SPEC "%{,assembler-with-cpp:-P} %(cpp_subtarget)" #define CPP_SPEC "%{,assembler-with-cpp:-P} %(cpp_subtarget)"
#define ASM_CPU_DEFAULT_SPEC ""
#define ASM_CPU_SPEC "" #define ASM_CPU_SPEC ""
/* Don't include ASM_PIC_SPEC. While the Solaris 8 and 9 assembler accepts /* Don't include ASM_PIC_SPEC. While the Solaris 8 and 9 assembler accepts
@ -70,7 +72,8 @@ along with GCC; see the file COPYING3. If not see
#define SUBTARGET_CPU_EXTRA_SPECS \ #define SUBTARGET_CPU_EXTRA_SPECS \
{ "cpp_subtarget", CPP_SUBTARGET_SPEC }, \ { "cpp_subtarget", CPP_SUBTARGET_SPEC }, \
{ "asm_cpu", ASM_CPU_SPEC } { "asm_cpu", ASM_CPU_SPEC }, \
{ "asm_cpu_default", ASM_CPU_DEFAULT_SPEC }, \
#undef SUBTARGET_EXTRA_SPECS #undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \ #define SUBTARGET_EXTRA_SPECS \

View File

@ -56,6 +56,16 @@
#define DEF_ARCH64_SPEC(__str) "%{!m32:" __str "}" #define DEF_ARCH64_SPEC(__str) "%{!m32:" __str "}"
#endif #endif
#undef ASM_CPU_DEFAULT_SPEC
#define ASM_CPU_DEFAULT_SPEC \
(DEFAULT_ARCH32_P ? "\
%{m64:" ASM_CPU64_DEFAULT_SPEC "} \
%{!m64:" ASM_CPU32_DEFAULT_SPEC "} \
" : "\
%{m32:" ASM_CPU32_DEFAULT_SPEC "} \
%{!m32:" ASM_CPU64_DEFAULT_SPEC "} \
")
/* This should be the same as LINK_ARCH32_SPEC_BASE, except with /* This should be the same as LINK_ARCH32_SPEC_BASE, except with
ARCH64_SUBDIR appended to the paths and /usr/ccs/lib is no longer ARCH64_SUBDIR appended to the paths and /usr/ccs/lib is no longer
necessary. */ necessary. */
@ -78,8 +88,14 @@
#endif #endif
#ifdef USE_GLD #ifdef USE_GLD
#if DEFAULT_ARCH32_P
#define ARCH_DEFAULT_EMULATION ARCH32_EMULATION
#else
#define ARCH_DEFAULT_EMULATION ARCH64_EMULATION
#endif
#define TARGET_LD_EMULATION "%{m32:-m " ARCH32_EMULATION "}" \ #define TARGET_LD_EMULATION "%{m32:-m " ARCH32_EMULATION "}" \
"%{m64:-m " ARCH64_EMULATION "} " "%{m64:-m " ARCH64_EMULATION "}" \
"%{!m32:%{!m64:-m " ARCH_DEFAULT_EMULATION "}} "
#else #else
#define TARGET_LD_EMULATION "" #define TARGET_LD_EMULATION ""
#endif #endif

View File

@ -205,16 +205,6 @@ along with GCC; see the file COPYING3. If not see
%{!mcpu*:%(asm_cpu_default)} \ %{!mcpu*:%(asm_cpu_default)} \
" "
#undef ASM_CPU_DEFAULT_SPEC
#define ASM_CPU_DEFAULT_SPEC \
(DEFAULT_ARCH32_P ? "\
%{m64:" ASM_CPU64_DEFAULT_SPEC "} \
%{!m64:" ASM_CPU32_DEFAULT_SPEC "} \
" : "\
%{m32:" ASM_CPU32_DEFAULT_SPEC "} \
%{!m32:" ASM_CPU64_DEFAULT_SPEC "} \
")
#undef ASM_ARCH32_SPEC #undef ASM_ARCH32_SPEC
#define ASM_ARCH32_SPEC "" #define ASM_ARCH32_SPEC ""

12
gcc/configure vendored
View File

@ -21784,7 +21784,7 @@ foobar:' > conftest.s
# Solaris 9/x86 as incorrectly emits an alias for a hidden symbol with # Solaris 9/x86 as incorrectly emits an alias for a hidden symbol with
# STV_HIDDEN, so disable .hidden support if so. # STV_HIDDEN, so disable .hidden support if so.
case "${target}" in case "${target}" in
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
if test x$gcc_cv_as != x && test x$gcc_cv_objdump != x; then if test x$gcc_cv_as != x && test x$gcc_cv_objdump != x; then
cat > conftest.s <<EOF cat > conftest.s <<EOF
.globl hidden .globl hidden
@ -22099,7 +22099,7 @@ else
gcc_cv_as_cfi_directive=no gcc_cv_as_cfi_directive=no
else else
case "$target" in case "$target" in
i?86-*-solaris2.1[0-9]*) i?86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*)
# On Solaris/x86, make sure that GCC and gas agree on using # On Solaris/x86, make sure that GCC and gas agree on using
# read-only .eh_frame sections for 64-bit. # read-only .eh_frame sections for 64-bit.
if $gcc_cv_as --64 -o conftest.o conftest.s > /dev/null 2>&1 && \ if $gcc_cv_as --64 -o conftest.o conftest.s > /dev/null 2>&1 && \
@ -22530,7 +22530,7 @@ $as_echo "$gcc_cv_as_comdat_group_percent" >&6; }
foo: foo:
' '
;; ;;
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
conftest_s=' conftest_s='
.group foo,.text%foo,#comdat .group foo,.text%foo,#comdat
.section .text%foo, "ax", @progbits .section .text%foo, "ax", @progbits
@ -22760,12 +22760,16 @@ foo: .long 25
tls_first_major=2 tls_first_major=2
tls_first_minor=17 tls_first_minor=17
;; ;;
i[34567]86-*-*) i[34567]86-*-* | x86_64-*-solaris2.1[0-9]*)
case "$target" in case "$target" in
i[34567]86-*-solaris2.*) i[34567]86-*-solaris2.*)
on_solaris=yes on_solaris=yes
tga_func=___tls_get_addr tga_func=___tls_get_addr
;; ;;
x86_64-*-solaris2.1[0-9]*)
on_solaris=yes
tga_func=__tls_get_addr
;;
*) *)
on_solaris=no on_solaris=no
;; ;;

View File

@ -2173,7 +2173,7 @@ foobar:],[
# Solaris 9/x86 as incorrectly emits an alias for a hidden symbol with # Solaris 9/x86 as incorrectly emits an alias for a hidden symbol with
# STV_HIDDEN, so disable .hidden support if so. # STV_HIDDEN, so disable .hidden support if so.
case "${target}" in case "${target}" in
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[[0-9]]*)
if test x$gcc_cv_as != x && test x$gcc_cv_objdump != x; then if test x$gcc_cv_as != x && test x$gcc_cv_objdump != x; then
cat > conftest.s <<EOF cat > conftest.s <<EOF
.globl hidden .globl hidden
@ -2428,7 +2428,7 @@ gcc_GAS_CHECK_FEATURE([cfi directives], gcc_cv_as_cfi_directive,
gcc_cv_as_cfi_directive=no gcc_cv_as_cfi_directive=no
else else
case "$target" in case "$target" in
i?86-*-solaris2.1[[0-9]]*) i?86-*-solaris2.1[[0-9]]* | x86_64-*-solaris2.1[[0-9]]*)
# On Solaris/x86, make sure that GCC and gas agree on using # On Solaris/x86, make sure that GCC and gas agree on using
# read-only .eh_frame sections for 64-bit. # read-only .eh_frame sections for 64-bit.
if $gcc_cv_as --64 -o conftest.o conftest.s > /dev/null 2>&1 && \ if $gcc_cv_as --64 -o conftest.o conftest.s > /dev/null 2>&1 && \
@ -2632,7 +2632,7 @@ else
foo: foo:
' '
;; ;;
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[[0-9]]*)
conftest_s=' conftest_s='
.group foo,.text%foo,#comdat .group foo,.text%foo,#comdat
.section .text%foo, "ax", @progbits .section .text%foo, "ax", @progbits
@ -2810,12 +2810,16 @@ foo: .long 25
tls_first_major=2 tls_first_major=2
tls_first_minor=17 tls_first_minor=17
;; ;;
i[34567]86-*-*) i[34567]86-*-* | x86_64-*-solaris2.1[0-9]*)
case "$target" in case "$target" in
i[34567]86-*-solaris2.*) i[34567]86-*-solaris2.*)
on_solaris=yes on_solaris=yes
tga_func=___tls_get_addr tga_func=___tls_get_addr
;; ;;
x86_64-*-solaris2.1[0-9]*)
on_solaris=yes
tga_func=__tls_get_addr
;;
*) *)
on_solaris=no on_solaris=no
;; ;;

View File

@ -2957,6 +2957,8 @@ information are.
@item @item
@uref{#alpha-dec-osf51,,alpha*-dec-osf5.1} @uref{#alpha-dec-osf51,,alpha*-dec-osf5.1}
@item @item
@uref{#amd64-x-solaris210,,amd64-*-solaris2.10}
@item
@uref{#arm-x-elf,,arm-*-elf} @uref{#arm-x-elf,,arm-*-elf}
@item @item
@uref{#avr,,avr} @uref{#avr,,avr}
@ -3057,6 +3059,8 @@ information are.
@item @item
@uref{#x86-64-x-x,,x86_64-*-*, amd64-*-*} @uref{#x86-64-x-x,,x86_64-*-*, amd64-*-*}
@item @item
@uref{#x86-64-x-solaris210,,x86_64-*-solaris2.1[0-9]*}
@item
@uref{#xtensa-x-elf,,xtensa*-*-elf} @uref{#xtensa-x-elf,,xtensa*-*-elf}
@item @item
@uref{#xtensa-x-linux,,xtensa*-*-linux*} @uref{#xtensa-x-linux,,xtensa*-*-linux*}
@ -3154,6 +3158,13 @@ provide a fix shortly.
@c FIXME: still applicable? @c FIXME: still applicable?
@html
<hr />
@end html
@heading @anchor{amd64-x-solaris210}amd64-*-solaris2.1[0-9]*
This is a synonym for @samp{x86_64-*-solaris2.1[0-9]*}.
@html @html
<hr /> <hr />
@end html @end html
@ -3537,10 +3548,10 @@ you have the patch installed, you can configure GCC with an appropriate
@end html @end html
@heading @anchor{ix86-x-solaris210}i?86-*-solaris2.10 @heading @anchor{ix86-x-solaris210}i?86-*-solaris2.10
Use this for Solaris 10 or later on x86 and x86-64 systems. This Use this for Solaris 10 or later on x86 and x86-64 systems. This
configuration is supported by GCC 4.0 and later versions only. Unlike configuration is supported by GCC 4.0 and later versions only. Starting
@samp{sparcv9-sun-solaris2*}, there is no corresponding 64-bit with GCC 4.7, there is also a 64-bit @samp{amd64-*-solaris2.1[0-9]*} or
configuration like @samp{amd64-*-solaris2*} or @samp{x86_64-*-solaris2*}. @samp{x86_64-*-solaris2.1[0-9]*} configuration that corresponds to
@c FIXME: will there ever be? @samp{sparcv9-sun-solaris2*}.
It is recommended that you configure GCC to use the GNU assembler, in It is recommended that you configure GCC to use the GNU assembler, in
@file{/usr/sfw/bin/gas}. The versions included in Solaris 10, from GNU @file{/usr/sfw/bin/gas}. The versions included in Solaris 10, from GNU
@ -4397,6 +4408,22 @@ GCC supports the x86-64 architecture implemented by the AMD64 processor
On GNU/Linux the default is a bi-arch compiler which is able to generate On GNU/Linux the default is a bi-arch compiler which is able to generate
both 64-bit x86-64 and 32-bit x86 code (via the @option{-m32} switch). both 64-bit x86-64 and 32-bit x86 code (via the @option{-m32} switch).
@html
<hr />
@end html
@heading @anchor{x86-64-x-solaris2.10}x86_64-*-solaris2.1[0-9]*
GCC also supports the x86-64 architecture implemented by the AMD64
processor (@samp{amd64-*-*} is an alias for @samp{x86_64-*-*}) on
Solaris 10 or later. Unlike other systems, without special options a
bi-arch compiler is built which generates 32-bit code by default, but
can generate 64-bit x86-64 code with the @option{-m64} switch. Since
GCC 4.7, there is also configuration that defaults to 64-bit code, but
can generate 32-bit code with @option{-m32}. To configure and build
this way, you have to provide all support libraries like @file{libgmp}
as 64-bit code, configure with @option{--target=x86_64-pc-solaris2.1x}
and @samp{CC=gcc -m64}.
@html @html
<hr /> <hr />
@end html @end html

View File

@ -1,3 +1,8 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* gcc.misc-tests/linkage.exp: Handle x86_64-*-solaris2.1[0-9]*.
2011-07-06 Michael Meissner <meissner@linux.vnet.ibm.com> 2011-07-06 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/no-r11-1.c: New test for -mr11, -mno-r11. * gcc.target/powerpc/no-r11-1.c: New test for -mr11, -mno-r11.

View File

@ -46,7 +46,8 @@ if { [isnative] && ![is_remote host] } then {
set native_cflags "-xarch=v9" set native_cflags "-xarch=v9"
} }
} }
if [istarget "i?86*-*-solaris2*"] { if {[istarget "i?86*-*-solaris2*"]
|| [istarget "x86_64-*-solaris2.1\[0-9\]*"]} {
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 ] {
set native_cflags "-xarch=amd64" set native_cflags "-xarch=amd64"

View File

@ -1,3 +1,10 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* configure.ac (*86-*-solaris2*): Also accept
x86_64-*-solaris2.1[0-9]*.
* configure: Regenerate.
2010-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 2010-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR other/46202 PR other/46202

2
gnattools/configure vendored
View File

@ -2041,7 +2041,7 @@ case "${target}" in
sparc-sun-solaris*) sparc-sun-solaris*)
TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb" TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb"
;; ;;
*86-*-solaris2*) *86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb" TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb"
;; ;;
*86-*-linux* \ *86-*-linux* \

View File

@ -81,7 +81,7 @@ case "${target}" in
sparc-sun-solaris*) sparc-sun-solaris*)
TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb" TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb"
;; ;;
*86-*-solaris2*) *86-*-solaris2* | x86_64-*-solaris2.1[[0-9]]*)
TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb" TOOLS_TARGET_PAIRS="mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb"
;; ;;
*86-*-linux* \ *86-*-linux* \

View File

@ -1,3 +1,10 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* configure.ac (host_wide_int): Handle x86_64-*-solaris2.1[0-9]
like i[34567]86-*-solaris2.1[0-9]*.
* configure: Regenerate.
2011-06-16 Jason Merrill <jason@redhat.com> 2011-06-16 Jason Merrill <jason@redhat.com>
PR c++/45399 PR c++/45399

2
libcpp/configure vendored
View File

@ -7095,7 +7095,7 @@ case $target in
ia64-*-* | \ ia64-*-* | \
hppa*64*-*-* | \ hppa*64*-*-* | \
i[34567]86-*-darwin* | \ i[34567]86-*-darwin* | \
i[34567]86-*-solaris2.1[0-9]* | \ i[34567]86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]* | \
i[34567]86-w64-mingw* | \ i[34567]86-w64-mingw* | \
mips*-*-* | \ mips*-*-* | \
mmix-*-* | \ mmix-*-* | \

View File

@ -145,7 +145,7 @@ case $target in
ia64-*-* | \ ia64-*-* | \
hppa*64*-*-* | \ hppa*64*-*-* | \
i[34567]86-*-darwin* | \ i[34567]86-*-darwin* | \
i[34567]86-*-solaris2.1[0-9]* | \ i[34567]86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]* | \
i[34567]86-w64-mingw* | \ i[34567]86-w64-mingw* | \
mips*-*-* | \ mips*-*-* | \
mmix-*-* | \ mmix-*-* | \

View File

@ -1,3 +1,12 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* config.host (*-*-solaris2*): Handle x86_64-*-solaris2.1[0-9]*
like i?86-*-solaris2.1[0-9]*.
(i[34567]86-*-solaris2*): Also handle x86_64-*-solaris2.1[0-9]*.
* configure.ac (i?86-*-solaris2*): Likewise.
* configure: Regenerate.
2011-07-06 Thomas Schwinge <thomas@schwinge.name> 2011-07-06 Thomas Schwinge <thomas@schwinge.name>
* config.host (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu) * config.host (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu)

View File

@ -188,7 +188,7 @@ case ${host} in
tmake_file="$tmake_file $cpu_type/t-sol2" tmake_file="$tmake_file $cpu_type/t-sol2"
extra_parts="gmon.o crtbegin.o crtend.o" extra_parts="gmon.o crtbegin.o crtend.o"
case ${host} in case ${host} in
i?86-*-solaris2.1[0-9]*) i?86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*)
# Solaris 10+/x86 provides crt1.o, crti.o, crtn.o, and gcrt1.o as # Solaris 10+/x86 provides crt1.o, crti.o, crtn.o, and gcrt1.o as
# part of the base system. # part of the base system.
;; ;;
@ -386,7 +386,7 @@ i[34567]86-*-rtems*)
extra_parts="crtbegin.o crtend.o crti.o crtn.o" extra_parts="crtbegin.o crtend.o crti.o crtn.o"
tmake_file="${tmake_file} t-crtin i386/t-softfp i386/t-crtstuff t-rtems" tmake_file="${tmake_file} t-crtin i386/t-softfp i386/t-crtstuff t-rtems"
;; ;;
i[34567]86-*-solaris2*) i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
tmake_file="$tmake_file i386/t-crtfm" tmake_file="$tmake_file i386/t-crtfm"
extra_parts="$extra_parts crtfastmath.o" extra_parts="$extra_parts crtfastmath.o"
md_unwind_header=i386/sol2-unwind.h md_unwind_header=i386/sol2-unwind.h
@ -700,7 +700,7 @@ i[34567]86-*-darwin* | x86_64-*-darwin* | \
i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \ i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
i[34567]86-*-linux* | x86_64-*-linux* | \ i[34567]86-*-linux* | x86_64-*-linux* | \
i[34567]86-*-gnu* | \ i[34567]86-*-gnu* | \
i[34567]86-*-solaris2* | \ i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]* | \
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw* | \ i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw* | \
i[34567]86-*-freebsd* | x86_64-*-freebsd*) i[34567]86-*-freebsd* | x86_64-*-freebsd*)
if test "${host_address}" = 32; then if test "${host_address}" = 32; then

2
libgcc/configure vendored
View File

@ -3813,7 +3813,7 @@ esac
# Link with -nostartfiles -nodefaultlibs since neither are present while # Link with -nostartfiles -nodefaultlibs since neither are present while
# building libgcc. # building libgcc.
case ${host} in case ${host} in
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
cat > conftest.s <<EOF cat > conftest.s <<EOF
.section .eh_frame,"a",@unwind .section .eh_frame,"a",@unwind
.zero 4 .zero 4

View File

@ -207,7 +207,7 @@ esac
# Link with -nostartfiles -nodefaultlibs since neither are present while # Link with -nostartfiles -nodefaultlibs since neither are present while
# building libgcc. # building libgcc.
case ${host} in case ${host} in
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[[0-9]]*)
cat > conftest.s <<EOF cat > conftest.s <<EOF
.section .eh_frame,"a",@unwind .section .eh_frame,"a",@unwind
.zero 4 .zero 4

View File

@ -1296,7 +1296,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
case $lt_cv_prog_gnu_ld in case $lt_cv_prog_gnu_ld in
yes*) yes*)
case $host in case $host in
i?86-*-solaris*) i?86-*-solaris* | x86_64-*-solaris2.1[[0-9]]*)
LD="${LD-ld} -m elf_x86_64" LD="${LD-ld} -m elf_x86_64"
;; ;;
sparc*-*-solaris*) sparc*-*-solaris*)

2
libgo/configure vendored
View File

@ -6422,7 +6422,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
case $lt_cv_prog_gnu_ld in case $lt_cv_prog_gnu_ld in
yes*) yes*)
case $host in case $host in
i?86-*-solaris*) i?86-*-solaris* | x86_64-*-solaris2.1[0-9]*)
LD="${LD-ld} -m elf_x86_64" LD="${LD-ld} -m elf_x86_64"
;; ;;
sparc*-*-solaris*) sparc*-*-solaris*)

View File

@ -1,3 +1,10 @@
2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/39150
* configure.host (x86_64-*): Add -Usun to libgcj_flags.
(x86_64-*-solaris2.1[0-9]*): New case.
(i?86-*-solaris2*): Also accept x86_64-*-solaris2.1[0-9]*.
2011-06-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 2011-06-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR libgcj/49314 PR libgcj/49314

View File

@ -141,6 +141,9 @@ case "${host}" in
libgcj_flags="${libgcj_flags} -ffloat-store" ;; libgcj_flags="${libgcj_flags} -ffloat-store" ;;
esac esac
libgcj_flags="${libgcj_flags} -fomit-frame-pointer" libgcj_flags="${libgcj_flags} -fomit-frame-pointer"
# On Solaris we have defined 'sun' which later conflicts with
# namespace usage. So to work this away we use the below undefine.
libgcj_flags="${libgcj_flags} -Usun"
libgcj_cxxflags= libgcj_cxxflags=
libgcj_cflags= libgcj_cflags=
DIVIDESPEC=-fno-use-divide-subroutine DIVIDESPEC=-fno-use-divide-subroutine
@ -285,6 +288,10 @@ EOF
sysdeps_dir=i386 sysdeps_dir=i386
DIVIDESPEC=-f%{m32:no-}%{!m32:%{!m64:no-}}%{m64:}use-divide-subroutine DIVIDESPEC=-f%{m32:no-}%{!m32:%{!m64:no-}}%{m64:}use-divide-subroutine
;; ;;
x86_64-*-solaris2.1[0-9]* )
sysdeps_dir=i386
DIVIDESPEC=-f%{m32:no-}use-divide-subroutine
;;
mips-sgi-irix6* ) mips-sgi-irix6* )
can_unwind_signal=yes can_unwind_signal=yes
sysdeps_dir=mips sysdeps_dir=mips
@ -322,7 +329,7 @@ EOF
DIVIDESPEC=-fuse-divide-subroutine DIVIDESPEC=-fuse-divide-subroutine
CHECKREFSPEC=-fcheck-references CHECKREFSPEC=-fcheck-references
;; ;;
i?86-*-solaris2*) i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
can_unwind_signal=yes can_unwind_signal=yes
;; ;;
*-*-freebsd*) *-*-freebsd*)