Re: What is this GIMPLE?

2021-08-26 Thread Richard Biener via Gcc
On Wed, Aug 25, 2021 at 7:30 AM Gary Oblock via Gcc  wrote:
>
> I print out a bit of GIMPLE for a program and it looks like this:
>
>[local count: 13634385]:
>   # a_1 = PHI 
>   # n_11 = PHI 
> loop:
>   # DEBUG n => n_11
>   # DEBUG a => a_1
>   _2 = (long unsigned int) a_1;
>   _3 = _2 & 7;
>   _347 = _3 != 0;
>
> That bit that says "loop:" isn't a GIMPLE_LABEL and
> it has operands, the first of which is "size_t n = size_t;"
> and I find that a bit odd...

I'm sure it is a GIMPLE_LABEL.

> What is this thing and what does it do? Note, I'm trying to
> parse and transform some GIMPLE and this is confusing my
> code (and me.) I looked in the internals doc and grepped the
> code but I'm still in the dark.
>
> Note,I'd like be able to detect and ignore this if it's just informational.
>
> Thanks,
>
> Gary
>
> Gary
>
>
> CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is 
> for the sole use of the intended recipient(s) and contains information that 
> is confidential and proprietary to Ampere Computing or its subsidiaries. It 
> is to be used solely for the purpose of furthering the parties' business 
> relationship. Any unauthorized review, copying, or distribution of this email 
> (or any attachments thereto) is strictly prohibited. If you are not the 
> intended recipient, please contact the sender immediately and permanently 
> delete the original and any copies of this email and any attachments thereto.


Re: post-commit hook failure

2021-08-26 Thread Martin Liška

On 8/25/21 17:56, Michael Matz wrote:

Hello,

On Wed, 25 Aug 2021, Martin Liška wrote:


remote:   File "hooks/post_receive.py", line 47, in post_receive_one
remote: update.send_email_notifications()
remote:   File
"/sourceware1/projects/src-home/git-hooks/hooks/updates/__init__.py",

...

remote: UnicodeDecodeError: 'utf8' codec can't decode byte 0xf5 in
position 14638: invalid start byte

...

I believe ChangeLog will be updated correctly as we don't read content
of the changes:


But the email notifications (and bugzilla updating) isn't done if that
place throws, so that should eventually be made more robust in the future.


Yes. I know Joel is working towards porting the 
https://github.com/AdaCore/git-hooks
to Python3.

I'm adding him to CC in order to notify him about the problem we've just had.

Cheers,
Martin




Ciao,
Michael.





Re: How to define Struct / Array type with runtime invariants like SVE or RVV

2021-08-26 Thread Richard Biener via Gcc
On Wed, Aug 25, 2021 at 11:09 AM Jojo R via Gcc  wrote:
>
>
> — Jojo
> 在 2021年8月25日 +0800 PM3:27,Jonathan Wakely ,写道:
> >
> >
> > On Wed, 25 Aug 2021, 07:45 Jojo R wrote:
> > > Hi,
> > >
> > > I want to use struct or array type as container in my project,
> > >
> > > but GCC does not support this usage by now because that
> > >
> > > the size of these types are decided at compile-time :(
> > >
> > > so is there any good solution to fix this ?
> > >
> > > or some new feature patches to add supporting for these types with
> > > computed size at runtime ?
> >
> > Do you mean something like
> > https://en.m.wikipedia.org/wiki/Flexible_array_member ?
> >
> No, it’s similar but include vector type as member like :
>
> struct vectord {
>  vint8m1_t data; // Vector Length Agnostic (VLA)
> };

I think you should be able to use this at least when at the
last member and when you are not instantiating such
object but always use dynamic allocation like you'd
need to do with a flex array member.  But SVE folks might
have decided to disallow it even here.

Note GCC itself would be happy to have variable placement
of fields but obviously C/C++ are not ready for this.

Richard.


Re: What is this GIMPLE?

2021-08-26 Thread Gary Oblock via Gcc
Richard,

It sure looked a label but I had code that would bail out on
a label before it ever got where I was seeing a problem.

I finally printed out the gimple code and it was a GIMPLE_DEBUG!
When I bailed out on debugs my pass worked again. Of course
expanding debugging info failed in cfgexpand. It looks like "-g"
and my stuff real don't play nice together. Any thoughts on
what to do? I'm thing about simply disabling my stuff if "-g"
is specified. This is not the macho thing to do but anything is likely
a very deep rathole.

Thanks,

Gary



From: Richard Biener 
Sent: Thursday, August 26, 2021 12:45 AM
To: Gary Oblock 
Cc: gcc@gcc.gnu.org 
Subject: Re: What is this GIMPLE?

[EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please 
be mindful of safe email handling and proprietary information protection 
practices.]


On Wed, Aug 25, 2021 at 7:30 AM Gary Oblock via Gcc  wrote:
>
> I print out a bit of GIMPLE for a program and it looks like this:
>
>[local count: 13634385]:
>   # a_1 = PHI 
>   # n_11 = PHI 
> loop:
>   # DEBUG n => n_11
>   # DEBUG a => a_1
>   _2 = (long unsigned int) a_1;
>   _3 = _2 & 7;
>   _347 = _3 != 0;
>
> That bit that says "loop:" isn't a GIMPLE_LABEL and
> it has operands, the first of which is "size_t n = size_t;"
> and I find that a bit odd...

I'm sure it is a GIMPLE_LABEL.

> What is this thing and what does it do? Note, I'm trying to
> parse and transform some GIMPLE and this is confusing my
> code (and me.) I looked in the internals doc and grepped the
> code but I'm still in the dark.
>
> Note,I'd like be able to detect and ignore this if it's just informational.
>
> Thanks,
>
> Gary
>
> Gary
>
>
> CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is 
> for the sole use of the intended recipient(s) and contains information that 
> is confidential and proprietary to Ampere Computing or its subsidiaries. It 
> is to be used solely for the purpose of furthering the parties' business 
> relationship. Any unauthorized review, copying, or distribution of this email 
> (or any attachments thereto) is strictly prohibited. If you are not the 
> intended recipient, please contact the sender immediately and permanently 
> delete the original and any copies of this email and any attachments thereto.


Re: What is this GIMPLE?

2021-08-26 Thread Richard Biener via Gcc
On Thu, Aug 26, 2021 at 9:57 AM Gary Oblock  wrote:
>
> Richard,
>
> It sure looked a label but I had code that would bail out on
> a label before it ever got where I was seeing a problem.
>
> I finally printed out the gimple code and it was a GIMPLE_DEBUG!
> When I bailed out on debugs my pass worked again. Of course
> expanding debugging info failed in cfgexpand. It looks like "-g"
> and my stuff real don't play nice together. Any thoughts on
> what to do? I'm thing about simply disabling my stuff if "-g"
> is specified. This is not the macho thing to do but anything is likely
> a very deep rathole.

For analysis you should ignore GIMPLE_DEBUG.  During transform
you should transform debugs like other stmts - if you run into
debug stmts that you can't transform because you didn't analyze
them and doing so would have changed analysis/transform the
reasonable thing to do is to reset them (gimple_debug_bind_reset_value).

The only "special" thing about the debug stmts is that they do not
have GIMPLE-like RHS but instead they have GENERIC trees
on the RHS.

Richard.

>
> Thanks,
>
> Gary
>
>
> 
> From: Richard Biener 
> Sent: Thursday, August 26, 2021 12:45 AM
> To: Gary Oblock 
> Cc: gcc@gcc.gnu.org 
> Subject: Re: What is this GIMPLE?
>
> [EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please 
> be mindful of safe email handling and proprietary information protection 
> practices.]
>
>
> On Wed, Aug 25, 2021 at 7:30 AM Gary Oblock via Gcc  wrote:
> >
> > I print out a bit of GIMPLE for a program and it looks like this:
> >
> >[local count: 13634385]:
> >   # a_1 = PHI 
> >   # n_11 = PHI 
> > loop:
> >   # DEBUG n => n_11
> >   # DEBUG a => a_1
> >   _2 = (long unsigned int) a_1;
> >   _3 = _2 & 7;
> >   _347 = _3 != 0;
> >
> > That bit that says "loop:" isn't a GIMPLE_LABEL and
> > it has operands, the first of which is "size_t n = size_t;"
> > and I find that a bit odd...
>
> I'm sure it is a GIMPLE_LABEL.
>
> > What is this thing and what does it do? Note, I'm trying to
> > parse and transform some GIMPLE and this is confusing my
> > code (and me.) I looked in the internals doc and grepped the
> > code but I'm still in the dark.
> >
> > Note,I'd like be able to detect and ignore this if it's just informational.
> >
> > Thanks,
> >
> > Gary
> >
> > Gary
> >
> >
> > CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is 
> > for the sole use of the intended recipient(s) and contains information that 
> > is confidential and proprietary to Ampere Computing or its subsidiaries. It 
> > is to be used solely for the purpose of furthering the parties' business 
> > relationship. Any unauthorized review, copying, or distribution of this 
> > email (or any attachments thereto) is strictly prohibited. If you are not 
> > the intended recipient, please contact the sender immediately and 
> > permanently delete the original and any copies of this email and any 
> > attachments thereto.


Undelivered Mail Returned to Sender

2021-08-26 Thread Mail Delivery System
This is the mail system at host hwsrv-901157.hostwindsdns.com.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

   The mail system

: host gcc.gnu.org[2620:52:3:1:0:246e:9693:128c] said: 550
5.7.1 Blocked by SpamAssassin (in reply to end of DATA command)
Reporting-MTA: dns; hwsrv-901157.hostwindsdns.com
X-Postfix-Queue-ID: 6C5FB5D02
X-Postfix-Sender: rfc822; gcc@gcc.gnu.org
Arrival-Date: Thu, 26 Aug 2021 08:34:28 + (UTC)

Final-Recipient: rfc822; gcc@gcc.gnu.org
Original-Recipient: rfc822;gcc@gcc.gnu.org
Action: failed
Status: 5.7.1
Remote-MTA: dns; gcc.gnu.org
Diagnostic-Code: smtp; 550 5.7.1 Blocked by SpamAssassin


gcc-9-20210826 is now available

2021-08-26 Thread GCC Administrator via Gcc
Snapshot gcc-9-20210826 is now available on
  https://gcc.gnu.org/pub/gcc/snapshots/9-20210826/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.

This snapshot has been generated from the GCC 9 git branch
with the following options: git://gcc.gnu.org/git/gcc.git branch releases/gcc-9 
revision 979ae002c0b11c31ec64a16812f9652554a47366

You'll find:

 gcc-9-20210826.tar.xzComplete GCC

  SHA256=1b15cf788eb4fcd93f1a663c3e68cdcff70b9902738fa870fa73776181899aba
  SHA1=46703c226800a7275edefa5e663abd4e8019d12f

Diffs from 9-20210819 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-9
link is updated and a message is sent to the gcc list.  Please do not use
a snapshot before it has been announced that way.