public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* RFA: Issues to enable x86 defaulted multilib version
@ 2009-07-22 19:18 Kai Tietz
  2009-07-23  9:26 ` Paolo Bonzini
  0 siblings, 1 reply; 3+ messages in thread
From: Kai Tietz @ 2009-07-22 19:18 UTC (permalink / raw)
  To: gcc Mailing List

[-- Attachment #1: Type: text/plain, Size: 604 bytes --]

Hello,

Possibly somebody could give me a hint what the issue here is. In the
patch I attached, I enable multilib for x86 default mingw target
(i686-w64-mingw32). The core compilers are translating nicely. But
when it tries to build libgcc by -m64 it throws always the same error
message for any array : "error: size of array "..." is too large". I
am curious as the configuration patch is pretty equal to linux
version, but something I seem to miss here.

Thanks in advance,
Kai

-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

[-- Attachment #2: mingw-w64.diff --]
[-- Type: text/x-c, Size: 1948 bytes --]

Index: gcc/gcc/config/i386/mingw-w64.h
===================================================================
--- gcc.orig/gcc/config/i386/mingw-w64.h	2009-07-21 14:27:18.820073000 +0200
+++ gcc/gcc/config/i386/mingw-w64.h	2009-07-21 15:07:27.718073000 +0200
@@ -37,6 +37,10 @@
 #undef STANDARD_INCLUDE_DIR
 #define STANDARD_INCLUDE_DIR "/mingw/include"
 
+/* Adjust STANDARD_STARTFILE_PREFIX_1 pointing to lib.  */
+#undef STANDARD_STARTFILE_PREFIX_1
+#define STANDARD_STARTFILE_PREFIX_1 "/mingw/lib/"
+
 /* Enable multilib.  */
 
 #undef ASM_SPEC
@@ -67,3 +71,4 @@
   %{static:-Bstatic} %{!static:-Bdynamic} \
   %{shared|mdll: -e _DllMainCRTStartup@12 --enable-auto-image-base} \
   %(shared_libgcc_undefs)"
+
Index: gcc/gcc/config.gcc
===================================================================
--- gcc.orig/gcc/config.gcc	2009-07-21 14:27:18.825073000 +0200
+++ gcc/gcc/config.gcc	2009-07-21 17:19:12.217073000 +0200
@@ -1294,9 +1294,28 @@
 	use_gcc_stdint=wrap
 	;;
 i[34567]86-*-mingw* | x86_64-*-mingw*)
-	tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/mingw32.h"
+	tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h"
 	xm_file=i386/xm-mingw32.h
 	# This makes the logic if mingw's or the w64 feature set has to be used
+	if test x$enable_targets = xall; then
+		tm_defines="${tm_defines} TARGET_BI_ARCH=1"
+		need_64bit_hwint=yes
+		case X"${with_cpu}" in
+			Xgeneric|Xatom|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx)
+			;;
+		X)
+			if test x$with_cpu_64 = x; then
+				with_cpu_64=generic
+			fi
+			;;
+		*)
+			echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2
+			echo "generic atom core2 nocona x86-64 amdfam10 barcelona k8 opteron athlon64 athlon-fx" 1>&2
+			exit 1
+			;;
+		esac
+	fi
+	tm_file="${tm_file} i386/cygming.h i386/mingw32.h"
 	case ${target} in
 		*-w64-*)
 			tm_file="${tm_file} i386/mingw-w64.h"

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: RFA: Issues to enable x86 defaulted multilib version
  2009-07-22 19:18 RFA: Issues to enable x86 defaulted multilib version Kai Tietz
@ 2009-07-23  9:26 ` Paolo Bonzini
  2009-07-23 15:19   ` Kai Tietz
  0 siblings, 1 reply; 3+ messages in thread
From: Paolo Bonzini @ 2009-07-23  9:26 UTC (permalink / raw)
  To: Kai Tietz; +Cc: gcc Mailing List

On 07/22/2009 09:17 PM, Kai Tietz wrote:
> Hello,
>
> Possibly somebody could give me a hint what the issue here is. In the
> patch I attached, I enable multilib for x86 default mingw target
> (i686-w64-mingw32). The core compilers are translating nicely. But
> when it tries to build libgcc by -m64 it throws always the same error
> message for any array : "error: size of array "..." is too large". I
> am curious as the configuration patch is pretty equal to linux
> version, but something I seem to miss here.

Please attach a preprocessed output for the failing file (even better: 
after preprocessing, remove lines matching ^# and recompile).

Paolo

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: RFA: Issues to enable x86 defaulted multilib version
  2009-07-23  9:26 ` Paolo Bonzini
@ 2009-07-23 15:19   ` Kai Tietz
  0 siblings, 0 replies; 3+ messages in thread
From: Kai Tietz @ 2009-07-23 15:19 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: gcc Mailing List

[-- Attachment #1: Type: text/plain, Size: 1061 bytes --]

2009/7/23 Paolo Bonzini <bonzini@gnu.org>:
> On 07/22/2009 09:17 PM, Kai Tietz wrote:
>>
>> Hello,
>>
>> Possibly somebody could give me a hint what the issue here is. In the
>> patch I attached, I enable multilib for x86 default mingw target
>> (i686-w64-mingw32). The core compilers are translating nicely. But
>> when it tries to build libgcc by -m64 it throws always the same error
>> message for any array : "error: size of array "..." is too large". I
>> am curious as the configuration patch is pretty equal to linux
>> version, but something I seem to miss here.
>
> Please attach a preprocessed output for the failing file (even better: after
> preprocessing, remove lines matching ^# and recompile).
>
> Paolo
>

Well this testcase is not necessary as you can reproduce it by something like
struct foo { char s[20]; int a; } as well, but here is the
preprocessed source for muldi3.c to be compile by -m64 option.

Cheers,
Kai


-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

[-- Attachment #2: muldi3_strip.i.gz --]
[-- Type: application/x-gzip, Size: 230860 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-07-23 15:19 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-07-22 19:18 RFA: Issues to enable x86 defaulted multilib version Kai Tietz
2009-07-23  9:26 ` Paolo Bonzini
2009-07-23 15:19   ` Kai Tietz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).