[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-12 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #10 from CVS Commits --- The master branch has been updated by Uros Bizjak : https://gcc.gnu.org/g:b37351e3279d192d5d4682f002abe5b2e133bba6 commit r12-4359-gb37351e3279d192d5d4682f002abe5b2e133bba6 Author: Uros Bizjak Date: Tue O

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-08 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #9 from Uroš Bizjak --- An interesting observation with the following testcase: --cut here-- typedef char V __attribute__((vector_size(4))); struct S { char val; char pad1; char pad2; char pad3; }; V foo (V v) { v[0] <<=

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-07 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #8 from Uroš Bizjak --- Created attachment 51564 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51564&action=edit Prototype patch Attached patch works around reload problem and creates: movl%edi, %eax movb

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-04 Thread segher at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #7 from Segher Boessenkool --- (In reply to Richard Biener from comment #5) > Not sure whether targets should have a special-case pattern here or whether > that's for combine to un-canonicalize it? Is the shift defined anywhere as th

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-04 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #6 from Uroš Bizjak --- (In reply to Richard Biener from comment #5) > The GIMPLE IL is now using BIT_INSERT_EXPRs consistently for all cases and > combine does > > Trying 8 -> 11: > 8: {r90:SI=r89:SI<<0x1;clobber flags:CC;} >

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-04 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 Richard Biener changed: What|Removed |Added CC||segher at gcc dot gnu.org --- Comment #

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-04 Thread gabravier at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #4 from Gabriel Ravier --- That's a bit odd, really - I'm just using the latest released sub-versions of each of these (except for GCC 6 since I only have access to it through Godbolt which doesn't have GCC 6.5), i.e. GCC 6.4, 7.5, 8.

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-04 Thread zsojka at seznam dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 --- Comment #3 from Zdenek Sojka --- (In reply to Gabriel Ravier from comment #2) > Seems like they've all got identical code generation over here since GCC 7, > and the GCC 6 code generation is just very bad for bar (although GCC 7 also > change

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2021-10-03 Thread gabravier at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 Gabriel Ravier changed: What|Removed |Added CC||gabravier at gmail dot com --- Comment

[Bug target/85730] complex code for modifying lowest byte in a 4-byte vector

2018-05-10 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85730 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|