This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][i386]Fix PR 57756


On Thu, Oct 17, 2013 at 4:51 PM, Sriraman Tallam <tmsriram@google.com> wrote:
> On Thu, Oct 17, 2013 at 3:08 PM, Sriraman Tallam <tmsriram@google.com> wrote:
>> On Thu, Oct 17, 2013 at 1:23 PM, Mike Stump <mikestump@comcast.net> wrote:
>>> On Oct 17, 2013, at 10:23 AM, Sriraman Tallam <tmsriram@google.com> wrote:
>>>>> You probably want to do something similar to what I did in the powerpc.
>>>>
>>>> I would need the help of target maintainers to fix it this way since
>>>> it touches every target and it would take time for me to build and
>>>> test every target.
>>>
>>> For changes that only need a compile to ensure one didn't brake a port, a configure and build of a target is 2 minutes.  Over night (6 hours), you can 180 targets.  Before you laugh, there are people that have done this sort of building in the past as well.  The hardest part, literally, would be to come up with the list of targets.
>>
>> Thanks. This is the list of affected targets extracted from the link
>> JBG pointed to:  http://toolchain.lug-owl.de/buildbot/?limit=1500
>>
>> "alpha-linux,bfin-elf,cr16-elf,epiphany-elf,frv-linux,h8300-elf,hppa-linux,m32c-elf,m68k-linux,mep-elf,microblaze-linux,mips64el-linux,mips64-linux,mipsel-linux,mips-linux,mmix,nios2-elf,powerpc64le-linux,powerpc64-linux,powerpcle-linux,powerpc-linux,ppc64-linux,ppc-linux,rl78-elf,rs6000-ibm-aix4.3,s390-linux,s390x-linux,sparc64-linux,sparc-linux,spu,spu-elf,vax-linux,xtensa-linux"
>>
>> Status: With the patch below, x86_64, i386 and powerpc native
>> bootstrap is fine. x86_64 has one test regression in
>> gfortran.dg/lto/pr45586 which I am looking into. Also, mips and
>> mips-64 cross-compiler builds fine.
>>
>> I can check cross-compile builds on all the affected targets listed
>> above. If this all works, I suggest using this patch to put out the
>> current fires and proceed with individual changes to each target
>> later.  Also, there are some test case failures when built in non-sse
>> configs in i386. I can get to it after unbreaking this. Is this
>> reasonable?
>
> I am running cross-compile builds on all the 33 failing targets. Like
> Mike said, it is only taking a few minutes per target. If there is no
> objection, I *will check in* this patch in another 2 hours provided
> all 33 targets succeed. This will atleast unblock all targets.

I can build cross-compile on 32/33 targets. I cannot build
nios2-unknown-elf alone, I get "*** Configuration nios2-unknown-elf
not supported" error. I ran "configure ... target=<blah>" and "make
all-gcc" for all the affected targets.

I have submitted this one line fix.

PR target/57756
* opth-gen.awk: Define target_flags_explicit

Index: gcc/opth-gen.awk
===================================================================
--- gcc/opth-gen.awk (revision 203807)
+++ gcc/opth-gen.awk (working copy)
@@ -114,6 +114,7 @@ print "};"
 print "extern struct gcc_options global_options;"
 print "extern const struct gcc_options global_options_init;"
 print "extern struct gcc_options global_options_set;"
+print "#define target_flags_explicit global_options_set.x_target_flags"
 print "#endif"
 print "#endif"
 print ""

Known problems even after this:
* i386 test regressions, -mno--sse mode reported by Jakub and a
pr45586 fortran test failure.  I am working on fixing them.

Thanks
Sri



>
> Thanks
> Sri
>
>
>>
>> Thanks
>> Sri
>>
>>
>> Index: opth-gen.awk
>> ===================================================================
>> --- opth-gen.awk (revision 203779)
>> +++ opth-gen.awk (working copy)
>> @@ -114,6 +114,7 @@
>>  print "extern struct gcc_options global_options;"
>>  print "extern const struct gcc_options global_options_init;"
>>  print "extern struct gcc_options global_options_set;"
>> +print "#define target_flags_explicit global_options_set.x_target_flags"
>>  print "#endif"
>>  print "#endif"
>>  print ""


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]