diff mbox

[i386] Fix PR 57756

Message ID CAAs8Hmx_NeMyj-Dd_vXuvgaRm460=kmhEZuwAOaOYUzg3Ga=1A@mail.gmail.com
State New
Headers show

Commit Message

Sriraman Tallam Oct. 17, 2013, 10:08 p.m. UTC
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?

Thanks
Sri

Comments

Sriraman Tallam Oct. 17, 2013, 11:51 p.m. UTC | #1
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.

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 ""
Mike Stump Oct. 18, 2013, 12:26 a.m. UTC | #2
On Oct 17, 2013, at 4:51 PM, Sriraman Tallam <tmsriram@google.com> wrote:
> 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.

So, I'd test 4 of the most important targets with the change and check it in after they work.  4*2, is 8 minutes…  you can then check all, and then resolve any other issues as you fine them.  The idea is, once you set the world on fire, it is nicer to throw water on it quickly so others don't feel burned.  If vax-coff doesn't work for 2 hours, well, don't worry too much about it.
diff mbox

Patch

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 ""