summary refs log tree commit diff stats
path: root/tests/arc
Commit message (Collapse)AuthorAgeFilesLines
* fixes #18469 (#18544)Andreas Rumpf2021-07-201-0/+44
| | | | | * fixes #18469 * Update compiler/injectdestructors.nim
* added `nimAllocPagesViaMalloc` switch (#18490)Andreas Rumpf2021-07-151-1/+1
| | | | | * added switch * alloc.nim needs page aligned memory blocks
* fixes #17893 (#18485)Andreas Rumpf2021-07-131-0/+67
| | | * fixes #17893
* closes #18433 (#18484)Andreas Rumpf2021-07-131-0/+38
| | | | | * beneficial refactoring; use system.Endianness * closes #18433
* thamming_orc test created/destroyed counts match (#18471)GordonBGood2021-07-121-4/+4
| | | The thamming_orc.nim code now counts all created objects being tested, not just the ones following the "first 20" test, and the position of the `destroyed += 1` counter has been adjusted so it counts all the calls that are as a result of `=trace` tracing and not just the original destruction calls.
* ORC: support for custom =trace procs (#18459)Andreas Rumpf2021-07-091-0/+240
| | | | | | | | | | | * ORC: support custom =trace procs (WIP) * Update tests/arc/tcustomtrace.nim Co-authored-by: Clyybber <darkmine956@gmail.com> * =trace is now documented and seems to work * make test green Co-authored-by: Clyybber <darkmine956@gmail.com>
* ORC: use =destroy instead of =dispose (#18440)Andreas Rumpf2021-07-071-0/+155
| | | | | | * ORC refactoring in preparation for further changes (=dispose must die) * ORC: embrace =destroy, avoid =dispose * ORC: no need for =dispose * closes #18421
* fixes #18030 (#18415)Andreas Rumpf2021-07-011-0/+30
|
* fixes #18240 (#18354)Andreas Rumpf2021-06-251-0/+32
| | | | | * ORC: track escaping parameters properly * fixes #18240
* fixes #18287 (#18346)Andreas Rumpf2021-06-251-1/+50
|
* ARC: fixes memory leaks with newSeq used in a loop [backport:1.4] (#18040)Andreas Rumpf2021-05-181-0/+13
| | | | * ARC: fixes memory leaks with newSeq used in a loop [backport:1.4] * Update tests/arc/tnewseq_legacy.nim
* Rework DFA traversal (#18016)Clyybber2021-05-161-0/+34
| | | | | | | | | * enable using dbg: without a context * Optimally joining first write/last read analysis * Add test for #18002 * potLastReads -> potentialLastReads
* ORC: cursor inference bugfix (#17973)Andreas Rumpf2021-05-081-1/+46
| | | | | * fixed a .cursor inference bug * added a test case
* Fix #17712 (#17873)Clyybber2021-04-271-0/+11
|
* fix #17812 (repr fails to compile with ARC/ORC) (#17816)flywind2021-04-221-0/+29
|
* Fix #17199 (#17348)Clyybber2021-03-261-0/+32
| | | | | | | | | | | | | | | | | | | | | | * don't zero out in a move in the VM * Add testcases for #17199 * Update tests/arc/tarcmisc.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update tests/vm/tissues.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Fix test failures * Fix test * Fix tests Co-authored-by: Andreas Rumpf <rumpf_a@web.de> Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Fixes #17450 (#17477)Clyybber2021-03-231-0/+14
| | | | | * Fixes #17450 * Add missing test output
* Revert "Fixes #17450 (#17474)" (#17476)Clyybber2021-03-231-14/+0
| | | This reverts commit 5f0c52048970cb7449937bd19191638c9e9f0c8f.
* Fixes #17450 (#17474)Clyybber2021-03-231-0/+14
| | | | | * Fixes #17450 * Add missing test output
* Fix #16437 (#17277)Clyybber2021-03-064-16/+53
| | | | | | | * Fix #16437 * Fix * Small cleanup
* deprecate newruntime (#17245)flywind2021-03-043-3/+3
| | | | | | * deprecate newruntime * tests * Update compiler/commands.nim
* fixes #17173 (#17213)Andreas Rumpf2021-03-011-0/+10
| | | | | | | | | | | | | | | | | | | | | | * fixes #17173 * add testcase (#17214) * Apply suggestions from code review * fix for newruntime * Apply suggestions from code review * Update lib/system.nim * Update lib/system.nim * Update lib/system.nim Co-authored-by: Danil Yarantsev <tiberiumk12@gmail.com> Co-authored-by: flywind <xzsflywind@gmail.com> Co-authored-by: Danil Yarantsev <tiberiumk12@gmail.com>
* fixes #17170 (#17171)Andreas Rumpf2021-02-241-0/+34
|
* fix #17159 items(cstring) works in VM (#17160)Timothee Cour2021-02-241-16/+0
| | | | | | | | | * fix #17159 items(cstring) works in VM * improve test coverage tests/stdlib/tcstring.nim; add helpers: whenRuntimeJs, whenVMorJs * document items(cstring) * address comments
* ARC Analysis in one pass v3 (#17068)Clyybber2021-02-173-3/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Analyse last reads all at once * Integrate firstWrite analysis * Small cleanup * Use sets instead of seqs * Remove instrTargets * Reap the benefits * Implement error diagnostics * Operate on DFA index for lastRead analysis * Use mgetOrPut * Cache alias results This improves performance by a lot, since many CFG locations map to a single PNode * Improve performance * Improve performance * Cleanup * Fix #17025 * Grammar * Expand testcase
* fixes #17033 [backport:1.4] (#17061)Andreas Rumpf2021-02-171-2/+84
| | | | | | | * fixes #17033 [backport:1.4] * make test robust against stdlib gensym things * cleanup assertions.nim to make topt_no_cursor easier to get right
* Revert "ARC: Analysis in one pass v2 (#17000)" (#17046)Clyybber2021-02-152-29/+3
| | | This reverts commit 216be4060a853b3425501318537d598c4842eefc.
* ARC: Analysis in one pass v2 (#17000)Clyybber2021-02-102-3/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Analyse last reads all at once * Integrate firstWrite analysis * Small cleanup * Use sets instead of seqs * Remove instrTargets * Reap the benefits * Implement error diagnostics * Operate on DFA index for lastRead analysis * Use mgetOrPut * Cache alias results This improves performance by a lot, since many CFG locations map to a single PNode * Improve performance * Improve performance * Cleanup
* Revert "ARC Analysis in one pass (#16849)" (#16984)Clyybber2021-02-092-29/+3
| | | This reverts commit ab740cb5b9bfbacece26956fa2444763a790ccd1.
* ARC Analysis in one pass (#16849)Clyybber2021-02-092-3/+29
| | | | | | | | | | | | | | | | | | | * Analyse last reads all at once * Integrate firstWrite analysis * Small cleanup * Use sets instead of seqs * Remove instrTargets * Reap the benefits * Implement error diagnostics * Operate on DFA index for lastRead analysis * Use mgetOrPut
* use typeof instead type (#16962)flywind2021-02-082-27/+27
|
* Finer analysis for array access (#16787)Clyybber2021-01-241-0/+31
| | | | | * Refine the analysis for array access * Cleanup * Add comments
* Part-to-whole optimization (#16775)Clyybber2021-01-211-1/+46
|
* Reboot of #16195 (#16746)Clyybber2021-01-202-1/+159
| | | | | | | | | | | | | | | | | | | | | | | | | * fix #16185 * fix test * fix comment * fix comment * better approach * Add more tests and move sameLocation to injectdestructors * Better and more strict sameLocation * Small cleanup and preliminary spec clarification * Fix * Fix doc * Expand test Co-authored-by: Andrey R (cooldome) <ariabushenko@gmail.com>
* Deprecate TaintedString (#15423)Juan Carlos2021-01-151-1/+1
| | | | Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>
* Fix 16722 (#16730)cooldome2021-01-151-1/+43
| | | | | | | * fix #16722 * fix spacing * spacing
* use doAssert in tests (#16486)flywind2020-12-283-4/+4
|
* fix #15043 (#16441) [backport:1.4]cooldome2020-12-271-0/+16
| | | | | * fix #15043 * Trigger build
* testament: error instead of silently ignore invalid targets; remove ↵Timothee Cour2020-12-141-1/+1
| | | | | | | | | | | pointless alias target vs targets; document matrix; DRY (#16343) * testament: error instead of silently ignore invalid targets * s/target/targets/ * fix test; refs #16344 * address comments * Update testament/specs.nim Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* ORC: make the adaptive strategy the default in order to fight memory ↵Andreas Rumpf2020-12-052-1/+39
| | | | | | | consumption (#16250) * ORC: make the adaptive strategy the default in order to fight memory consumption * added missing test case
* Revert "fix #16185 (#16195)" (#16197)Andreas Rumpf2020-11-301-50/+1
| | | This reverts commit bb4b27a2ca414f06fbb9d14ff76fa02a088ac141.
* fix #16185 (#16195)cooldome2020-11-301-1/+50
| | | | | | | | | | | * fix #16185 * fix test * fix comment * fix comment * better approach
* make megatest consistent with unjoined tests wrt newlines, honor newlines in ↵Timothee Cour2020-11-281-1/+3
| | | | | | | output spec (#16151) * fix megatest newlines * still allow missing trailing newline for now but in a more strict way than before
* fix #16120 (#16145)cooldome2020-11-261-1/+15
|
* fixes #15076 (#16143)Andreas Rumpf2020-11-262-0/+95
| | | | | | | | | * fixes #15076 * heapqueue: optimized for ARC * added another test case [backport:1.4] * code cleanup
* fixes #16069; [backport:1.2] [backport:1.4] (#16115)Andreas Rumpf2020-11-241-1/+1
| | | | | * fixes #16069; refs https://github.com/nim-lang/RFCs/issues/257 [backport:1.2] [backport:1.4] * make tests green again
* fix #16025 repr now consistent: does not insert trailing newline (#16034)Timothee Cour2020-11-191-0/+3
|
* fix #16033 nim js --gc:arc works and ignores --gc:arc (#16036)Timothee Cour2020-11-181-0/+10
|
* ORC: prepare for another patent-pending optimization (#15996)Andreas Rumpf2020-11-181-1/+1
| | | | | | | | | | | | | | | | | * ORC: prepare for another patent-pending optimization * bugfix * '=copy' for refs can take a cyclic parameter for more ORC optimizations * ORC: exploit the common 'it = it.next' pattern * can't hurt to check for nil * use an algorithm that is not obviously broken * restore the test case * final cleanups for --gc:orc
* fix #15910 (#15984)cooldome2020-11-161-1/+65
| | | | | | | * fix #15910 * produce op of op is nil * Trigger build