[Bug gcov-profile/101408] New: [gcov] "__FLT_EVAL_METHOD__ " leads to incorrect coverage of case statement

2021-07-10 Thread byone.heng at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101408

Bug ID: 101408
   Summary: [gcov] "__FLT_EVAL_METHOD__ " leads to incorrect
coverage of case statement
   Product: gcc
   Version: 11.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: gcov-profile
  Assignee: unassigned at gcc dot gnu.org
  Reporter: byone.heng at gmail dot com
CC: marxin at gcc dot gnu.org
  Target Milestone: ---

$./gcc -v   
Using built-in specs.
COLLECT_GCC=./gcc
COLLECT_LTO_WRAPPER=/home/x/project/gcc/build/install/libexec/gcc/x86_64-pc-linux-gnu/11.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../configure --prefix=/home/x/project/gcc/build/install
--enable-checking=release --enable-languages=c,c++ --disable-multilib
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.0.0 20210105 (experimental) (GCC)

$cat test.c

static volatile unsigned long int true_var = 1;
static const unsigned char false_var = 0;

int main (int argc, char** argv)
{
  switch (__FLT_EVAL_METHOD__)
{
  case 0:
  case 1:
  case 2:
  case -1:
return 0;
  default:
return 1;
}
}

$gcc -O0 --coverage test.c;./a.out;gcov test;cat test.c.gcov

-:4:static volatile unsigned long int true_var = 1;
-:5:static const unsigned char false_var = 0;
-:6:
-:7:/* Test that we only see the C99/C11 values for
__FLT_EVAL_METHOD__ if
-:8:   we are compiling with -std=c11.  */
-:9:
1:   10:int main (int argc, char** argv)
-:   11:{
-:   12:  switch (__FLT_EVAL_METHOD__)
-:   13:{
-:   14:  case 0:
-:   15:  case 1:
-:   16:  case 2:
-:   17:  case -1:
1:   18:return 0;
-:   19:  default:
-:   20:return 1;
-:   21:}
-:   22:}

Line 14 should be executed one time.

[Bug go/101407] non-determinism in -fdump-go-spec

2021-07-10 Thread toolybird at tuta dot io via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101407

--- Comment #2 from Toolybird  ---
> Will try to bisect

Well, that was a complete waste of time. There seems to an element of
randomness to the problem. It turns out that GCC 10 is also affected as I was
able to trigger it all the way back to

basepoints/gcc-10

I give up for the moment. Hopefully someone who cares about binary
reproducibility sees this, is able to replicate and fix.

[Bug tree-optimization/56223] Integer ABS is not recognized for more complicated pattern

2021-07-10 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56223

--- Comment #9 from Andrew Pinski  ---
Note I did submit a patch
(https://gcc.gnu.org/pipermail/gcc-patches/2021-July/574892.html) for:
int abs0(int a, int b)
{
  int c = a - b;
  if (c <= 0) c = b - a;
  return c;
}
But this is unrelated to your original testcase.

[Bug target/101395] [11/12 regression] Compile failure with -march=native -m32 on sapphirerapids

2021-07-10 Thread wwwhhhyyy333 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101395

--- Comment #4 from Hongyu Wang  ---
(In reply to H.J. Lu from comment #3)
> Created attachment 51125 [details]
> An updated patch

This works, thanks.

[Bug go/101407] non-determinism in -fdump-go-spec

2021-07-10 Thread toolybird at tuta dot io via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101407

--- Comment #1 from Toolybird  ---
The bug is present on trunk. Will try to bisect...

[Bug go/101407] New: non-determinism in -fdump-go-spec

2021-07-10 Thread toolybird at tuta dot io via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101407

Bug ID: 101407
   Summary: non-determinism in -fdump-go-spec
   Product: gcc
   Version: 11.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: go
  Assignee: ian at airs dot com
  Reporter: toolybird at tuta dot io
CC: cmang at google dot com
  Target Milestone: ---

I'm seeing a reproducibility issue when building gcc-go in GCC 11. Every build
run produces a different binary.

I've narrowed down the test case to essentially this:

$ gcc -fdump-go-spec=tmp-1.go -S -o sysinfo.s sysinfo.c
$ gcc -fdump-go-spec=tmp-2.go -S -o sysinfo.s sysinfo.c

$ diff -u tmp-1.go tmp-2.go
--- tmp-1.go2021-07-11 07:26:58.512916883 +1000
+++ tmp-2.go2021-07-11 07:27:07.976340655 +1000
@@ -8519,10 +8519,10 @@
 const _PRIxFAST8 = "x"
 const ___POSIX_FADV_DONTNEED = 4
 const _IPPROTO_MTP = 92
-type ___dirstream struct {}
-type ___va_list_tag struct {}
 type _iface struct {}
 type ___locale_data struct {}
 type __IO_marker struct {}
 type __IO_codecvt struct {}
 type __IO_wide_data struct {}
+type ___dirstream struct {}
+type ___va_list_tag struct {}

The file in question is libgo/sysinfo.c

The output seems to differ each time. Occasionally it is the same.

This didn't happen with GCC 10. I suppose I should try the trunk but haven't
done so yet.

Any thoughts? Thanks.

[Bug libstdc++/101406] New: shared_ptr in _S_atomic mode still uses __atomic_add_dispatch()

2021-07-10 Thread marc.mutz at kdab dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101406

Bug ID: 101406
   Summary: shared_ptr in _S_atomic mode still uses
__atomic_add_dispatch()
   Product: gcc
   Version: 11.1.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: marc.mutz at kdab dot com
  Target Milestone: ---

Consider

 // https://godbolt.org/z/efTW6MoEh
 void test_copy(const std::shared_ptr )
 { auto copy = sp; }

vs.

 // https://godbolt.org/z/3aoGq1f9P
 void test_copy(const boost::shared_ptr )
 { auto copy = sp; }

In the first cast, over 70 lines of assembler are emitted, in the second,
around 30. This seems to be in large part because in
_Sp_counted_base::_M_add_ref_copy(), you're using __atomic_add_dispatch() even
if _Lp is _S_atomic. It seems to me that a specialisation of this function
template for _S_atomic calling just __atomic_add() is missing:
https://godbolt.org/z/crPz9hGe7

Probably same for the deref case, too.

[Bug c++/101405] New: internal compiler error: in reshape_init_class, at cp/decl.c:6483

2021-07-10 Thread carlo at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101405

Bug ID: 101405
   Summary: internal compiler error: in reshape_init_class, at
cp/decl.c:6483
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: carlo at gcc dot gnu.org
  Target Milestone: ---

Invalid code.

struct A {
  int const a = 1;
  int const b = 2;
};

struct B : A {
  using A::a;
  using A::b;
  int const c = 3;
  int const d = 4;
};

int main()
{
  [[maybe_unused]] B b =
  {
  .a = 10,
  .d = 42
  };
}

Result:

prog.cc: In function 'int main()':
prog.cc:19:3: internal compiler error: in reshape_init_class, at cp/decl.c:6483
   19 |   };
  |   ^
0x5ffc9b reshape_init_class
../../source/gcc/cp/decl.c:6483
0x5ffc9b reshape_init_r
../../source/gcc/cp/decl.c:6791
0x6b19ac reshape_init(tree_node*, tree_node*, int)
../../source/gcc/cp/decl.c:6867
0x6b3e12 check_initializer
../../source/gcc/cp/decl.c:7064
0x6c7978 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int)
../../source/gcc/cp/decl.c:8101
0x7823d7 cp_parser_init_declarator
../../source/gcc/cp/parser.c:22258
0x760a04 cp_parser_simple_declaration
../../source/gcc/cp/parser.c:14801
0x76282d cp_parser_declaration_statement
../../source/gcc/cp/parser.c:13936
0x762ba6 cp_parser_statement
../../source/gcc/cp/parser.c:12066
0x763d2d cp_parser_statement_seq_opt
../../source/gcc/cp/parser.c:12433
0x763de0 cp_parser_compound_statement
../../source/gcc/cp/parser.c:12382
0x78051a cp_parser_function_body
../../source/gcc/cp/parser.c:24448
0x78051a cp_parser_ctor_initializer_opt_and_function_body
../../source/gcc/cp/parser.c:24499
0x78174a cp_parser_function_definition_after_declarator
../../source/gcc/cp/parser.c:30572
0x7828ac cp_parser_function_definition_from_specifiers_and_declarator
../../source/gcc/cp/parser.c:30488
0x7828ac cp_parser_init_declarator
../../source/gcc/cp/parser.c:22020
0x760a04 cp_parser_simple_declaration
../../source/gcc/cp/parser.c:14801
0x78b715 cp_parser_declaration
../../source/gcc/cp/parser.c:14498
0x78c3a6 cp_parser_toplevel_declaration
../../source/gcc/cp/parser.c:14527
0x78c3a6 cp_parser_translation_unit
../../source/gcc/cp/parser.c:4958
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See  for instructions.

Tested on https://wandbox.org/permlink/I8cRHJ2jAk9Op94a

[Bug tree-optimization/101403] [12 Regression] wrong code with __builtin_bswap16() at -O1 by r12-2137

2021-07-10 Thread zsojka at seznam dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101403

--- Comment #5 from Zdenek Sojka  ---
(In reply to Jakub Jelinek from comment #4)
> Isn't the testcase UB? It reads uninitialized u (though it doesn't use the
> value for anything).

You are very right about that! The value is used, even though the use is
optimised out.
I am using -fsanitize=undefined when reducing testcases, but this one wasn't
caught. The only warning I see with -Wall -W is "warning: left-hand operand of
comma expression has no effect [-Wunused-value]". valgrind also doesn't
complain because, obviously, the uninitialised read is optimised out.

[Bug other/101166] Add SPDX license identifiers

2021-07-10 Thread egallager at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101166

Eric Gallager  changed:

   What|Removed |Added

   Last reconfirmed||2021-07-10
   Keywords||documentation
 Status|UNCONFIRMED |NEW
 Ever confirmed|0   |1
 CC||egallager at gcc dot gnu.org

--- Comment #2 from Eric Gallager  ---
Also brought up on the mailing lists here; I'll confirm: 
https://gcc.gnu.org/pipermail/gcc/2021-July/236717.html

[Bug tree-optimization/101403] [12 Regression] wrong code with __builtin_bswap16() at -O1 by r12-2137

2021-07-10 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101403

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek  ---
Isn't the testcase UB? It reads uninitialized u (though it doesn't use the
value for anything).

[Bug ipa/101396] [12 Regression] ICE in decompose, at wide-int.h:984 with -flto and incompatible enum class definitions

2021-07-10 Thread xry111 at mengyan1223 dot wang via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101396

--- Comment #3 from Xi Ruoyao  ---
Patch sent to gcc-patches:
https://gcc.gnu.org/pipermail/gcc-patches/2021-July/574890.html

[Bug tree-optimization/101373] PRE hoists trapping instructions over possibly throwing calls

2021-07-10 Thread rguenther at suse dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101373

--- Comment #11 from rguenther at suse dot de  ---
On July 10, 2021 7:13:47 PM GMT+02:00, rguenther at suse dot de
 wrote:
>https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101373
>
>--- Comment #10 from rguenther at suse dot de de> ---
>On July 9, 2021 9:43:52 PM GMT+02:00, "ebotcazou at gcc dot gnu.org"
> wrote:
>>https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101373
>>
>>--- Comment #9 from Eric Botcazou  ---
>>Or maybe I misunderstood your request and you wanted an Ada testcase
>>where the
>>hoisting would still happen despite the fix for C++?
>
>No, I thought we could have one that's fixed when the hoisting does not
>happen...

Maybe for that we just have to use the result of the call in the non-throwing
case.

[Bug tree-optimization/101373] PRE hoists trapping instructions over possibly throwing calls

2021-07-10 Thread rguenther at suse dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101373

--- Comment #10 from rguenther at suse dot de  ---
On July 9, 2021 9:43:52 PM GMT+02:00, "ebotcazou at gcc dot gnu.org"
 wrote:
>https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101373
>
>--- Comment #9 from Eric Botcazou  ---
>Or maybe I misunderstood your request and you wanted an Ada testcase
>where the
>hoisting would still happen despite the fix for C++?

No, I thought we could have one that's fixed when the hoisting does not
happen...

[Bug tree-optimization/101403] [12 Regression] wrong code with __builtin_bswap16() at -O1 by r12-2137

2021-07-10 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101403

Roger Sayle  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |roger at 
nextmovesoftware dot com

--- Comment #3 from Roger Sayle  ---
Testing a fix. Sorry for the inconvenience.  An even more reduced test case is:
unsigned int foo (unsigned int a)
{
  unsigned int u;
  /* b == 0x8000 */
  unsigned short b = __builtin_bswap16 (a);
  /* result = 0x0008 */
  // This works: return b >> 12;
  // This doesn't:
  return b >> (u, 12);
}

int main (void)
{
  unsigned int x = foo (0x80);
  if (x != 0x0008)
__builtin_abort ();
  return 0;
}
The change in signedness of the right shift (from logical to arithmetic)
triggers an oversight in my recent folding optimization.

[Bug tree-optimization/101403] [12 Regression] wrong code with __builtin_bswap16() at -O1 by r12-2137

2021-07-10 Thread hjl.tools at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101403

H.J. Lu  changed:

   What|Removed |Added

 CC||hjl.tools at gmail dot com
 Ever confirmed|0   |1
 Status|UNCONFIRMED |NEW
Summary|[12 Regression] wrong code  |[12 Regression] wrong code
   |with __builtin_bswap16() at |with __builtin_bswap16() at
   |-O1 |-O1 by r12-2137
   Last reconfirmed||2021-07-10

--- Comment #2 from H.J. Lu  ---
This is introduced by

commit 4c619132b3f14dc5e672a7f2f0e09cb784193559
Author: Roger Sayle 
Date:   Thu Jul 8 11:46:14 2021 +0100

PR tree-optimization/40210: Fold (bswap(X)>>C1) to (X>>C3) in
match.pd

[Bug tree-optimization/101404] cond_removal_in_popcount_clz_ctz_pattern and factor_out_conditional_conversion do a similar transformation

2021-07-10 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101404

Andrew Pinski  changed:

   What|Removed |Added

 Ever confirmed|0   |1
 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2021-07-10

--- Comment #1 from Andrew Pinski  ---
Mine.

[Bug tree-optimization/101404] New: cond_removal_in_popcount_clz_ctz_pattern and factor_out_conditional_conversion do a similar transformation

2021-07-10 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101404

Bug ID: 101404
   Summary: cond_removal_in_popcount_clz_ctz_pattern and
factor_out_conditional_conversion do a similar
transformation
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: enhancement
  Priority: P3
 Component: tree-optimization
  Assignee: pinskia at gcc dot gnu.org
  Reporter: pinskia at gcc dot gnu.org
  Target Milestone: ---

Looking into what code could be simplified, I noticed
cond_removal_in_popcount_clz_ctz_pattern and factor_out_conditional_conversion
are really doing a similar transformation and could even be combined.

Yes cond_removal_in_popcount_clz_ctz_pattern checks the conditional part of the
if statement but I don't think it needs to really.

[Bug tree-optimization/92335] [10/11/12 Regression] sinking of loads happen too early which causes vectorization not to be done

2021-07-10 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92335

Andrew Pinski  changed:

   What|Removed |Added

   Keywords||missed-optimization
  Known to work||7.3.0
Summary|missed transformation to|[10/11/12 Regression]
   |branchless  |sinking of loads happen too
   ||early which causes
   ||vectorization not to be
   ||done
  Known to fail||10.1.0
   Target Milestone|--- |10.4

--- Comment #4 from Andrew Pinski  ---
I looked into this and find we are sinking the load of y[i] too early.
That is using -fno-tree-sink, we are able to produce the optimized code.
It would also mean it is a regression even and yes the testcase in comment #3
was able to produce vectorized code in GCC 7.3.0.

[Bug tree-optimization/101403] [12 Regression] wrong code with __builtin_bswap16() at -O1

2021-07-10 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101403

Andrew Pinski  changed:

   What|Removed |Added

 CC||roger at nextmovesoftware dot 
com
   Target Milestone|--- |12.0
  Component|target  |tree-optimization

--- Comment #1 from Andrew Pinski  ---
Most likely introduced by r12-2137.

[Bug ipa/101396] [12 Regression] ICE in decompose, at wide-int.h:984 with -flto and incompatible enum class definitions

2021-07-10 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101396

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |12.0

[Bug target/101403] New: [12 Regression] wrong code with __builtin_bswap16() at -O1

2021-07-10 Thread zsojka at seznam dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101403

Bug ID: 101403
   Summary: [12 Regression] wrong code with __builtin_bswap16() at
-O1
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: zsojka at seznam dot cz
  Target Milestone: ---
  Host: x86_64-pc-linux-gnu
Target: x86_64-pc-linux-gnu

Created attachment 51129
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51129=edit
reduced testcase

$ x86_64-pc-linux-gnu-gcc -O testcase.c
$ ./a.out 
Aborted


$ x86_64-pc-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=/repo/gcc-trunk/binary-latest-amd64/bin/x86_64-pc-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-r12-2234-20210709194853-g1798cac7a8b-checking-yes-rtl-df-extra-nobootstrap-amd64/bin/../libexec/gcc/x86_64-pc-linux-gnu/12.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++
--enable-valgrind-annotations --disable-nls --enable-checking=yes,rtl,df,extra
--disable-bootstrap --with-cloog --with-ppl --with-isl
--build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu
--target=x86_64-pc-linux-gnu --with-ld=/usr/bin/x86_64-pc-linux-gnu-ld
--with-as=/usr/bin/x86_64-pc-linux-gnu-as --disable-libstdcxx-pch
--prefix=/repo/gcc-trunk//binary-trunk-r12-2234-20210709194853-g1798cac7a8b-checking-yes-rtl-df-extra-nobootstrap-amd64
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.0.0 20210710 (experimental) (GCC)

[Bug ipa/101396] [12 Regression] ICE in decompose, at wide-int.h:984 with -flto and incompatible enum class definitions

2021-07-10 Thread xry111 at mengyan1223 dot wang via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101396

--- Comment #2 from Xi Ruoyao  ---
Created attachment 51128
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51128=edit
proposed patch

Patch proposed.  Will bootstrap & regtest to make sure it correct.

[Bug ipa/101396] [12 Regression] ICE in decompose, at wide-int.h:984 building webkitgtk-2.32.2 with -flto -fipa-pta

2021-07-10 Thread xry111 at mengyan1223 dot wang via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101396

--- Comment #1 from Xi Ruoyao  ---
Testcase:

$ cat a.cpp

enum class A : __INT32_TYPE__ {
a,
b,
c
};

int main()
{
return (int) A::a;
}

$ cat b.cpp

enum class A : __UINT64_TYPE__ {
a,
b,
c
};

int f(enum A x)
{
return (int) x;
}

$ ~/gcc-trunk/bin/g++ a.cpp b.cpp -flto

during IPA pass: odr
lto1: internal compiler error: in decompose, at wide-int.h:984

[Bug tree-optimization/96392] Optimize x+0.0 if x is an integer

2021-07-10 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96392

Roger Sayle  changed:

   What|Removed |Added

 CC||roger at nextmovesoftware dot 
com
 Resolution|--- |FIXED
   Target Milestone|--- |12.0
 Status|NEW |RESOLVED

--- Comment #3 from Roger Sayle  ---
The optimization is now implemented in mainline GCC.

[Bug tree-optimization/40210] gcc byte swap builtins inadequately optimized

2021-07-10 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=40210

Roger Sayle  changed:

   What|Removed |Added

 CC||roger at nextmovesoftware dot 
com
 Resolution|--- |FIXED
 Status|UNCONFIRMED |RESOLVED
   Target Milestone|--- |12.0

--- Comment #13 from Roger Sayle  ---
All of the (bswap-related) optimizations mentioned in PR
tree-optimization/40210 are now implemented in mainline GCC.

[Bug target/11877] gcc should use xor trick with -Os

2021-07-10 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=11877

Roger Sayle  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 CC||roger at nextmovesoftware dot 
com
 Status|ASSIGNED|RESOLVED
   Target Milestone|--- |12.0

--- Comment #12 from Roger Sayle  ---
Fixed on mainline thanks to Jakub's patch.