summary refs log tree commit diff stats
path: root/lib/system/refs_v2.nim
Commit message (Collapse)AuthorAgeFilesLines
* more renamingsAraq2020-07-271-236/+0
|
* code cleanupAraq2020-07-271-2/+1
|
* more checking for --gc:arc, no need for valgrind (#14467)Andreas Rumpf2020-05-291-1/+44
| | | | * sigmatch: removed dead code
* Error -> Defect for defects (#13908)Jacek Sieka2020-04-281-1/+1
| | | | | | | | | | | | | | * Error -> Defect for defects The distinction between Error and Defect is subjective, context-dependent and somewhat arbitrary, so when looking at an exception, it's hard to guess what it is - this happens often when looking at a `raises` list _without_ opening the corresponding definition and digging through layers of inheritance. With the help of a little consistency in naming, it's at least possible to start disentangling the two error types and the standard lib can set a good example here.
* new implementations for --gc:orc (#14121)Andreas Rumpf2020-04-271-7/+22
| | | | | | | | | * cycle collector: new implementation * cycle collector: make self-adaptive based on its previous effectiveness * cycle collector: added Lins's jump stack to improve traversal from 3*N to 2*N * cycle collector: make tests green * API extensions and bugfixes * code cleanup and use --gc:orc for tasyncawait
* cycle breaker (#13593)Andreas Rumpf2020-03-191-3/+6
| | | | * cycle breaking as an alternative to cycle detection
* ARC: optimize complete object constructors to use nimNewObjUninitAraq2020-01-261-0/+17
|
* ARC: remove unnecessary codeAraq2020-01-261-14/+0
|
* ARC works for async on Windows (#13179)Andreas Rumpf2020-01-171-3/+6
|
* --exception:goto switch for deterministic exception handling (#12977)Andreas Rumpf2020-01-011-1/+1
| | | | | This implements "deterministic" exception handling for Nim based on goto instead of setjmp. This means raising an exception is much cheaper than in C++'s table based implementations. Supports hard realtime systems. Default for --gc:arc and the C target because it's generally a good idea and arc is all about deterministic behavior. Note: This implies that fatal runtime traps are not catchable anymore! This needs to be documented.
* ARC: default to a shared heap with --threads:onAraq2019-12-241-0/+4
|
* ARC: cycle detector (#12823)Andreas Rumpf2019-12-171-0/+166
* 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