summary refs log tree commit diff stats
path: root/compiler/liftdestructors.nim
Commit message (Collapse)AuthorAgeFilesLines
* cycle breaker (#13593)Andreas Rumpf2020-03-191-4/+3
| | | | * cycle breaking as an alternative to cycle detection
* fixes #13269 (#13344)Andreas Rumpf2020-02-071-3/+6
|
* fixes #13110 (#13197)Andreas Rumpf2020-01-191-1/+0
|
* make sink operator optional (#13068)cooldome2020-01-171-11/+19
| | | | | | | | | | | | | | | | * make sink operator optional * bug fix, add changelog entry * Trigger build * fix one regression * fix test * Trigger build * fix typos
* ARC: misc bugfixes (#13156)Andreas Rumpf2020-01-151-22/+77
| | | | | | | | * fixes #13102 * closes #13149 * ARC: fixes a move optimizer bug (there are more left regarding array and tuple indexing) * proper fix; fixes #12957 * fixes yet another case object '=' code generation problem
* fixes #13119 (#13128)Andreas Rumpf2020-01-141-1/+1
| | | | | * fixes #13119 * fixes a regression
* Sink to MemMove optimization in injectdestructors (#13002)cooldome2020-01-021-7/+0
|
* fixes #12899 (#12921)Andreas Rumpf2019-12-181-8/+12
| | | | | | * fixes #12899 * fixes regression: destroy global variables in reverse declaration order, closureleak test relies on it
* ARC: cycle detector (#12823)Andreas Rumpf2019-12-171-37/+121
| | | | | | | | | | | | | * first implementation of the =trace and =dispose hooks for the cycle collector * a cycle collector for ARC: progress * manual: the .acyclic pragma is a thing once again * gcbench: adaptations for --gc:arc * enable valgrind tests for the strutils tests * testament: better valgrind support * ARC refactoring: growable jumpstacks * ARC cycle detector: non-recursive algorithm * moved and renamed core/ files back to system/ * refactoring: --gc:arc vs --gc:orc since 'orc' is even more experimental and we want to ship --gc:arc soonish
* fixes #12820 (#12828)cooldome2019-12-091-0/+7
|
* Cosmetic compiler cleanup (#12718)Clyybber2019-11-281-36/+35
| | | | | | | | | | | | | | | | | | * Cleanup compiler code base * Unify add calls * Unify len invocations * Unify range operators * Fix oversight * Remove {.procvar.} pragma * initCandidate -> newCandidate where reasonable * Unify safeLen calls
* [backport] Fix spelling typos (#12755)Brian Wignall2019-11-281-1/+1
|
* ARC: use the new .cursor annotation for 'up' pointersAraq2019-11-131-1/+1
|
* .cursor implementation (#12637)Andreas Rumpf2019-11-121-10/+20
| | | | | | | | | | | * cursors: first implementation * added currently failing test * .cursor works for doubly linked lists * make -d:useMalloc work again * added code to nil out refs in a destructor * it's now called --gc:arc * renderer.nim: render nkBreakState properly * make simple closure iterators work without leaking
* --gc:destructors: bugfixesAraq2019-11-091-6/+6
|
* --gc:destructors improvements (#12626)Andreas Rumpf2019-11-091-12/+17
| | | | | | * do not cache the noDestructors transformation * liftdestructor: improvements * undo bugfix
* --gc:destructors now means Nim uses pure refcounting (#12557)Andreas Rumpf2019-10-301-10/+67
|
* refactoring: use the new strings and seqs when optSeqDestructors is activeAraq2019-10-201-3/+3
|
* refactoring: --newruntime consists of 3 different switchesAraq2019-10-201-3/+3
|
* some gc:destructors progressAndreas Rumpf2019-09-161-1/+1
|
* fixes #12172Araq2019-09-131-1/+1
|
* fixes #12051Araq2019-09-101-1/+9
|
* gc:destructors progressAraq2019-09-011-2/+2
|
* lift destructor for openarray (#12073)cooldome2019-08-281-2/+6
| | | | * destroy for sink openarray
* int128 on firstOrd, lastOrd and lengthOrd (#11701)Arne Döring2019-08-071-1/+1
| | | | * fixes #11847
* [refactoring] remove unused imports in the compiler and in some stdlib modulesAraq2019-07-181-1/+1
|
* newruntime: refchecks:on|off switchAraq2019-07-121-2/+4
|
* fixes #11610 (#11659)Andreas Rumpf2019-07-051-1/+1
|
* [bugfix] owned closures (#11544)Andreas Rumpf2019-06-201-2/+12
|
* [bugfix] fixes #11517Araq2019-06-191-1/+6
|
* [refactoring] liftdestructors.nim is callable from lambdalifting; refs #11217Araq2019-06-121-95/+106
|
* [refactoring] liftdestructors is now a module of its ownAraq2019-06-121-10/+9
|
* fixes #6755; error message could be better but oh wellAraq2019-05-281-4/+6
|
* fixes #11215Araq2019-05-121-2/+2
|
* rename tyExpr/tyStmt to tyUntyped/tyTyped (#11227)Arne Döring2019-05-111-1/+1
|
* Destructor lifting fixes #11149 (#11163)cooldome2019-05-041-8/+9
| | | | | | * fixes #11149 * add test
* fixes #11053Andreas Rumpf2019-04-191-5/+4
|
* destructors: internal compiler refactoringAraq2019-04-181-51/+18
|
* fixes #11014Araq2019-04-171-3/+3
|
* fixes #11004Araq2019-04-121-60/+72
|
* preparations for --newruntime owned refs/callbacksAraq2019-04-111-1/+1
|
* newruntime: raising an exception works but currently leaks memory because ↵Araq2019-04-101-2/+4
| | | | currentException global is not an 'owned' ref
* an owned ref parameter behaves as a 'sink' parameterAndreas Rumpf2019-04-071-3/+0
|
* more efficient enumToStr implementation that works without the old typeinfo ↵Andreas Rumpf2019-04-071-14/+0
| | | | structures
* fixes compiler regressionAraq2019-04-061-1/+4
|
* destructors: we are cooking nowAraq2019-04-061-5/+9
|
* destructors: progressAndreas Rumpf2019-04-051-2/+9
|
* fixes destructor tuple regression #10940 (#10941)cooldome2019-04-041-1/+1
| | | | | | | | * fixes #10940 * bug fixes * fix spacing
* newruntime: fixes codegen for closuresAraq2019-04-041-0/+2
|
* make megatest work againAraq2019-04-021-1/+2
|