| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* fix #15286
* fix spacing
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* fixes #15110
* fixes #15096
* prepare varpartitions for cursor inference
* new cursor inference begins to work
* make tests green
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* arc: cursors for simple for loop variables
* merged devel
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* WIP: an optimizer for ARC
* do not optimize away destructors in 'finally' if unstructured control flow is involved
* optimized the optimizer
* minor code cleanup
* first steps to .cursor inference
* cursor inference: big steps to a working solution
* baby steps
* better .cursor inference
* new feature: expandArc for easy inspection of the AST after ARC transformations
* added topt_cursor test
* adapt tests
* cleanups, make tests green
* optimize common traversal patterns
* moved test case
* fixes .cursor inference so that npeg compiles once again
* cursor inference: more bugfixes
Co-authored-by: Clyybber <darkmine956@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* injectdestructors fixes and refactor
* Tiny cleanup
* Refactor and expand testcase
* Closes #14902 by adding testcase
* Better naming
* Fix test failures
* Misc cleanup
* Add testcase for #14968
* Better approach; expand testcases
* Optimizations and fixes
* Add testcase
* typo
* Tiny cleanup
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
* fixes the regressions
* closes #13936
* scope based memory management implemented
* enabled tcontrolflow.nim test case
* final cleanups
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* DFA and injectdestructors cleanup
* More precise write analysis
* Cleanup obsoleted path
* Unify defInstrTargets and useInstrTargets
* Misc cleanups
* Nicer CFG printing
* Misc cleanups 2
|
|
|
|
|
|
|
| |
* Fix #14568
* Add testcase
* Fix bogus test
* Adapt other failing tests
* Declarations are always first writes
|
| |
|
|
|
|
| |
* sigmatch: removed dead code
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* New ping-pong analysis
* Add testcase for #13456
* Remove debugging leftover
* Unquote "unstructured controlflow"
* Fix typo
* Fix exponential complexity in edge cases
* Add sanity testcase
* Fix
|
|
|
| |
Co-authored-by: b3liever <b3liever@yandex.com>
|
|
|
| |
Co-authored-by: cooldome <ariabushenko@bk.ru>
|
|
|
| |
Co-authored-by: Antonis <b3liever@yandex.com>
|
| |
|
| |
|
|
|
|
|
| |
* Fix the DFA for "unstructured controlflow"
* Add testcase from #14233
|
|
|
|
|
| |
* destructors: don't produce stupid code for 'cast'
* fixes #14207
|
|
|
|
|
|
|
|
|
| |
* Fix sym owner in wrapper proc
* threadpool changes
* revert lowerings
* add newFastMoveStmt
* try fixing test by switching to cpp
Co-authored-by: cooldome <ariabushenko@bk.ru>
|
|
|
|
|
| |
* add test
* add changelod entry
Co-authored-by: cooldome <ariabushenko@bk.ru>
|
|
|
|
|
| |
* fixes #13722
* better fix
|
| |
|
| |
|
|
|
|
|
| |
* scope based destructors
* handle 'or' and 'and' expressions properly, see the new test arc/tcontrolflow.nim
* make this branch mergable, logic is disabled for now
|
| |
|
|
|
|
|
| |
* fixes #13659
Co-authored-by: cooldome <ariabushenko@bk.ru>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ensure capitalize doesn't take an inferred sink parameter
* sink parameter inference: first version, for now disabled. Changed that sink parameters can be consumed multiple times in order to adhere to our spec.
* sink inference can now be disabled with .nosinks; sometimes for proc type interop this is required
* fixes yet another critical DFA bug
* better implementation that also understands if expressions etc
* document sink parameter inference and allow for global disabling
|
| |
|
| |
|