summary refs log tree commit diff stats
path: root/compiler/spawn.nim
Commit message (Collapse)AuthorAgeFilesLines
* fixes#23665; rework spawn with gcc 14 and fixes other tests (#23660)ringabout2024-06-021-2/+14
| | | fixes #23665
* type refactoring: part 2 (#23059)Andreas Rumpf2023-12-131-4/+4
|
* Types: Refactorings; step 1 (#23055)Andreas Rumpf2023-12-121-1/+1
|
* IC: progress and refactorings (#22961)Andreas Rumpf2023-11-201-4/+4
|
* use strictdefs for compiler (#22365)ringabout2023-08-061-2/+2
| | | | | | | | | | | | | | | * wip; use strictdefs for compiler * checkpoint * complete the chores * more fixes * first phase cleanup * Update compiler/bitsets.nim * cleanup
* adds an experimental `mm:atomicArc` switch (#21798)ringabout2023-05-081-2/+2
|
* refactoring in preparation for better, simpler name mangling that wor… ↵Andreas Rumpf2023-04-241-13/+13
| | | | | | | | | | | (#21667) * refactoring in preparation for better, simpler name mangling that works with IC flawlessly * use new disamb field * see if this makes tests green * make tests green again
* fixes booting warnings (#21711)ringabout2023-04-231-1/+1
| | | follow up https://github.com/nim-lang/Nim/pull/21604
* Fix bug in freshVarForClosureIter. Fixes #18474 (#19675) [backport]flywind2022-04-041-11/+11
| | | | | | | | | | * Fix bug in freshVarForClosureIter. Fixes #18474. freshVarForClosureIter was returning non-fresh symbols sometimes. Fixed by making addField return the generated PSym. * remove discardable Co-authored-by: Nick Smallbone <nick@smallbone.se>
* add colon (#17834)flywind2021-04-241-1/+1
|
* close #9691 and close #10913('spawn'ed function cannot have a 'typed' or ↵flywind2021-04-201-1/+11
| | | | 'untyped' parameter) (#17775)
* remove unnecessary check (#17502)flywind2021-03-251-2/+0
|
* IC: green tests (#17311)Andreas Rumpf2021-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * IC: renamed to_packed_ast module to ic module * IC: don't store the --forceBuild flag, makes it easier to test * IC: enable hello world test * Codegen: refactorings for IC; changed the name mangling algorithm * fixed the HCR regressions * life is too short for HCR * tconvexhull is now allowed to use deepCopy * IC exposed a stdlib bug, required a refactoring * codegen: code cleanups * IC: even if a module is outdated, its dependencies might come from disk * IC: progress * IC: better name mangling, module IDs are not stable * IC: another refactoring helping with --ic:on --gc:arc * disable arraymancer on Windows for the time being * disable arraymancer altogether * IC: make basic test work with 'nim cpp' * IC: progress on --ic:on --gc:arc * wip; name mangling for type info
* big steps torwards an efficient, simple IC implementation (#16543)Andreas Rumpf2021-01-021-17/+17
| | | | | | | | | | | | | | | | | | | * reworked ID handling * the packed AST now has its own ID mechanism * basic serialization code works * extract rodfiles to its own module * rodfiles: store and compare configs * rodfiles: store dependencies * store config at the end * precise dependency tracking * dependency tracking for rodfiles * completed loading of PSym, PType, etc * removed dead code * bugfix: do not realloc seqs when taking addr into an element * make IC opt-in for now * makes tcompilerapi green again * final cleanups Co-authored-by: Andy Davidoff <github@andy.disruptek.com>
* explicit ID generation for easier IC (#15559)Andreas Rumpf2020-10-251-53/+54
| | | | | | | | | | | | | | | | | * refactoring: idents don't need inheritance * refactoring: adding an IdGenerator (part 1) * refactoring: adding an IdGenerator (part 2) * refactoring: adding an IdGenerator (part 3) * refactoring: adding an IdGenerator (part 4) * refactoring: adding an IdGenerator (part 5) * refactoring: adding an IdGenerator (part 5) * IdGenerator must be a ref type; hello world works again * make bootstrapping work again * progress: add back the 'exactReplica' ideas * added back the missing exactReplica hacks * make tcompilerapi work again * make important packages green * attempt to fix the build for 32 bit machines (probably need a better solution here)
* scoped memory management (#14790)Andreas Rumpf2020-07-041-2/+2
| | | | | | | * fixes the regressions * closes #13936 * scope based memory management implemented * enabled tcontrolflow.nim test case * final cleanups
* init checks and 'out' parameters (#14521)Andreas Rumpf2020-06-231-2/+2
| | | | | | | | | | | * I don't care about observable stores * enforce explicit initializations * cleaner code for the stdlib * stdlib: use explicit initializations * make tests green * algorithm.nim: set result explicitly * remove out parameters and bring the PR into a mergable state * updated the changelog
* Fixes #14014 (#14029)cooldome2020-04-201-2/+7
| | | | | | | | | | | | | * add test * improve test * progress * fix #14014 * fix bug Co-authored-by: cooldome <ariabushenko@bk.ru>
* Step2: fixes #13781, fixes #13805 (#13897)cooldome2020-04-161-13/+11
| | | | | | | | | * 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>
* drnim: tiny progress (#13882)Andreas Rumpf2020-04-151-21/+4
| | | | | | | | | | | * drnim: tiny progress * refactoring complete * drnim: prove .ensures annotations * Moved code around to avoid code duplication * drnim: first implementation of the 'old' property * drnim: be precise about the assignment statement * first implementation of --assumeUnique * progress on forall/exists handling
* Fix sym owner in wrapper proc (#13878)cooldome2020-04-051-27/+27
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fixes #13708 (#13711)cooldome2020-03-211-8/+18
| | | | | | * fixes #13708 * differentiate between arc and rest of GC Co-authored-by: cooldome <ariabushenko@bk.ru>
* Cosmetic compiler cleanup (#12718)Clyybber2019-11-281-23/+23
| | | | | | | | | | | | | | | | | | * 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
* refactoring: --newruntime consists of 3 different switchesAraq2019-10-201-1/+1
|
* fixes #1188Araq2019-08-161-1/+1
|
* [refactoring] remove unused imports in the compiler and in some stdlib modulesAraq2019-07-181-428/+428
|
* [refactoring] moves transformation for 'spawn' into its own spawn.nim ↵Araq2019-07-141-0/+428
implementation