[Bug c++/102228] lookup_anon_field is quadratic

2021-09-11 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 Andrew Pinski changed: What|Removed |Added Target Milestone|--- |12.0

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-08 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 Richard Biener changed: What|Removed |Added Resolution|--- |FIXED Known to work|

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-08 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 --- Comment #7 from CVS Commits --- The master branch has been updated by Richard Biener : https://gcc.gnu.org/g:716a5836928ee6d8fb884d9a2fbc1b1386ec8994 commit r12-3421-g716a5836928ee6d8fb884d9a2fbc1b1386ec8994 Author: Richard Biener Date:

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-08 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 --- Comment #6 from Richard Biener --- I do have a functional patch which improves the -fsyntax-only compile-time for the PR101555 testcase from 14s to 2s. After lookup_anon_field is gone PR83309 pops up of course: Samples: 6K of event

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-07 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 --- Comment #5 from Richard Biener --- (In reply to Richard Biener from comment #4) > I think there must be also a 1:1 correspondence to anon type and its single > use FIELD_DECL thus building a back-chain via DECL_CONTEXT and a new >

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-07 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 --- Comment #4 from Richard Biener --- I think there must be also a 1:1 correspondence to anon type and its single use FIELD_DECL thus building a back-chain via DECL_CONTEXT and a new ANON_AGGR_TYPE_FIELD should be possible. At least I failed

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-07 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 --- Comment #3 from Richard Biener --- The odd thing is of course that name lookup must already have found MEMBER and thus visited the path to it. It would just need to record that :/

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-07 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 --- Comment #2 from Richard Biener --- For the PR101555 testcase if you can trust callgrind we get 4000 times into build_class_member_access_expr and recurse 3000 times which means on average we have two nested anon aggregates. But then the

[Bug c++/102228] lookup_anon_field is quadratic

2021-09-07 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102228 Richard Biener changed: What|Removed |Added CC||jason at gcc dot gnu.org