individual processor configurations for sh-elf / sh-linux (Was: Re: SH Linux: remove big endian multilib)

Joern Rennecke joern.rennecke@superh.com
Tue Jun 11 09:44:00 GMT 2002


NIIBE Yutaka wrote:
> 
> Let me clarify things:
> 
> (1) Target sh-unknown-linux-gnu is multilibbed environment for
>         {sh3,sh3eb,sh4,sh4eb}-unknown-linux-gnu targets.
> 
> (2) Currently (with out our patches),
> 
>     GNU Compiler Collection doesn't support individual
>         {sh3,sh3eb,sh4,sh4eb}-unknown-linux-gnu target.
>     GNU C library doesn't support sh-unknown-linux-gnu (yet) target.
> 
> (3) Thus, when building GNU Compiler Collection for sh-unknown-linux-gnu,
>     it doesn't goes well.
> 
> For me, it seems that what you're going to do is make
>         sh-unknown-linux-gnu target to be sh3-unknown-linux-gnu target.
> 
> I think that if we agree the definition of (1), what we should do
> is solve (2), i.e., fix GCC or enhance GNU C library.

Does the attached patch work for you?

-- 
--------------------------
SuperH
2430 Aztec West / Almondsbury / BRISTOL / BS32 4AQ
T:+44 1454 462330
-------------- next part --------------
Tue Jun 11 17:06:51 2002  J"orn Rennecke <joern.rennecke@superh.com>

config.sub:
	* config.sub: Add support for sh[12], sh3e, sh[1234]le, sh3ele,
	shle, sh[1234]le, sh3ele, sh64le.

gcc:
	* config.gcc: Add support for sh[234]*-*-elf*, sh[2346lbe]*-*-linux*.
	* config/sh/linux.h (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT.
	* sh.h (SELECT_SH1, SELECT_SH2, SELECT_SH3, SELECT_SH3E): New macros.
	(SELECT_SH4_NOFPU, SELECT_SH4_SINGLE_ONLY, SELECT_SH4): Likewise.
	(SELECT_SH4_SINGLE, SELECT_SH5_64, SELECT_SH5_64_NOFPU): Likewise.
	(SELECT_SH5_32, SELECT_SH5_32_NOFPU, SELECT_SH5_COMPACT): Likewise.
	(SELECT_SH5_COMPACT_NOFPU): Likewise.
	(TARGET_SWITCHES): Use them.
	(TARGET_CPU_DEFAULT): Define if not already defined.
	(TARGET_DEFAULT): Use it.
	(LINK_DEFAULT_CPU_EMUL): Value now depends on TARGET_CPU_DEFAULT.
	* config/sh/t-linux (MULTILIB_OPTIONS): Use MULTILIB_ENDIAN.
	* config/sh/t-monolib: New file.

bfd:
	config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
	sh[1234]*-elf*.

ld:
	* configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.


Index: config.sub
===================================================================
RCS file: /cvs/gcc/gcc/config.sub,v
retrieving revision 1.66
diff -p -r1.66 config.sub
*** config.sub	22 May 2002 18:44:12 -0000	1.66
--- config.sub	11 Jun 2002 16:05:17 -0000
*************** case $basic_machine in
*** 246,252 ****
  	| pdp10 | pdp11 | pj | pjl \
  	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
  	| pyramid \
! 	| sh | sh[34] | sh[34]eb | shbe | shle | sh64 \
  	| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
  	| strongarm \
  	| tahoe | thumb | tic80 | tron \
--- 246,253 ----
  	| pdp10 | pdp11 | pj | pjl \
  	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
  	| pyramid \
! 	| sh | sh[1234] | sh3e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
! 	| sh64 | sh64le \
  	| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
  	| strongarm \
  	| tahoe | thumb | tic80 | tron \
*************** case $basic_machine in
*** 305,311 ****
  	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
  	| pyramid-* \
  	| romp-* | rs6000-* \
! 	| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* | sh64-* \
  	| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
  	| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
  	| tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
--- 306,313 ----
  	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
  	| pyramid-* \
  	| romp-* | rs6000-* \
! 	| sh-* | sh[1234]-* | sh3e-* | sh[34]eb-* | shbe-* \
! 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
  	| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
  	| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
  	| tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
*************** case $basic_machine in
*** 996,1002 ****
  	we32k)
  		basic_machine=we32k-att
  		;;
! 	sh3 | sh4 | sh3eb | sh4eb)
  		basic_machine=sh-unknown
  		;;
  	sh64)
--- 998,1004 ----
  	we32k)
  		basic_machine=we32k-att
  		;;
! 	sh3 | sh4 | sh3eb | sh4eb | sh[1234]le | sh3ele)
  		basic_machine=sh-unknown
  		;;
  	sh64)
Index: gcc/config.gcc
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config.gcc,v
retrieving revision 1.207
diff -p -r1.207 config.gcc
*** gcc/config.gcc	7 Jun 2002 23:31:04 -0000	1.207
--- gcc/config.gcc	11 Jun 2002 16:05:17 -0000
*************** s390x-*-linux*)
*** 2208,2214 ****
  		thread_file='posix'
  	fi
  	;;
! sh-*-elf* | shl*-*-elf* | sh64*-*-elf*)
  	tmake_file="sh/t-sh sh/t-elf"
  	case $machine in
  	shl* | sh64l*)
--- 2208,2214 ----
  		thread_file='posix'
  	fi
  	;;
! sh-*-elf* | sh[2346l]*-*-elf*)
  	tmake_file="sh/t-sh sh/t-elf"
  	case $machine in
  	shl* | sh64l*)
*************** sh-*-elf* | shl*-*-elf* | sh64*-*-elf*)
*** 2228,2233 ****
--- 2228,2241 ----
  			target_requires_64bit_host_wide_int=yes
  		fi
  		;;
+ 	sh4_single*)  target_cpu_default="SELECT_SH4_SINGLE" ;;
+ 	sh4*)  target_cpu_default="SELECT_SH4" ;;
+ 	sh3e*) target_cpu_default="SELECT_SH3E" ;;
+ 	sh3*)  target_cpu_default="SELECT_SH3" ;;
+ 	sh2*)  target_cpu_default="SELECT_SH2" ;;
+ 	esac
+ 	case $machine in
+ 	sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
  	esac
  	;;
  sh-*-rtemself*)
*************** sh-*-rtems*)
*** 2248,2261 ****
  	  thread_file='rtems'
  	fi
  	;;
! sh-*-linux*)
! 	tm_file="sh/little.h ${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
! 	tmake_file="sh/t-sh sh/t-elf sh/t-le sh/t-linux"
  	gas=yes gnu_ld=yes
  	if test x$enable_threads = xyes; then
  		thread_file='posix'
  	fi
  	float_format=sh
  	;;
  sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
    sh64-*-netbsd* | sh64l*-*-netbsd*)
--- 2256,2297 ----
  	  thread_file='rtems'
  	fi
  	;;
! sh-*-linux* | sh[2346lbe]*-*-linux*)
! 	tmake_file="sh/t-sh sh/t-elf sh/t-linux"
! 	case $machine in
! 	sh*be-*-* | sh*eb-*-*) ;;
! 	*)
! 		tm_file="sh/little.h ${tm_file}"
! 		tmake_file="${tmake_file} sh/t-le"
! 		;;
! 	esac
! 	tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
  	gas=yes gnu_ld=yes
  	if test x$enable_threads = xyes; then
  		thread_file='posix'
  	fi
  	float_format=sh
+ 	case $machine in
+ 	sh64*)
+ 		tmake_file="${tmake_file} sh/t-sh64"
+ 		tm_file="${tm_file} sh/sh64.h"
+ 		extra_headers="shmedia.h ushmedia.h sshmedia.h"
+ 		# Not strictly necessary to check this, but a good idea anyway.
+ 		if test $machine = $target; then
+ 			target_requires_64bit_host_wide_int=yes
+ 		fi
+ 		;;
+ 	sh4_single*) target_cpu_default="SELECT_SH4_SINGLE" ;;
+ 	sh4*) target_cpu_default="SELECT_SH4" ;;
+ 	sh3e[lb]e*) target_cpu_default="SELECT_SH3E" ;;
+ 	sh3e[lb]*) target_cpu_default="SELECT_SH3" ;;
+ 	sh3e*) target_cpu_default="SELECT_SH3E" ;;
+ 	sh3*) target_cpu_default="SELECT_SH3" ;;
+ 	sh2*) target_cpu_default="SELECT_SH2" ;;
+ 	esac
+ 	case $machine in
+ 	sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
+ 	esac
  	;;
  sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
    sh64-*-netbsd* | sh64l*-*-netbsd*)
Index: gcc/config/sh/coff.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sh/coff.h,v
retrieving revision 1.1
diff -p -r1.1 coff.h
*** gcc/config/sh/coff.h	28 May 2002 22:26:39 -0000	1.1
--- gcc/config/sh/coff.h	11 Jun 2002 16:05:17 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 78,88 ****
  
  #define TARGET_OBJFMT_CPP_BUILTINS()
  
! /* ??? The so-called ASM_OUTPUT_SECTION_NAME cleanup from August 3rd 2001
!    broke sh-coff, and was still neither reversed not fixed eight month after
!    this has been pointed out.  */
! /* Tell the braindead logic in defaults.h / libgcc2.c not to
!    refer to __EH_FRAME_BEGIN__, since we don't use crtstuff.c */
! #define HAS_INIT_SECTION
! /* And tell function.c that we don't actually have an init section.  */
! #define INVOKE__MAIN
--- 78,81 ----
  
  #define TARGET_OBJFMT_CPP_BUILTINS()
  
! #define DWARF2_UNWIND_INFO 0
Index: gcc/config/sh/linux.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sh/linux.h,v
retrieving revision 1.8
diff -p -r1.8 linux.h
*** gcc/config/sh/linux.h	28 May 2002 22:26:39 -0000	1.8
--- gcc/config/sh/linux.h	11 Jun 2002 16:05:17 -0000
*************** do { \
*** 39,45 ****
  
  #undef TARGET_DEFAULT
  #define TARGET_DEFAULT \
!   (SH3_BIT|SH2_BIT|SH1_BIT | USERMODE_BIT | TARGET_ENDIAN_DEFAULT)
  
  #undef SUBTARGET_LINK_EMUL_SUFFIX
  #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
--- 39,45 ----
  
  #undef TARGET_DEFAULT
  #define TARGET_DEFAULT \
!   (TARGET_CPU_DEFAULT | USERMODE_BIT | TARGET_ENDIAN_DEFAULT)
  
  #undef SUBTARGET_LINK_EMUL_SUFFIX
  #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
Index: gcc/config/sh/sh.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sh/sh.h,v
retrieving revision 1.148
diff -p -r1.148 sh.h
*** gcc/config/sh/sh.h	10 Jun 2002 17:15:13 -0000	1.148
--- gcc/config/sh/sh.h	11 Jun 2002 16:05:17 -0000
*************** extern int target_flags;
*** 252,290 ****
  /* Nonzero if we should prefer @GOT calls when generating PIC.  */
  #define TARGET_PREFERGOT	(target_flags & PREFERGOT_BIT)
  
  /* Reset all target-selection flags.  */
  #define TARGET_NONE -(SH1_BIT | SH2_BIT | SH3_BIT | SH3E_BIT | SH4_BIT \
  		      | HARD_SH4_BIT | FPU_SINGLE_BIT | SH5_BIT)
  
  #define TARGET_SWITCHES  			\
  { {"1",	        TARGET_NONE, "" },		\
!   {"1",	        SH1_BIT, "" },			\
    {"2",	        TARGET_NONE, "" },		\
!   {"2",	        SH2_BIT|SH1_BIT, "" },		\
    {"3",	        TARGET_NONE, "" },		\
!   {"3",	        SH3_BIT|SH2_BIT|SH1_BIT, "" },	\
    {"3e",	TARGET_NONE, "" },		\
!   {"3e",	SH3E_BIT|SH3_BIT|SH2_BIT|SH1_BIT|FPU_SINGLE_BIT, "" },	\
    {"4-single-only",	TARGET_NONE, "" },	\
!   {"4-single-only",	SH3E_BIT|SH3_BIT|SH2_BIT|SH1_BIT|HARD_SH4_BIT|FPU_SINGLE_BIT, "" },	\
    {"4-single",	TARGET_NONE, "" },		\
!   {"4-single",	SH4_BIT|SH3E_BIT|SH3_BIT|SH2_BIT|SH1_BIT|HARD_SH4_BIT|FPU_SINGLE_BIT, "" },\
    {"4-nofpu",	TARGET_NONE, "" },		\
!   {"4-nofpu",	SH3_BIT|SH2_BIT|SH1_BIT|HARD_SH4_BIT, "" },\
    {"4",	        TARGET_NONE, "" },		\
!   {"4",	        SH4_BIT|SH3E_BIT|SH3_BIT|SH2_BIT|SH1_BIT|HARD_SH4_BIT, "" }, \
    {"5-64media",	TARGET_NONE, "" },		\
!   {"5-64media", SH5_BIT|SH4_BIT, "Generate 64-bit SHmedia code" }, \
    {"5-64media-nofpu", TARGET_NONE, "" },	\
!   {"5-64media-nofpu", SH5_BIT, "Generate 64-bit FPU-less SHmedia code" }, \
    {"5-32media",	TARGET_NONE, "" },		\
!   {"5-32media", SH5_BIT|SH4_BIT|SH3E_BIT, "Generate 32-bit SHmedia code" }, \
    {"5-32media-nofpu", TARGET_NONE, "" },	\
!   {"5-32media-nofpu", SH5_BIT|SH3E_BIT, "Generate 32-bit FPU-less SHmedia code" }, \
    {"5-compact",	TARGET_NONE, "" },		\
!   {"5-compact",	SH5_BIT|SH4_BIT|SH3E_BIT|SH3_BIT|SH2_BIT|SH1_BIT|FPU_SINGLE_BIT, "Generate SHcompact code" }, \
    {"5-compact-nofpu", TARGET_NONE, "" },	\
!   {"5-compact-nofpu", SH5_BIT|SH3_BIT|SH2_BIT|SH1_BIT, "Generate FPU-less SHcompact code" }, \
    {"b",		-LITTLE_ENDIAN_BIT, "" },  	\
    {"bigtable", 	BIGTABLE_BIT, "" },		\
    {"dalign",  	DALIGN_BIT, "" },		\
--- 252,305 ----
  /* Nonzero if we should prefer @GOT calls when generating PIC.  */
  #define TARGET_PREFERGOT	(target_flags & PREFERGOT_BIT)
  
+ #define SELECT_SH1 (SH1_BIT)
+ #define SELECT_SH2 (SH2_BIT | SELECT_SH1)
+ #define SELECT_SH3 (SH3_BIT | SELECT_SH2)
+ #define SELECT_SH3E (SH3E_BIT | FPU_SINGLE_BIT | SELECT_SH3)
+ #define SELECT_SH4_NOFPU (HARD_SH4_BIT | SELECT_SH3)
+ #define SELECT_SH4_SINGLE_ONLY (HARD_SH4_BIT | SELECT_SH3E)
+ #define SELECT_SH4 (SH4_BIT|SH3E_BIT|HARD_SH4_BIT | SELECT_SH3)
+ #define SELECT_SH4_SINGLE (FPU_SINGLE_BIT | SELECT_SH4)
+ #define SELECT_SH5_64 (SH5_BIT | SH4_BIT)
+ #define SELECT_SH5_64_NOFPU (SH5_BIT)
+ #define SELECT_SH5_32 (SH5_BIT | SH4_BIT | SH3E_BIT)
+ #define SELECT_SH5_32_NOFPU (SH5_BIT | SH3E_BIT)
+ #define SELECT_SH5_COMPACT (SH5_BIT | SH4_BIT | SELECT_SH3E)
+ #define SELECT_SH5_COMPACT_NOFPU (SH5_BIT | SELECT_SH3)
+ 
  /* Reset all target-selection flags.  */
  #define TARGET_NONE -(SH1_BIT | SH2_BIT | SH3_BIT | SH3E_BIT | SH4_BIT \
  		      | HARD_SH4_BIT | FPU_SINGLE_BIT | SH5_BIT)
  
  #define TARGET_SWITCHES  			\
  { {"1",	        TARGET_NONE, "" },		\
!   {"1",	        SELECT_SH1, "" },			\
    {"2",	        TARGET_NONE, "" },		\
!   {"2",	        SELECT_SH2, "" },		\
    {"3",	        TARGET_NONE, "" },		\
!   {"3",	        SELECT_SH3, "" },	\
    {"3e",	TARGET_NONE, "" },		\
!   {"3e",	SELECT_SH3E, "" },	\
    {"4-single-only",	TARGET_NONE, "" },	\
!   {"4-single-only",	SELECT_SH4_SINGLE_ONLY, "" },	\
    {"4-single",	TARGET_NONE, "" },		\
!   {"4-single",	SELECT_SH4_SINGLE, "" },\
    {"4-nofpu",	TARGET_NONE, "" },		\
!   {"4-nofpu",	SELECT_SH4_NOFPU, "" },\
    {"4",	        TARGET_NONE, "" },		\
!   {"4",	        SELECT_SH4, "" }, \
    {"5-64media",	TARGET_NONE, "" },		\
!   {"5-64media", SELECT_SH5_64, "Generate 64-bit SHmedia code" }, \
    {"5-64media-nofpu", TARGET_NONE, "" },	\
!   {"5-64media-nofpu", SELECT_SH5_64_NOFPU, "Generate 64-bit FPU-less SHmedia code" }, \
    {"5-32media",	TARGET_NONE, "" },		\
!   {"5-32media", SELECT_SH5_32, "Generate 32-bit SHmedia code" }, \
    {"5-32media-nofpu", TARGET_NONE, "" },	\
!   {"5-32media-nofpu", SELECT_SH5_32_NOFPU, "Generate 32-bit FPU-less SHmedia code" }, \
    {"5-compact",	TARGET_NONE, "" },		\
!   {"5-compact",	SELECT_SH5_COMPACT, "Generate SHcompact code" }, \
    {"5-compact-nofpu", TARGET_NONE, "" },	\
!   {"5-compact-nofpu", SELECT_SH5_COMPACT_NOFPU, "Generate FPU-less SHcompact code" }, \
    {"b",		-LITTLE_ENDIAN_BIT, "" },  	\
    {"bigtable", 	BIGTABLE_BIT, "" },		\
    {"dalign",  	DALIGN_BIT, "" },		\
*************** extern int target_flags;
*** 312,318 ****
  #define TARGET_ENDIAN_DEFAULT 0
  #endif
  
! #define TARGET_DEFAULT  (SH1_BIT|TARGET_ENDIAN_DEFAULT)
  
  #define CPP_SPEC " %(subtarget_cpp_spec) "
  
--- 327,337 ----
  #define TARGET_ENDIAN_DEFAULT 0
  #endif
  
! #ifndef TARGET_CPU_DEFAULT
! #define TARGET_CPU_DEFAULT SELECT_SH1
! #endif
! 
! #define TARGET_DEFAULT  (TARGET_CPU_DEFAULT|TARGET_ENDIAN_DEFAULT)
  
  #define CPP_SPEC " %(subtarget_cpp_spec) "
  
*************** extern int target_flags;
*** 344,350 ****
--- 363,379 ----
  #endif
  
  #define LINK_EMUL_PREFIX "sh%{ml:l}"
+ 
+ #if TARGET_CPU_DEFAULT & SH5_BIT
+ #if TARGET_CPU_DEFAULT & SH3E_BIT
+ #define LINK_DEFAULT_CPU_EMUL "32"
+ #else
+ #define LINK_DEFAULT_CPU_EMUL "64"
+ #endif /* SH3E_BIT */
+ #else
  #define LINK_DEFAULT_CPU_EMUL ""
+ #endif /* SH5_BIT */
+ 
  #define SUBTARGET_LINK_EMUL_SUFFIX ""
  #define SUBTARGET_LINK_SPEC ""
  
Index: gcc/config/sh/t-linux
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sh/t-linux,v
retrieving revision 1.4
diff -p -r1.4 t-linux
*** gcc/config/sh/t-linux	28 May 2002 22:26:43 -0000	1.4
--- gcc/config/sh/t-linux	11 Jun 2002 16:05:17 -0000
*************** LIB1ASMFUNCS_CACHE = _ic_invalidate
*** 3,9 ****
  
  LIB2FUNCS_EXTRA=
  
! MULTILIB_OPTIONS += m3e/m4
  MULTILIB_DIRNAMES= 
  MULTILIB_MATCHES = 
  
--- 3,9 ----
  
  LIB2FUNCS_EXTRA=
  
! MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4
  MULTILIB_DIRNAMES= 
  MULTILIB_MATCHES = 
  
Index: bfd/config.bfd
===================================================================
RCS file: /cvs/src/src/bfd/config.bfd,v
retrieving revision 1.99
diff -p -r1.99 config.bfd
*** bfd/config.bfd	5 Jun 2002 19:54:25 -0000	1.99
--- bfd/config.bfd	11 Jun 2002 16:05:25 -0000
*************** case "${targ}" in
*** 953,959 ****
      targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec"
      ;;
  
!   shl*-*-elf*)
      targ_defvec=bfd_elf32_shl_vec
      targ_selvecs="bfd_elf32_sh_vec shlcoff_vec shcoff_vec shlcoff_small_vec shcoff_small_vec"
  #ifdef BFD64
--- 953,959 ----
      targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec"
      ;;
  
!   shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf*)
      targ_defvec=bfd_elf32_shl_vec
      targ_selvecs="bfd_elf32_sh_vec shlcoff_vec shcoff_vec shlcoff_small_vec shcoff_small_vec"
  #ifdef BFD64
*************** case "${targ}" in
*** 961,967 ****
  #endif
      targ_underscore=yes
      ;;
!   sh-*-elf* | sh-*-rtemself*)
      targ_defvec=bfd_elf32_sh_vec
      targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
  #ifdef BFD64
--- 961,967 ----
  #endif
      targ_underscore=yes
      ;;
!   sh-*-elf* | sh[1234]*-elf* | sh-*-rtemself*)
      targ_defvec=bfd_elf32_sh_vec
      targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
  #ifdef BFD64
Index: ld/configure.tgt
===================================================================
RCS file: /cvs/src/src/ld/configure.tgt,v
retrieving revision 1.95
diff -p -r1.95 configure.tgt
*** ld/configure.tgt	5 Jun 2002 19:54:28 -0000	1.95
--- ld/configure.tgt	11 Jun 2002 16:05:25 -0000
*************** sh*-*-netbsdelf*)
*** 294,304 ****
  			targ_emul=shelf_nbsd
  			targ_extra_emuls=shlelf_nbsd
  			;;
! shle*-*-elf*)
  			targ_emul=shlelf
  			targ_extra_emuls="shelf shl sh"
  			;;
! sh-*-elf* | sh-*-rtemself*)
  			targ_emul=shelf
  			targ_extra_emuls="shlelf sh shl"
  			;;
--- 294,304 ----
  			targ_emul=shelf_nbsd
  			targ_extra_emuls=shlelf_nbsd
  			;;
! shle*-*-elf* | sh[1234]*le*-*-elf)
  			targ_emul=shlelf
  			targ_extra_emuls="shelf shl sh"
  			;;
! sh-*-elf* | sh[1234]*-*-elf | sh-*-rtemself*)
  			targ_emul=shelf
  			targ_extra_emuls="shlelf sh shl"
  			;;
*** /dev/null	Thu Aug 30 21:30:55 2001
--- gcc/config/sh/t-monolib	Tue Jun 11 14:37:21 2002
***************
*** 0 ****
--- 1 ----
+ MULTILIB_OPTIONS=


More information about the Binutils mailing list