gcc-11-20210807 is now available

2021-08-07 Thread GCC Administrator via Gcc
Snapshot gcc-11-20210807 is now available on https://gcc.gnu.org/pub/gcc/snapshots/11-20210807/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 11 git branch with the following options: git://gcc.gnu.org/git/gcc.git branch

C++ member functions vs C++ free-functions, which compiles faster???

2021-08-07 Thread unlvsur unlvsur via Gcc
struct foo { void write() { //dosomething } }; Vs struct foo { }; Inline void write(foo&) { //dosomething } Which one compiles faster? My guess is that the first one compiles faster since it is more context free compared to 2nd one. Sent from Mail

Re: Suboptimal code generated for __buitlin_trunc on AMD64 without SS4_4.1

2021-08-07 Thread Stefan Kanthak
Joseph Myers wrote: > On Fri, 6 Aug 2021, Stefan Kanthak wrote: PLEASE DON'T STRIP ATTRIBUTION LINES: I did not write the following paragraph! >> > I don't know what the standard says about NaNs in this case, I seem to >> > remember that arithmetic instructions typically produce QNaN when one

Optimizer failure

2021-08-07 Thread Stefan Kanthak
Hi, for the function (really: ternary expressions) int dummy(int x) { #ifdef VARIANT x < 0 ? --x : x > 0 ? ++x : 0; #else x < 0 ? --x : x > 0 ? ++x : x; #endif } GCC 10.2.0 generates the following code targeting AMD64: testl %edi, %edi js .L0 leal1(%rd

Re: 'hash_map>'

2021-08-07 Thread Jonathan Wakely via Gcc
On Sat, 7 Aug 2021, 09:08 Thomas Schwinge, wrote: > Hi! > > On 2021-08-06T19:37:58+0100, Jonathan Wakely > wrote: > > On Fri, 6 Aug 2021, 17:58 Thomas Schwinge, > wrote: > >> So I'm trying to do some C++... ;-) > >> > >> Given: > >> > >> /* A map from SSA names or var decls to record field

Re: 'hash_map>'

2021-08-07 Thread Thomas Schwinge
Hi! On 2021-08-06T19:37:58+0100, Jonathan Wakely wrote: > On Fri, 6 Aug 2021, 17:58 Thomas Schwinge, wrote: >> So I'm trying to do some C++... ;-) >> >> Given: >> >> /* A map from SSA names or var decls to record fields. */ >> typedef hash_map field_map_t; >> >> /* For each propaga