Re: gccadmin hooks: make it a public git repo

2021-05-24 Thread Martin Liška

PING^1

On 1/14/21 10:02 AM, Martin Liška wrote:

On 1/13/21 6:00 PM, Joseph Myers wrote:

I'm fine with having it set up with a public repository.


Ok, can you please do it Joseph?


If you have a
public (bare) repository that would of course need to have its own hooks
to update the (non-bare) hooks-bin checkout after a push.


I can imagine a cron job similar to which one we use for 'Daily bump'.
Would it be feasible?

Thanks,
Martin





Re: [PATCH] Try LTO partial linking. (Was: Speed of compiling gimple-match.c)

2021-05-24 Thread Martin Liška

On 5/21/21 2:35 PM, David Edelsohn wrote:

Please remember that not all targets support LTO so a fallback to a
non-partial-LTO build needs to be provided and automatically invoked
for those targets.


Sure, for now it's definitely going to be a opt-in, enabled by something like:
make PARTIAL_LTO=1.

Thanks,
Martin


safety command-line options

2021-05-24 Thread Uecker, Martin


I wonder if we could get a nice short command-line option
for recommended safety/security related flags.

We have -Ox for optimization and -Wall for a useful set
of recommended warnings.

I am thinking about options such as 

-ftrapv
-fsanitize=undefined -fsanitize-undefined-trap-on-error
-fstack-protector
-D_FORTIFY_SOURCE=2
-Werror=format-security

etc.  We would need to make a selection based on
various tradeoffs, but this is not different
to -Wall or -O.


Martin


Re: Welcome GCC GSoC 2021 participants

2021-05-24 Thread Martin Jambor
Hello,

On Sun, May 23 2021, Ankur Saini wrote:
> Hello,
>
>> On 18-May-2021, at 9:52 PM, Martin Jambor  wrote:
>> 
>> All accepted students which do not already have one must request a
>> copyright assignment[1] as soon as possible.  Please email the
>> following information to ass...@gnu.org and they will send you the
>> assignment form for your past and future changes.  Use your full legal
>> name (in ASCII characters) as the subject line of the message.  The
>> "program or package" is of course GCC.
>> 
>
> I sent a mail requesting the same to ass...@gnu.org
>  on 19th-May-2021, and haven’t received any
> response till now. Is this common to have them take this long ?

Unfortunately, it has happened in the past.

Please remind them about your request every week or so until they
respond.  If the delay interferes with your project, let me know and I
will talk to our steering committee and others about the situation.

Thanks,

Martin


Fw: Regarding __gcov_dump and __gcov_reset usage

2021-05-24 Thread Gejoe Daniel via Gcc
Adding gcc mailing list for the clarification.

Thank you team ! 

From: "Gejoe Daniel"
Sent: Mon, 24 May 2021 15:02:12
To: "gcc-h...@gcc.gnu.org"
Subject: Re: Regarding __gcov_dump and __gcov_reset usage

Hi team,

Any info/reply ?

Thanking you in advance,
Gejoe


From: "Gejoe Daniel"
Sent: Sun, 16 May 2021 17:37:46
To: 
Subject: Regarding __gcov_dump and __gcov_reset usage

Hi team,

I did go through the online manual of gcc gcov  on __gcov_dump() and 
__gcov_reset() :
https://gcc.gnu.org/onlinedocs/gcc/Gcov-and-Optimization.html#Gcov-and-Optimization

I tried out using the functions in a sample program (sample-prog.c) that is 
attached here.

The steps followed were :

(1)  gcc -fprofile-arcs -ftest-coverage sample-prog.c 
(2)  ./a.out
(3)  gcov sample-prog.c

While running a.out, when I give character 'g', the __gcov_dump() must 
be invoked.
What I could observe is that first time __gcov_dump() is invoked , the 
sample-prog.gcda file gets created.
For the second time and then onwards, __gcov_dump() invocation (by giving 
'g' character during the a.out run) doesn't happen.
This is concluded by looking at the time stamp of sample-prog.gcda file in the 
same folder. It was still having the same time stamp of first time invocation 
of __gcov_dump().

Another thing is  that, __gcov_reset() also doesn't appear to work. I 
tried giving the character 'r' during the run of the program but 
couldn't see the counters getting reset to 0 in the sample-prog.gcov file. 
The previous values of lines covered were there.

Let me know if my approach is correct or if I miss any information here.

Thanks,
Gejoe
 

sample-prog.c
Description: Binary data


GCC Rust git branch

2021-05-24 Thread Philip Herron
Hi everyone,

As some of you might know, I have been working on GCC Rust over on
GitHub https://github.com/Rust-GCC/gccrs. As the project is moving
forward and enforcing GCC copyright assignments for contributors, I
would like to create a branch on the GCC git repo to show the intention
to be upstream with GCC someday.

I tried to push the branch towards the start of the year, but I hit an
issue:

```
Enumerating objects: 4706, done.
Counting objects: 100% (4706/4706), done.
Delta compression using up to 8 threads
Compressing objects: 100% (1699/1699), done.
Writing objects: 100% (4412/4412), 3.33 MiB | 948.00 KiB/s, done.
Total 4412 (delta 3058), reused 3869 (delta 2683)
remote: Resolving deltas: 100% (3058/3058), completed with 271 local
objects.
remote: *** Invalid revision history for commit
c7c6f785c8e893ec7bcacd1a2319ce309d2450f2:
remote: *** The first line should be the subject of the commit,
remote: *** followed by an empty line.
remote: ***
remote: *** Below are the first few lines of the revision history:
remote: *** | Adding Rust target hook documentation
remote: *** | Added powerpc target hook and improved aarch64 feature
handling
remote: *** | Added DEC Alpha target hook
remote: *** | Added ARC target hook
remote: *** | Created ARM target hook (at least preliminary support)
remote: ***
remote: *** Please amend the commit's revision history and try again.
remote: error: hook declined to update refs/heads/gccrs
To ssh://gcc.gnu.org/git/gcc.git
 ! [remote rejected] gcc-mirror -> gccrs (hook declined)
```

The commit message here is poorly formatted. To move forward, should I
rebase the tree to fix this commit and force push to rewrite the
history? Or is there a way to relax the rule for a new branch? Any
advice would be welcome.

Separately, some contributors have expressed interest in maintaining the
GCC style communications of using a mailing list and irc. Is it
reasonable for this project to get a r...@gcc.gnu.org?

Thanks,

--Phil




OpenPGP_signature
Description: OpenPGP digital signature


Re: Fw: Regarding __gcov_dump and __gcov_reset usage

2021-05-24 Thread Martin Liška

On 5/24/21 1:44 PM, Gejoe Daniel via Gcc wrote:

Adding gcc mailing list for the clarification.

Thank you team ! 

From: "Gejoe Daniel"
Sent: Mon, 24 May 2021 15:02:12
To: "gcc-h...@gcc.gnu.org"
Subject: Re: Regarding __gcov_dump and __gcov_reset usage

Hi team,

Any info/reply ?

Thanking you in advance,
Gejoe


From: "Gejoe Daniel"
Sent: Sun, 16 May 2021 17:37:46
To: 
Subject: Regarding __gcov_dump and __gcov_reset usage

Hi team,

I did go through the online manual of gcc gcov  on __gcov_dump() and 
__gcov_reset() :
https://gcc.gnu.org/onlinedocs/gcc/Gcov-and-Optimization.html#Gcov-and-Optimization

I tried out using the functions in a sample program (sample-prog.c) that is 
attached here.

The steps followed were :

(1)  gcc -fprofile-arcs -ftest-coverage sample-prog.c 
(2)  ./a.out
(3)  gcov sample-prog.c

While running a.out, when I give character 'g', the __gcov_dump() must 
be invoked.
What I could observe is that first time __gcov_dump() is invoked , the 
sample-prog.gcda file gets created.
For the second time and then onwards, __gcov_dump() invocation (by giving 
'g' character during the a.out run) doesn't happen.
This is concluded by looking at the time stamp of sample-prog.gcda file in the 
same folder. It was still having the same time stamp of first time invocation 
of __gcov_dump().

Another thing is  that, __gcov_reset() also doesn't appear to work. I tried giving 
the character 'r' during the run of the program but couldn't see the 
counters getting reset to 0 in the sample-prog.gcov file. The previous values of lines covered were 
there.

Let me know if my approach is correct or if I miss any information here.

Thanks,
Gejoe
 



Hello.

Can you please create bug at: https://gcc.gnu.org/bugzilla/
Please upload there a test-case and series of commands executed and the 
expected result.

Thank you,
Martin


Re: GCC Rust git branch

2021-05-24 Thread Joseph Myers
On Mon, 24 May 2021, Philip Herron wrote:

> remote: error: hook declined to update refs/heads/gccrs

refs/heads/gccrs doesn't match the branch naming conventions as documented 
at https://gcc.gnu.org/git.html (where you'd use refs/heads/devel/* for 
shared development branches), so if you hadn't had commit message 
formatting issues, the push would have been rejected for bad branch naming 
as well.

> The commit message here is poorly formatted. To move forward, should I
> rebase the tree to fix this commit and force push to rewrite the
> history? Or is there a way to relax the rule for a new branch? Any
> advice would be welcome.

If the community desires to relax the checks in a particular case, the way 
to do it would probably be to set hooks.no-precommit-check, naming the 
agreed branch name, temporarily in refs/meta/config:project.config, then 
revert that project.config change afterwards.  See 
https://github.com/AdaCore/git-hooks for the detailed documentation of 
hook configuration.

-- 
Joseph S. Myers
jos...@codesourcery.com


Re: GCC Rust git branch

2021-05-24 Thread Mark Wielaard
Hi Philip,

On Mon, May 24, 2021 at 02:24:13PM +0100, Philip Herron wrote:
> As some of you might know, I have been working on GCC Rust over on
> GitHub https://github.com/Rust-GCC/gccrs. As the project is moving
> forward and enforcing GCC copyright assignments for contributors, I
> would like to create a branch on the GCC git repo to show the intention
> to be upstream with GCC someday.
> [...] 
> The commit message here is poorly formatted. To move forward, should I
> rebase the tree to fix this commit and force push to rewrite the
> history? Or is there a way to relax the rule for a new branch? Any
> advice would be welcome.

As Joseph said you could create a developement branch for hacking on
the GCC Rust Frontend and relax the commit push rules for that one:
https://gcc.gnu.org/git.html#devbranches

Is the intention to eventually make this branch the main development
branch? Or will it just be a mirror of the main github repo/branch?

I assume it will be some months (years?) before this frontend will be
merge into the main gcc git repo. I wonder if it makes sense to create
a separate repo for the gcc rust frontend so you can use your own
rules for development. Currently you are using some github services,
like bors, that we might want to replicate. That might require some
special git branches for the automation. We can then experiment with
having a gccrs.git repo on gcc.gnu.org to see if such services can be
replicated on our own server. And the gcc rust community might show
other gcc developers whether and how that helps development.

It would also be great if we could somehow have "normal" gcc bugzilla
tickets instead of these github issue and pr numbers (which won't make
sense anymore once the frontend is merged).

> Separately, some contributors have expressed interest in maintaining the
> GCC style communications of using a mailing list and irc. Is it
> reasonable for this project to get a r...@gcc.gnu.org?

Personally I would love to have a normal mailinglist, but I am
personally somewhat (unrationally?) allergic to github and
web-chat-systems. If we are trying to make this new frontend a bit
more accessible to traditional gcc hackers, could we also have a
normal irc channel (there is #gcc on irc.oftc.net). It would be great
to also have a #gccrust channel on oftc.

Cheers,

Mark



Re: safety command-line options

2021-05-24 Thread Martin Sebor via Gcc

On 5/24/21 2:18 AM, Uecker, Martin wrote:



I wonder if we could get a nice short command-line option
for recommended safety/security related flags.

We have -Ox for optimization and -Wall for a useful set
of recommended warnings.

I am thinking about options such as

-ftrapv
-fsanitize=undefined -fsanitize-undefined-trap-on-error
-fstack-protector
-D_FORTIFY_SOURCE=2
-Werror=format-security

etc.  We would need to make a selection based on
various tradeoffs, but this is not different
to -Wall or -O.


Here's a nice article on the subject:
Recommended compiler and linker flags for GCC
https://developers.redhat.com/blog/2018/03/21/compiler-and-linker-flags-gcc

Martin


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/

2021-05-24 Thread Johannes Nendwich via Gcc
Hi folks,

some more suggestions for corrections in the onlinedocs:


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/GERROR.html#GERROR

RESULT  "Shall of type CHARACTER and of default"
--> "Shall BE of ... default KIND."


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/GETARG.html#GETARG

2 x "VALUE  Shall be of type CHARACTER [...]"


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/GETLOG.html#GETLOG

"Stores the current user name in LOGIN."
-->
"Stores the current user name in C."


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/NORM2.html#NORM2

"Calculates the Euclidean vector norm (L_2 norm) of of ARRAY along
dimension DIM."

"... of of ..."
-->
"... of ..."


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/PARITY.html#PARITY

"LOGICALShall be ..."
-->
"MASK   Shall be ..."


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/RANDOM_005fINIT.html#RANDOM_005fINIT

"IMAGE_DISTINCT   ... the seed is set value that does ..."
-->
"IMAGE_DISTINCT   ... the seed is set TO A value that does ..."


https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/RANDOM_005fNUMBER.html#RANDOM_005fNUMBER

"Syntax: RANDOM_NUMBER(HARVEST)"
-->
"Syntax: CALL RANDOM_NUMBER(HARVEST)"


Greets,
Johannes


RE: [EXTERNAL] Re: State of AutoFDO in GCC

2021-05-24 Thread Eugene Rozenfeld via Gcc
Thank you Wei. Looks like something is still missing. This time perf_data.pb.h 
is not found. I'm getting the error below (on Ubuntu 18.04 with cmake 3.12.1):

eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
[1/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/profile.cc.o
FAILED: CMakeFiles/dump_gcov_lib.dir/profile.cc.o 
/usr/bin/c++   -I../ -I../third_party/glog/src -I../third_party/abseil 
-I../third_party/perf_data_converter/src 
-I../third_party/perf_data_converter/src/quipper -I../util -I. 
-Ithird_party/glog -std=gnu++1z -MD -MT 
CMakeFiles/dump_gcov_lib.dir/profile.cc.o -MF 
CMakeFiles/dump_gcov_lib.dir/profile.cc.o.d -o 
CMakeFiles/dump_gcov_lib.dir/profile.cc.o -c ../profile.cc
In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
 from ../sample_reader.h:18,
 from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/base/macros.h:8:0: warning: 
"DISALLOW_COPY_AND_ASSIGN" redefined
 #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
 
In file included from ../profile.h:14:0,
 from ../profile.cc:5:
../base/macros.h:114:0: note: this is the location of the previous definition
 #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
 
In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
 from ../sample_reader.h:18,
 from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/base/macros.h:12:0: warning: 
"arraysize" redefined
 #define arraysize(x) (sizeof(x) / sizeof(*x))
 
In file included from ../profile.h:14:0,
 from ../profile.cc:5:
../base/macros.h:162:0: note: this is the location of the previous definition
 #define arraysize(array) (sizeof(ArraySizeHelper(array)))
 
In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:21:0,
 from ../sample_reader.h:18,
 from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/compat/proto.h:14:10: fatal 
error: perf_data.pb.h: No such file or directory
 #include "perf_data.pb.h"
  ^~~~
compilation terminated.
[6/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/symbol_map.cc.o
ninja: build stopped: subcommand failed.

Thanks,

Eugene

From: Wei Mi  
Sent: Saturday, May 22, 2021 9:37 AM
To: Eugene Rozenfeld 
Cc: Andi Kleen ; Hongtao Yu ; Xinliang David 
Li ; Jan Hubicka ; gcc@gcc.gnu.org; Wenlei 
He 
Subject: Re: [EXTERNAL] Re: State of AutoFDO in GCC

It is a proto library build dependency issue which didn't expose on my 
platform. I fix it at 
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgoogle%2Fautofdo%2Fcommit%2F98269aee9674cc885cc5eb1bd917eb2d12731710&data=04%7C01%7CEugene.Rozenfeld%40microsoft.com%7C414e79d9b075428ceffc08d91d3fd7ff%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637572982342270322%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=TxMivTXj9w0W5OFLunWcOpqf9wefrrUd0m3RqV8JLaA%3D&reserved=0.
 Please try again.

Thanks,
Wei.

On Fri, May 21, 2021 at 6:28 PM Eugene Rozenfeld 
 wrote:
I tried following the instructions in "2.2 Build autofdo tool for gcc" in 
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgoogle%2Fautofdo%23readme&data=04%7C01%7CEugene.Rozenfeld%40microsoft.com%7C414e79d9b075428ceffc08d91d3fd7ff%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637572982342280318%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KBPIcf5k1v230tbLke9%2FdSt25nbPrHhpBvPb8PiebPY%3D&reserved=0and
 got build failures:
 
eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
[1/228] Building CXX object CMakeFiles/create_gcov_lib.dir/profile.cc.o
FAILED: CMakeFiles/create_gcov_lib.dir/profile.cc.o 
/usr/bin/c++  -I../ -I../third_party/glog/src -I../third_party/abseil 
-I../third_party/perf_data_converter/src 
-I../third_party/perf_data_converter/src/quipper -I../util -I. 
-Ithird_party/glog -std=gnu++1z -MD -MT 
CMakeFiles/create_gcov_lib.dir/profile.cc.o -MF 
CMakeFiles/create_gcov_lib.dir/profile.cc.o.d -o 
CMakeFiles/create_gcov_lib.dir/profile.cc.o -c ../profile.cc
In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
 from ../sample_reader.h:18,
     from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/base/macros.h:8:0: warning: 
"DISALLOW_COPY_AND_ASSIGN" redefined
#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
In file included from ../profile.h:14:0,
 from ../profile.cc:5:
../base/macros.h:114:0: note: this is the location of the previous definition
#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
In file included from 
../thir

Re: [EXTERNAL] Re: State of AutoFDO in GCC

2021-05-24 Thread Wei Mi via Gcc
Sorry, I added dependency for create_gcov but missed it for dump_gcov.
Fixed it at
https://github.com/google/autofdo/commit/6ca36cdc30986f13583a3aef3e27746ca4fc5bf6
.

Thanks,
Wei.

On Mon, May 24, 2021 at 6:39 PM Eugene Rozenfeld <
eugene.rozenf...@microsoft.com> wrote:

> Thank you Wei. Looks like something is still missing. This time
> perf_data.pb.h is not found. I'm getting the error below (on Ubuntu 18.04
> with cmake 3.12.1):
>
> eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
> [1/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/profile.cc.o
> FAILED: CMakeFiles/dump_gcov_lib.dir/profile.cc.o
> /usr/bin/c++   -I../ -I../third_party/glog/src -I../third_party/abseil
> -I../third_party/perf_data_converter/src
> -I../third_party/perf_data_converter/src/quipper -I../util -I.
> -Ithird_party/glog -std=gnu++1z -MD -MT
> CMakeFiles/dump_gcov_lib.dir/profile.cc.o -MF
> CMakeFiles/dump_gcov_lib.dir/profile.cc.o.d -o
> CMakeFiles/dump_gcov_lib.dir/profile.cc.o -c ../profile.cc
> In file included from
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  from ../profile.cc:5:
> ../third_party/perf_data_converter/src/quipper/base/macros.h:8:0: warning:
> "DISALLOW_COPY_AND_ASSIGN" redefined
>  #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
>
> In file included from ../profile.h:14:0,
>  from ../profile.cc:5:
> ../base/macros.h:114:0: note: this is the location of the previous
> definition
>  #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
>
> In file included from
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  from ../profile.cc:5:
> ../third_party/perf_data_converter/src/quipper/base/macros.h:12:0:
> warning: "arraysize" redefined
>  #define arraysize(x) (sizeof(x) / sizeof(*x))
>
> In file included from ../profile.h:14:0,
>  from ../profile.cc:5:
> ../base/macros.h:162:0: note: this is the location of the previous
> definition
>  #define arraysize(array) (sizeof(ArraySizeHelper(array)))
>
> In file included from
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:21:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  from ../profile.cc:5:
> ../third_party/perf_data_converter/src/quipper/compat/proto.h:14:10: fatal
> error: perf_data.pb.h: No such file or directory
>  #include "perf_data.pb.h"
>   ^~~~
> compilation terminated.
> [6/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/symbol_map.cc.o
> ninja: build stopped: subcommand failed.
>
> Thanks,
>
> Eugene
>
> From: Wei Mi 
> Sent: Saturday, May 22, 2021 9:37 AM
> To: Eugene Rozenfeld 
> Cc: Andi Kleen ; Hongtao Yu ; Xinliang
> David Li ; Jan Hubicka ;
> gcc@gcc.gnu.org; Wenlei He 
> Subject: Re: [EXTERNAL] Re: State of AutoFDO in GCC
>
> It is a proto library build dependency issue which didn't expose on my
> platform. I fix it at
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgoogle%2Fautofdo%2Fcommit%2F98269aee9674cc885cc5eb1bd917eb2d12731710&data=04%7C01%7CEugene.Rozenfeld%40microsoft.com%7C414e79d9b075428ceffc08d91d3fd7ff%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637572982342270322%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=TxMivTXj9w0W5OFLunWcOpqf9wefrrUd0m3RqV8JLaA%3D&reserved=0.
> Please try again.
>
> Thanks,
> Wei.
>
> On Fri, May 21, 2021 at 6:28 PM Eugene Rozenfeld  eugene.rozenf...@microsoft.com> wrote:
> I tried following the instructions in "2.2 Build autofdo tool for gcc" in
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgoogle%2Fautofdo%23readme&data=04%7C01%7CEugene.Rozenfeld%40microsoft.com%7C414e79d9b075428ceffc08d91d3fd7ff%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637572982342280318%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KBPIcf5k1v230tbLke9%2FdSt25nbPrHhpBvPb8PiebPY%3D&reserved=0and
> got build failures:
>
> eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
> [1/228] Building CXX object CMakeFiles/create_gcov_lib.dir/profile.cc.o
> FAILED: CMakeFiles/create_gcov_lib.dir/profile.cc.o
> /usr/bin/c++  -I../ -I../third_party/glog/src -I../third_party/abseil
> -I../third_party/perf_data_converter/src
> -I../third_party/perf_data_converter/src/quipper -I../util -I.
> -Ithird_party/glog -std=gnu++1z -MD -MT
> CMakeFiles/create_gcov_lib.dir/profile.cc.o -MF
> CMakeFiles/create_gcov_lib.dir/profile.cc.o.d -o
> CMakeFiles/create_gcov_lib.dir/profile.cc.o -c ../profile.cc
> In file included from
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  f

RE: [EXTERNAL] Re: State of AutoFDO in GCC

2021-05-24 Thread Eugene Rozenfeld via Gcc
That fixed the error I saw before but the build still fails. The errors start 
with

eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
[2/217] Building CXX object 
CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
FAILED: 
CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
/usr/bin/c++   -I../third_party/perf_data_converter/src 
-I../third_party/perf_data_converter/src/quipper -I../ 
-I../third_party/glog/src -I../third_party/abseil -I../util -I. 
-Ithird_party/glog -std=gnu++1z -MD -MT 
CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
 -MF 
CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o.d
 -o 
CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
 -c ../third_party/perf_data_converter/src/quipper/huge_page_deducer.cc
../third_party/perf_data_converter/src/quipper/huge_page_deducer.cc:144:26: 
error: 'unordered_map' in namespace 'std' does not name a template type
   using container = std::unordered_map;
  ^



From: Wei Mi 
Sent: Monday, May 24, 2021 8:12 PM
To: Eugene Rozenfeld 
Cc: Andi Kleen ; Hongtao Yu ; Xinliang David 
Li ; Jan Hubicka ; gcc@gcc.gnu.org; Wenlei 
He 
Subject: Re: [EXTERNAL] Re: State of AutoFDO in GCC

Sorry, I added dependency for create_gcov but missed it for dump_gcov. Fixed it 
at 
https://github.com/google/autofdo/commit/6ca36cdc30986f13583a3aef3e27746ca4fc5bf6.

Thanks,
Wei.

On Mon, May 24, 2021 at 6:39 PM Eugene Rozenfeld 
mailto:eugene.rozenf...@microsoft.com>> wrote:
Thank you Wei. Looks like something is still missing. This time perf_data.pb.h 
is not found. I'm getting the error below (on Ubuntu 18.04 with cmake 3.12.1):

eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
[1/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/profile.cc.o
FAILED: CMakeFiles/dump_gcov_lib.dir/profile.cc.o
/usr/bin/c++   -I../ -I../third_party/glog/src -I../third_party/abseil 
-I../third_party/perf_data_converter/src 
-I../third_party/perf_data_converter/src/quipper -I../util -I. 
-Ithird_party/glog -std=gnu++1z -MD -MT 
CMakeFiles/dump_gcov_lib.dir/profile.cc.o -MF 
CMakeFiles/dump_gcov_lib.dir/profile.cc.o.d -o 
CMakeFiles/dump_gcov_lib.dir/profile.cc.o -c ../profile.cc
In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
 from ../sample_reader.h:18,
 from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/base/macros.h:8:0: warning: 
"DISALLOW_COPY_AND_ASSIGN" redefined
 #define DISALLOW_COPY_AND_ASSIGN(TypeName) \

In file included from ../profile.h:14:0,
 from ../profile.cc:5:
../base/macros.h:114:0: note: this is the location of the previous definition
 #define DISALLOW_COPY_AND_ASSIGN(TypeName) \

In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
 from ../sample_reader.h:18,
 from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/base/macros.h:12:0: warning: 
"arraysize" redefined
 #define arraysize(x) (sizeof(x) / sizeof(*x))

In file included from ../profile.h:14:0,
 from ../profile.cc:5:
../base/macros.h:162:0: note: this is the location of the previous definition
 #define arraysize(array) (sizeof(ArraySizeHelper(array)))

In file included from 
../third_party/perf_data_converter/src/quipper/perf_parser.h:21:0,
 from ../sample_reader.h:18,
 from ../profile.h:15,
 from ../profile.cc:5:
../third_party/perf_data_converter/src/quipper/compat/proto.h:14:10: fatal 
error: perf_data.pb.h: No such file or directory
 #include "perf_data.pb.h"
  ^~~~
compilation terminated.
[6/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/symbol_map.cc.o
ninja: build stopped: subcommand failed.

Thanks,

Eugene

From: Wei Mi mailto:w...@google.com>>
Sent: Saturday, May 22, 2021 9:37 AM
To: Eugene Rozenfeld 
mailto:eugene.rozenf...@microsoft.com>>
Cc: Andi Kleen mailto:a...@linux.intel.com>>; Hongtao Yu 
mailto:h...@fb.com>>; Xinliang David Li 
mailto:davi...@google.com>>; Jan Hubicka 
mailto:hubi...@ucw.cz>>; 
gcc@gcc.gnu.org; Wenlei He 
mailto:wen...@fb.com>>
Subject: Re: [EXTERNAL] Re: State of AutoFDO in GCC

It is a p

Re: [EXTERNAL] Re: State of AutoFDO in GCC

2021-05-24 Thread Wei Mi via Gcc
It isn't exposed on my platform either. Looks like a bug in
perf_data_converter (i.e., quipper). Could you try adding #include
 in
third_party/perf_data_converter/src/quipper/huge_page_deducer.cc and
see if it fixes the problem? If it works, I will need to file a bug
against perf_data_converter.

Thanks,
Wei.

On Mon, May 24, 2021 at 8:33 PM Eugene Rozenfeld
 wrote:
>
> That fixed the error I saw before but the build still fails. The errors start 
> with
>
>
>
> eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
>
> [2/217] Building CXX object 
> CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
>
> FAILED: 
> CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
>
> /usr/bin/c++   -I../third_party/perf_data_converter/src 
> -I../third_party/perf_data_converter/src/quipper -I../ 
> -I../third_party/glog/src -I../third_party/abseil -I../util -I. 
> -Ithird_party/glog -std=gnu++1z -MD -MT 
> CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
>  -MF 
> CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o.d
>  -o 
> CMakeFiles/quipper_perf.dir/third_party/perf_data_converter/src/quipper/huge_page_deducer.cc.o
>  -c ../third_party/perf_data_converter/src/quipper/huge_page_deducer.cc
>
> ../third_party/perf_data_converter/src/quipper/huge_page_deducer.cc:144:26: 
> error: ‘unordered_map’ in namespace ‘std’ does not name a template type
>
>using container = std::unordered_map;
>
>   ^
>
>
>
>
>
>
>
> From: Wei Mi 
> Sent: Monday, May 24, 2021 8:12 PM
> To: Eugene Rozenfeld 
> Cc: Andi Kleen ; Hongtao Yu ; Xinliang 
> David Li ; Jan Hubicka ; gcc@gcc.gnu.org; 
> Wenlei He 
> Subject: Re: [EXTERNAL] Re: State of AutoFDO in GCC
>
>
>
> Sorry, I added dependency for create_gcov but missed it for dump_gcov. Fixed 
> it at 
> https://github.com/google/autofdo/commit/6ca36cdc30986f13583a3aef3e27746ca4fc5bf6.
>
>
>
> Thanks,
>
> Wei.
>
>
>
> On Mon, May 24, 2021 at 6:39 PM Eugene Rozenfeld 
>  wrote:
>
> Thank you Wei. Looks like something is still missing. This time 
> perf_data.pb.h is not found. I'm getting the error below (on Ubuntu 18.04 
> with cmake 3.12.1):
>
> eugene@eugene-Virtual-Machine:~/autofdo1/build$ ninja
> [1/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/profile.cc.o
> FAILED: CMakeFiles/dump_gcov_lib.dir/profile.cc.o
> /usr/bin/c++   -I../ -I../third_party/glog/src -I../third_party/abseil 
> -I../third_party/perf_data_converter/src 
> -I../third_party/perf_data_converter/src/quipper -I../util -I. 
> -Ithird_party/glog -std=gnu++1z -MD -MT 
> CMakeFiles/dump_gcov_lib.dir/profile.cc.o -MF 
> CMakeFiles/dump_gcov_lib.dir/profile.cc.o.d -o 
> CMakeFiles/dump_gcov_lib.dir/profile.cc.o -c ../profile.cc
> In file included from 
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  from ../profile.cc:5:
> ../third_party/perf_data_converter/src/quipper/base/macros.h:8:0: warning: 
> "DISALLOW_COPY_AND_ASSIGN" redefined
>  #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
>
> In file included from ../profile.h:14:0,
>  from ../profile.cc:5:
> ../base/macros.h:114:0: note: this is the location of the previous definition
>  #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
>
> In file included from 
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:18:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  from ../profile.cc:5:
> ../third_party/perf_data_converter/src/quipper/base/macros.h:12:0: warning: 
> "arraysize" redefined
>  #define arraysize(x) (sizeof(x) / sizeof(*x))
>
> In file included from ../profile.h:14:0,
>  from ../profile.cc:5:
> ../base/macros.h:162:0: note: this is the location of the previous definition
>  #define arraysize(array) (sizeof(ArraySizeHelper(array)))
>
> In file included from 
> ../third_party/perf_data_converter/src/quipper/perf_parser.h:21:0,
>  from ../sample_reader.h:18,
>  from ../profile.h:15,
>  from ../profile.cc:5:
> ../third_party/perf_data_converter/src/quipper/compat/proto.h:14:10: fatal 
> error: perf_data.pb.h: No such file or directory
>  #include "perf_data.pb.h"
>   ^~~~
> compilation terminated.
> [6/241] Building CXX object CMakeFiles/dump_gcov_lib.dir/symbol_map.cc.o
> ninja: build stopped: subcommand failed.
>
> Thanks,
>
> Eugene
>
> From: Wei Mi 
> Sent: Saturday, May 22, 2021 9:37 AM
> To: Eugene Rozenfeld 
> Cc: Andi Kleen ; Hongtao Yu ; Xinliang 
> David Li ; Jan Hubicka ; gcc@gcc.gnu.org; 
> Wenlei He 
> Subject: Re: [EXTERNAL] Re: State of AutoFDO in GCC
>
> It is a proto library build dependency issue which didn't expose on my 
> platform. I fix it at 
> https

Re: GCC 9.4 Status Report (2021-05-19), branch frozen for release

2021-05-24 Thread Richard Biener
On Fri, 21 May 2021, Jason Merrill wrote:

> Sorry, just pushed 3 patches before I noticed this.  They're safe but not
> critical, should I back them out?

They look safe indeed, so let's keep them in.

Richard.

> On Wed, May 19, 2021 at 4:06 AM Richard Biener  wrote:
> 
> >
> > Status
> > ==
> >
> > The GCC 9 branch is now frozen for the upcoming GCC 9.4 release.
> > I will announce a first release candidate shortly.
> >
> > All changes require release manager approval now.
> >
> >
> > Quality Data
> > 
> >
> > Priority  #   Change from last report
> > ---   ---
> > P1-   1
> > P2  304   -   7
> > P3   23   +   7
> > P4  174
> > P5   23
> > ---   ---
> > Total P1-P3 328   -   1
> > Total   525   -   1
> >
> >
> > Previous Report
> > ===
> >
> > https://gcc.gnu.org/pipermail/gcc/2021-April/235948.html
> >
> >
> 

-- 
Richard Biener 
SUSE Software Solutions Germany GmbH, Maxfeldstrasse 5, 90409 Nuernberg,
Germany; GF: Felix Imendörffer; HRB 36809 (AG Nuernberg)