Re: [PATCH] RISC-V: Add Jim Wilson as a maintainer

2017-11-07 Thread David Edelsohn
On Tue, Nov 7, 2017 at 2:14 AM, Jakub Jelinek  wrote:
> On Mon, Nov 06, 2017 at 06:39:20PM -0800, Palmer Dabbelt wrote:
>> Jim has recently started working at SiFive, where he'll be contributing
>> to our GCC port.  Andrew, Kito and I would like him to be a mainatiner.
>> My understand is that this is the right place to ask.
>
> It is the steering committee that appoints maintainers and so somebody
> needs to suggest this to the steering committee, which Jim Wilson is
> a member of.  Jim is a global reviewer, so even without being riscv
> port maintainer he can review riscv patches other people wrote, just not his
> own.
>
> So, I think for the time being you should just update your mail in
> MAINTAINERS and let the SC decide on further maintainers.

I will forward the nomination.

- David


Re: GCC CI on Power

2017-11-07 Thread David Edelsohn
On Mon, Nov 6, 2017 at 3:46 PM, Nathália Harumi
 wrote:
> Hi,
> My name is Nathália Harumi, I'm a student of The University of Campinas.
>
> I'm working on validation projects on OpenPower lab (which is a partnership
> between IBM and The University of Campinas, in Brazil) and we'd like to
> find a way to contribute the GCC community.
>
> Now a days, we use a Buildbot platform for internal validation projects on
> Power with several ppc architectures and flavours as workers. We're also
> working with glibc community to improve it buildbot and to provide workers
> for builds on ppc.
>
> So, we'd like to know which platform you use for CI and how we can
> contribute with it.

Hi, Nathalia

Thanks for your offer to contribute to CI for GCC.  GCC currently does
not have an official CI infrastructure.  Hopefully soon.

Thanks, David


Re: GCC CI on Power

2017-11-07 Thread David Malcolm
On Mon, 2017-11-06 at 18:46 -0200, Nathália Harumi wrote:
> Hi,
> My name is Nathália Harumi, I'm a student of The University of
> Campinas.
> 
> I'm working on validation projects on OpenPower lab (which is a
> partnership
> between IBM and The University of Campinas, in Brazil) and we'd like
> to
> find a way to contribute the GCC community.
> 
> Now a days, we use a Buildbot platform for internal validation
> projects on
> Power with several ppc architectures and flavours as workers. We're
> also
> working with glibc community to improve it buildbot and to provide
> workers
> for builds on ppc.
> 
> So, we'd like to know which platform you use for CI and how we can
> contribute with it.
> 
> Thank you,
> Nathália.

Hi Nathália

I don't think there's anything "official" yet, but Paulo Matos [CCed]
has been experimenting with running buildbot for gcc:

  https://gcc.gnu.org/ml/gcc/2017-10/msg00068.html

(albeit it with some significant unsolved problems, as I understand it)

Maybe you and Paulo could set things up so that the ppc workers you
have could contribute to Paulo's buildbot instance?

Hope this is constructive
Dave


Re: Question about generated type for common block in fortran

2017-11-07 Thread Michael Matz
Hi,

On Thu, 26 Oct 2017, Richard Biener wrote:

> >Hi,
> >I am looking into DSE transformation of some fortran codes.  Given
> >below fortran declarations:
> >
> >   real*8  a(len) , b(len) ,  c(len) , d(len)
> >   common /area/  a, b, c, d
> >   real*8 src1(len), temp1(len), temp2(len), src2(len)
> >   equivalence(src1, a), (src2, b), (temp1, c), (temp2, d)
> >
> >with my limited understanding of fortran, the layout should be like:
> >struct area
> >{
> >  union {double src1[len]; double a[len]};
> >  union {double temp1[len]; double b[len]};
> >  union {double temp2[len]; double c[len]};
> >  union {double src2[len]; double d[len]};
> >};
> 
> I guess equivalence with mismatching size and overlaps makes this a difficult 
> representation. Not that such equivalence would be valid... 
> 
> >When debugging in tree-ssa-dse.c, if I have memory reference like
> >area.src1[idx], the type for area dumped is like:
> >(gdb) call debug_generic_expr(ref1->exp.operands[0])
> >area
> >(gdb) call debug_generic_expr(ref1->exp.operands[0]->typed.type)
> >union
> >{
> >  real(kind=8) src1[100];
> >  real(kind=8) a[100];
> >  real(kind=8) src2[100];
> >  real(kind=8) b[100];
> >  real(kind=8) temp1[100];
> >  real(kind=8) c[100];
> >  real(kind=8) temp2[100];
> >  real(kind=8) d[100];
> >}
> >I do noticed src1/src2 fields do have different offset, although they
> >are put into a union type here.
> 
> It's definitely stretching what I would consider a valid union type. 
> Maybe Ada does have similar layouts?

Maybe it's rather an implementation artifact of trying to capture the 
effects of the unnamed members (of union type) that are in the struct.  In 
the end it doesn't matter much for code generation: the field offsets 
matter, not if the surrounding type is a union or struct.  It's confusing, 
though :)  (and inhibits optimization that expect only "sane" types).

> >I suppose such type are generated by fortran front-end?  Is it just
> >because it's easy to do so?  And any background comment/document about
> >this?
> >Unfortunately middle end misses lots of dead store, redundant load
> >because of difficulty in alias check of such type information.  I
> >guess fully support alias check of this issue would be non-trivial, so
> >any suggestions will be highly appreciated too.

You can probably change the fortran frontend to create saner types for 
this.


Ciao,
Michael.


Re: [PATCH] RISC-V: Add Jim Wilson as a maintainer

2017-11-07 Thread Palmer Dabbelt
On Tue, 07 Nov 2017 05:02:13 PST (-0800), dje@gmail.com wrote:
> On Tue, Nov 7, 2017 at 2:14 AM, Jakub Jelinek  wrote:
>> On Mon, Nov 06, 2017 at 06:39:20PM -0800, Palmer Dabbelt wrote:
>>> Jim has recently started working at SiFive, where he'll be contributing
>>> to our GCC port.  Andrew, Kito and I would like him to be a mainatiner.
>>> My understand is that this is the right place to ask.
>>
>> It is the steering committee that appoints maintainers and so somebody
>> needs to suggest this to the steering committee, which Jim Wilson is
>> a member of.  Jim is a global reviewer, so even without being riscv
>> port maintainer he can review riscv patches other people wrote, just not his
>> own.
>>
>> So, I think for the time being you should just update your mail in
>> MAINTAINERS and let the SC decide on further maintainers.
>
> I will forward the nomination.

Thanks


Re: [PATCH] RISC-V: Add Jim Wilson as a maintainer

2017-11-07 Thread Jim Wilson
On Mon, Nov 6, 2017 at 6:39 PM, Palmer Dabbelt  wrote:
>
> +riscv port Jim Wilson  
>
>
It is jimw not jim for the email address.  Please fix.

Jim


Re: [patches] Re: [PATCH] RISC-V: Add Jim Wilson as a maintainer

2017-11-07 Thread Palmer Dabbelt
On Tue, 07 Nov 2017 09:47:37 PST (-0800), Jim Wilson wrote:
> On Mon, Nov 6, 2017 at 6:39 PM, Palmer Dabbelt  wrote:
>>
>> +riscv port Jim Wilson  
>>
>>
> It is jimw not jim for the email address.  Please fix.

Sorry.  We're still pending approval, but

diff --git a/MAINTAINERS b/MAINTAINERS
index 9c3a56ea0941..222dad81f2bb 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -93,8 +93,9 @@ pdp11 portPaul Koning 
 picochip port  Daniel Towner   
 powerpcspe portAndrew Jenner   

 riscv port Kito Cheng  
-riscv port Palmer Dabbelt  
+riscv port Palmer Dabbelt  
 riscv port Andrew Waterman 
+riscv port Jim Wilson  
 rl78 port  DJ Delorie  
 rs6000/powerpc portDavid Edelsohn  
 rs6000/powerpc portSegher Boessenkool  


Re: CFLAGS for the host in canadian cross build

2017-11-07 Thread Waldemar Brodkorb
Hi Max,
Max Filippov wrote,

> Hello,
> 
> I'm trying to build a canadian cross compiler with build == x86_64-linux,
> host == xtensa-linux and target == xtensa-linux. I need to specify an
> xtensa-specific flag in CFLAGS that will be applied to the host binary.

I think you are trying to build a cross-native, see
http://crosstool-ng.github.io/docs/toolchain-types/

Canadian-Cross is something like building a GCC compiler on Linux/x86_64,
which runs on Cygwin/x86_64 and compiles code for Linux/ppc.
 
> I put this flag into CFLAGS and CXXFLAGS. The first question: is that
> the right place for it?

No, it seems not.
The right thing to do is to set CC/CXX in the configure step and
append your specific CFLAGS/CXXFLAGS to it.

I tested (build-only) this with OpenADK building a cross-native for 
Linux/xtensa.

I needed to fix my package/gcc/Makefile for this, see:
https://gogs.waldemar-brodkorb.de/linux/openadk/commit/e7383dee0c3fc20a2752b13f21d0bb3f5988aad6

best regards
 Waldemar


Re: CFLAGS for the host in canadian cross build

2017-11-07 Thread Max Filippov
Hi Waldemar,

On Tue, Nov 7, 2017 at 9:57 PM, Waldemar Brodkorb  wrote:
>> I'm trying to build a canadian cross compiler with build == x86_64-linux,
>> host == xtensa-linux and target == xtensa-linux. I need to specify an
>> xtensa-specific flag in CFLAGS that will be applied to the host binary.
>
> I think you are trying to build a cross-native, see
> http://crosstool-ng.github.io/docs/toolchain-types/
>
> Canadian-Cross is something like building a GCC compiler on Linux/x86_64,
> which runs on Cygwin/x86_64 and compiles code for Linux/ppc.

Yes, I just thought that "cross-native" is the local ct-ng name, and in general
this configuration is not special.

>> I put this flag into CFLAGS and CXXFLAGS. The first question: is that
>> the right place for it?
>
> No, it seems not.
> The right thing to do is to set CC/CXX in the configure step and
> append your specific CFLAGS/CXXFLAGS to it.

Ok, thanks for the confirmation. I did the same thing by making a wrapper
that calls cross-compiler with these specific options. Using that I was able
to build working cross-native toolchain with ct-ng.

-- 
Thanks.
-- Max


Re: GCC CI on Power

2017-11-07 Thread Paulo Matos


On 07/11/17 16:54, David Malcolm wrote:
> On Mon, 2017-11-06 at 18:46 -0200, Nathália Harumi wrote:
>> Hi,
>> My name is Nathália Harumi, I'm a student of The University of
>> Campinas.
>>
>> I'm working on validation projects on OpenPower lab (which is a
>> partnership
>> between IBM and The University of Campinas, in Brazil) and we'd like
>> to
>> find a way to contribute the GCC community.
>>
>> Now a days, we use a Buildbot platform for internal validation
>> projects on
>> Power with several ppc architectures and flavours as workers. We're
>> also
>> working with glibc community to improve it buildbot and to provide
>> workers
>> for builds on ppc.
>>
>> So, we'd like to know which platform you use for CI and how we can
>> contribute with it.
>>
>> Thank you,
>> Nathália.
> 
> Hi Nathália
> 
> I don't think there's anything "official" yet, but Paulo Matos [CCed]
> has been experimenting with running buildbot for gcc:
> 
>   https://gcc.gnu.org/ml/gcc/2017-10/msg00068.html
> 
> (albeit it with some significant unsolved problems, as I understand it)
> 
> Maybe you and Paulo could set things up so that the ppc workers you
> have could contribute to Paulo's buildbot instance?
> 

Dave, thanks for forwarding this to me.

Hello Nathalia,

Thanks for reaching out.
I am running an experimental buildbot for GCC (currently possibly down
as it's moving servers, but downtime should be short).

There are a few issues to fix, which I will be dealing with in the next
couple of weeks. A few examples of important issues to fix are:

* dealing with regressions on the gcc testsuite;
* trimming down the testsuite to have a fast testsuite run which takes
not longer than a coffee break;
* ensuring that notifications are processes properly.

Would you be able to share your configuration or solution to these issues?

Kind regards,

-- 
Paulo Matos