Re: What is this GIMPLE?
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
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
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?
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?
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
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
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.