Re: [patch][arm] gcc-7-branch: Fix bootstrap on FreeBSD

2017-10-17 Thread Richard Earnshaw (lists)
On 17/10/17 14:00, Kyrill Tkachov wrote:
> 
> On 17/10/17 13:42, Andreas Tobler wrote:
>> Hi Kyrill,
>>
>> On 17.10.17 12:02, Kyrill Tkachov wrote:
>>
>> > On 16/10/17 20:00, Andreas Tobler wrote:
>> >> Hi all,
>> >>
>> >> I struggled over a bootstrap issue while building gcc-7 for
>> >> armv7-*-freebsd*
>> >>
>> >> I got a 'permission denied' while creating the arm-tables.opt file.
>> >>
>> >> The source tree is located on a nfs server.
>> >>
>> >> The below patch fixed it for me.
>> >>
>> >> Ok to apply?
>> >>
>> >> TIA,
>> >> Andreas
>> >>
>> >> 2017-10-16  Andreas Tobler 
>> >>
>> >>  * config/arm/t-arm (MD_INCLUDES): Create arm-tables.opt via
>> >>  intermediate arm-tables.new like the other awk generated
>> files.
>> >>
>> >> Index: config/arm/t-arm
>> >> ===
>> >> --- config/arm/t-arm    (revision 253792)
>> >> +++ config/arm/t-arm    (working copy)
>> >> @@ -75,8 +75,8 @@
>> >>    $(srcdir)/config/arm/arm-tables.opt:
>> $(srcdir)/config/arm/parsecpu.awk \
>> >>  $(srcdir)/config/arm/arm-cpus.in
>> >>   $(AWK) -f $(srcdir)/config/arm/parsecpu.awk -v cmd=opt \
>> >> -   $(srcdir)/config/arm/arm-cpus.in > \
>> >> -   $(srcdir)/config/arm/arm-tables.opt
>> >> +   $(srcdir)/config/arm/arm-cpus.in > arm-tables.new
>> >> +   mv arm-tables.new $(srcdir)/config/arm/arm-tables.opt
>> >>
>> >
>> > This looks ok to me as it makes the rule consistent with the other
>> > awk-generated files.
>> >
>> > Out of interest, this looks like a small subset of Richard's patch [1]
>> > at r249971.
>>
>> Hehe, now as you say, yes. But I wasn't aware about it. I just tried to
>> fix my bootstrap issue and compared the snippet with main. And tried if
>> it helps to use an intermediate file.
>>
>> > Have you tried that patch on the branch?
>>
>> No, is this patch going to appear on the gcc-7 branch?
>> If it is, then I'll not apply my patchlet above.
>>
> 
> AFAIK that patch was part of a series to further improve the
> architecture features selection mechanism for GCC 8
> and wasn't thus considered for the GCC 7 branch, but it looks like a
> fairly standalone improvement, so unless Richard
> has any objections to it, I think it would be good to take that patch
> for the branch (assuming it passes validation there).
> 
> Kyrill
> 
>> > [1] https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00223.html
>>
>> Thanks,
>> Andreas
>>
> 

I've no objections to back-porting a suitable subset of the patch.

I'd point out, however, that this file is committed as part of the
source base, so unless you're changing arm-cpus.in (or parsecpu.awk)
there really shouldn't be a need to regenerate that file.  Using
"contrib/gcc_update --touch" should ensure that the date-stamps are all
correct.

R.


Re: [patch][arm] gcc-7-branch: Fix bootstrap on FreeBSD

2017-10-17 Thread Kyrill Tkachov


On 17/10/17 13:42, Andreas Tobler wrote:

Hi Kyrill,

On 17.10.17 12:02, Kyrill Tkachov wrote:

> On 16/10/17 20:00, Andreas Tobler wrote:
>> Hi all,
>>
>> I struggled over a bootstrap issue while building gcc-7 for
>> armv7-*-freebsd*
>>
>> I got a 'permission denied' while creating the arm-tables.opt file.
>>
>> The source tree is located on a nfs server.
>>
>> The below patch fixed it for me.
>>
>> Ok to apply?
>>
>> TIA,
>> Andreas
>>
>> 2017-10-16  Andreas Tobler 
>>
>>  * config/arm/t-arm (MD_INCLUDES): Create arm-tables.opt via
>>  intermediate arm-tables.new like the other awk generated 
files.

>>
>> Index: config/arm/t-arm
>> ===
>> --- config/arm/t-arm(revision 253792)
>> +++ config/arm/t-arm(working copy)
>> @@ -75,8 +75,8 @@
>>$(srcdir)/config/arm/arm-tables.opt: 
$(srcdir)/config/arm/parsecpu.awk \

>>  $(srcdir)/config/arm/arm-cpus.in
>>   $(AWK) -f $(srcdir)/config/arm/parsecpu.awk -v cmd=opt \
>> -   $(srcdir)/config/arm/arm-cpus.in > \
>> -   $(srcdir)/config/arm/arm-tables.opt
>> +   $(srcdir)/config/arm/arm-cpus.in > arm-tables.new
>> +   mv arm-tables.new $(srcdir)/config/arm/arm-tables.opt
>>
>
> This looks ok to me as it makes the rule consistent with the other
> awk-generated files.
>
> Out of interest, this looks like a small subset of Richard's patch [1]
> at r249971.

Hehe, now as you say, yes. But I wasn't aware about it. I just tried to
fix my bootstrap issue and compared the snippet with main. And tried if
it helps to use an intermediate file.

> Have you tried that patch on the branch?

No, is this patch going to appear on the gcc-7 branch?
If it is, then I'll not apply my patchlet above.



AFAIK that patch was part of a series to further improve the 
architecture features selection mechanism for GCC 8
and wasn't thus considered for the GCC 7 branch, but it looks like a 
fairly standalone improvement, so unless Richard
has any objections to it, I think it would be good to take that patch 
for the branch (assuming it passes validation there).


Kyrill


> [1] https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00223.html

Thanks,
Andreas





Re: [patch][arm] gcc-7-branch: Fix bootstrap on FreeBSD

2017-10-17 Thread Andreas Tobler

Hi Kyrill,

On 17.10.17 12:02, Kyrill Tkachov wrote:


On 16/10/17 20:00, Andreas Tobler wrote:

Hi all,

I struggled over a bootstrap issue while building gcc-7 for
armv7-*-freebsd*

I got a 'permission denied' while creating the arm-tables.opt file.

The source tree is located on a nfs server.

The below patch fixed it for me.

Ok to apply?

TIA,
Andreas

2017-10-16  Andreas Tobler  

 * config/arm/t-arm (MD_INCLUDES): Create arm-tables.opt via
 intermediate arm-tables.new like the other awk generated files.

Index: config/arm/t-arm
===
--- config/arm/t-arm(revision 253792)
+++ config/arm/t-arm(working copy)
@@ -75,8 +75,8 @@
   $(srcdir)/config/arm/arm-tables.opt: $(srcdir)/config/arm/parsecpu.awk \
 $(srcdir)/config/arm/arm-cpus.in
  $(AWK) -f $(srcdir)/config/arm/parsecpu.awk -v cmd=opt \
-   $(srcdir)/config/arm/arm-cpus.in > \
-   $(srcdir)/config/arm/arm-tables.opt
+   $(srcdir)/config/arm/arm-cpus.in > arm-tables.new
+   mv arm-tables.new $(srcdir)/config/arm/arm-tables.opt



This looks ok to me as it makes the rule consistent with the other
awk-generated files.

Out of interest, this looks like a small subset of Richard's patch [1]
at r249971.


Hehe, now as you say, yes. But I wasn't aware about it. I just tried to 
fix my bootstrap issue and compared the snippet with main. And tried if 
it helps to use an intermediate file.



Have you tried that patch on the branch?


No, is this patch going to appear on the gcc-7 branch?
If it is, then I'll not apply my patchlet above.


[1] https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00223.html


Thanks,
Andreas



Re: [patch][arm] gcc-7-branch: Fix bootstrap on FreeBSD

2017-10-17 Thread Kyrill Tkachov

Hi Andreas,

On 16/10/17 20:00, Andreas Tobler wrote:

Hi all,

I struggled over a bootstrap issue while building gcc-7 for 
armv7-*-freebsd*


I got a 'permission denied' while creating the arm-tables.opt file.

The source tree is located on a nfs server.

The below patch fixed it for me.

Ok to apply?

TIA,
Andreas

2017-10-16  Andreas Tobler  

* config/arm/t-arm (MD_INCLUDES): Create arm-tables.opt via
intermediate arm-tables.new like the other awk generated files.

Index: config/arm/t-arm
===
--- config/arm/t-arm(revision 253792)
+++ config/arm/t-arm(working copy)
@@ -75,8 +75,8 @@
  $(srcdir)/config/arm/arm-tables.opt: $(srcdir)/config/arm/parsecpu.awk \
$(srcdir)/config/arm/arm-cpus.in
 $(AWK) -f $(srcdir)/config/arm/parsecpu.awk -v cmd=opt \
-   $(srcdir)/config/arm/arm-cpus.in > \
-   $(srcdir)/config/arm/arm-tables.opt
+   $(srcdir)/config/arm/arm-cpus.in > arm-tables.new
+   mv arm-tables.new $(srcdir)/config/arm/arm-tables.opt



This looks ok to me as it makes the rule consistent with the other 
awk-generated files.


Out of interest, this looks like a small subset of Richard's patch [1] 
at r249971.

Have you tried that patch on the branch?

[1] https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00223.html

Thanks,
Kyrill

  $(srcdir)/config/arm/arm-cpu.h: $(srcdir)/config/arm/parsecpu.awk \
$(srcdir)/config/arm/arm-cpus.in




[patch][arm] gcc-7-branch: Fix bootstrap on FreeBSD

2017-10-16 Thread Andreas Tobler

Hi all,

I struggled over a bootstrap issue while building gcc-7 for armv7-*-freebsd*

I got a 'permission denied' while creating the arm-tables.opt file.

The source tree is located on a nfs server.

The below patch fixed it for me.

Ok to apply?

TIA,
Andreas

2017-10-16  Andreas Tobler  

* config/arm/t-arm (MD_INCLUDES): Create arm-tables.opt via
intermediate arm-tables.new like the other awk generated files.

Index: config/arm/t-arm
===
--- config/arm/t-arm(revision 253792)
+++ config/arm/t-arm(working copy)
@@ -75,8 +75,8 @@
 $(srcdir)/config/arm/arm-tables.opt: $(srcdir)/config/arm/parsecpu.awk \
   $(srcdir)/config/arm/arm-cpus.in
$(AWK) -f $(srcdir)/config/arm/parsecpu.awk -v cmd=opt \
-   $(srcdir)/config/arm/arm-cpus.in > \
-   $(srcdir)/config/arm/arm-tables.opt
+   $(srcdir)/config/arm/arm-cpus.in > arm-tables.new
+   mv arm-tables.new $(srcdir)/config/arm/arm-tables.opt

 $(srcdir)/config/arm/arm-cpu.h: $(srcdir)/config/arm/parsecpu.awk \
   $(srcdir)/config/arm/arm-cpus.in