Bug 20991 – Optimizer is not unlining various forms of simple loops

Status
NEW
Severity
normal
Priority
P3
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2020-06-28T22:30:49Z
Last change time
2024-12-13T19:09:48Z
Keywords
performance
Assigned to
No Owner
Creator
Walter Bright
Moved to GitHub: dmd#19736 →

Comments

Comment #0 by bugzilla — 2020-06-28T22:30:49Z
The optimizer will unroll a loop of the form: for (uint i = 0; i < 2; ++i) foo(i); but not: for (uint i = 0; i <= 1; ++i) foo(i); or loops with more complex bodies. It will not unroll more than two iterations. Should be up to 100.
Comment #1 by bugzilla — 2020-06-30T07:13:45Z
Comment #2 by bugzilla — 2020-06-30T22:57:00Z
More unrolling information: https://github.com/dlang/phobos/pull/7534
Comment #3 by bugzilla — 2020-07-06T08:07:45Z
Comment #4 by robert.schadek — 2024-12-13T19:09:48Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/19736 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB