Jump to page: 1 2
Thread overview
[Issue 19550] [REG 2.078] Massive compiler backend slowdown
Jan 04, 2019
Iain Buclaw
Jan 04, 2019
Iain Buclaw
Jan 04, 2019
Iain Buclaw
Jan 05, 2019
Ketmar Dark
Jan 05, 2019
Walter Bright
Dec 12, 2019
Walter Bright
Apr 29, 2020
safety0ff.bugz
Apr 29, 2020
safety0ff.bugz
Apr 29, 2020
safety0ff.bugz
Apr 29, 2020
safety0ff.bugz
May 01, 2020
Dlang Bot
May 01, 2020
Dlang Bot
Apr 09, 2021
Walter Bright
January 04, 2019
https://issues.dlang.org/show_bug.cgi?id=19550

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuclaw@gdcproject.org

--- Comment #1 from Iain Buclaw <ibuclaw@gdcproject.org> ---
First bad commit: https://github.com/dlang/dmd/pull/7386

--
January 04, 2019
https://issues.dlang.org/show_bug.cgi?id=19550

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuclaw@gdcproject.org

--- Comment #1 from Iain Buclaw <ibuclaw@gdcproject.org> ---
First bad commit: https://github.com/dlang/dmd/pull/7386

--
January 04, 2019
https://issues.dlang.org/show_bug.cgi?id=19550

--- Comment #2 from Iain Buclaw <ibuclaw@gdcproject.org> ---
Commenting out the call to blassertsplit() fixes this issue.

--
January 05, 2019
https://issues.dlang.org/show_bug.cgi?id=19550

Ketmar Dark <ketmar@ketmar.no-ip.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ketmar@ketmar.no-ip.org

--
January 05, 2019
https://issues.dlang.org/show_bug.cgi?id=19550

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
https://github.com/dlang/dmd/pull/9202

--
December 12, 2019
https://issues.dlang.org/show_bug.cgi?id=19550

--- Comment #4 from Walter Bright <bugzilla@digitalmars.com> ---
This bug is still there.

--
April 29, 2020
https://issues.dlang.org/show_bug.cgi?id=19550

safety0ff.bugz <safety0ff.bugz@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |safety0ff.bugz@gmail.com
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=6401,
                   |                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=7157

--- Comment #5 from safety0ff.bugz <safety0ff.bugz@gmail.com> ---
I ran the test code through callgrind and `accumaecpx` gets called 6.155 million times.

Adding issues #6401 and #7157 to the see also list.

--
April 29, 2020
https://issues.dlang.org/show_bug.cgi?id=19550

--- Comment #6 from safety0ff.bugz <safety0ff.bugz@gmail.com> ---
Ok I believe to have found the culprit:
There is a special case for OPcomma here, which traverses the entire list of
elems:
https://github.com/dlang/dmd/blob/793635ea7ad3cf30c02bf1b5d51eefdc166c8b82/src/dmd/backend/gflow.d#L624

But `accumaecpx`already recurses over the list of elems: https://github.com/dlang/dmd/blob/793635ea7ad3cf30c02bf1b5d51eefdc166c8b82/src/dmd/backend/gflow.d#L1102 at `accumaecpx(n.EV.E2);`

--
April 29, 2020
https://issues.dlang.org/show_bug.cgi?id=19550

--- Comment #7 from safety0ff.bugz <safety0ff.bugz@gmail.com> ---
Created attachment 1781
  --> https://issues.dlang.org/attachment.cgi?id=1781&action=edit
preliminary patch

Attached a preliminary patch.
It doesn't help the other related bugzilla issues, but takes the test case from
this issue from 1m5.368s -> 0m0.603s.

--
April 29, 2020
https://issues.dlang.org/show_bug.cgi?id=19550

safety0ff.bugz <safety0ff.bugz@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|https://issues.dlang.org/sh |
                   |ow_bug.cgi?id=6401,         |
                   |https://issues.dlang.org/sh |
                   |ow_bug.cgi?id=7157          |

--
« First   ‹ Prev
1 2