defaults to ORC (#19972)

* defaults to Orc

* bootstrap using refc

* use gc

* init orc defines

* unregister orc

* fix gc

* fix commands

* add prepareMutation for orc

* enable deepcopy for orc

* prepareMutation

* more fixes

* some cases

* bug #20081

* partial fixes

* partial fixes

* fixes command line

* more fixes

* build Nim with refc

* use gc

* more fixes

* rstore

* orc doesn't support threadpool

* more shallowCopy

* more fixes

* fixes unsafeNew

* workarounds

* small

* more fixes

* fixes some megatest

* tcodegenbugs1 refc

* fxies megatest

* build nimble with refc

* workaround tensordsl tests

* replace shallowCopy with move

* fixes action

* workaround

* add todo

* fixes important packages

* unpublic unregisterArcOrc

* fixes cpp

* enable windows

Co-authored-by: xflywind <43030857+xflywind@users.noreply.github.com>
This commit is contained in:
ringabout 2022-09-23 19:05:05 +08:00 • committed by GitHub
commit 7739e23420
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
81 changed files with 255 additions and 150 deletions

View file

@ -1,5 +1,5 @@
discard """
output: "[p = nil]"
matrix: "--mm:refc; --mm:orc"
targets: "c cpp"
"""
@ -24,4 +24,7 @@ type
fulfilled: Atomic[bool]
var x: Pledge
echo x.repr
when defined(gcRefc):
doAssert x.repr == "[p = nil]"
elif not defined(cpp): # fixme # bug #20081
doAssert x.repr == "Pledge(p: nil)"

View file

@ -1,5 +1,5 @@
discard """
cmd: "nim $target $options $file"
matrix: "--mm:refc"
output: "Hello"
ccodecheck: "\\i@'a = ((NimStringDesc*) NIM_NIL)'"
"""

View file

@ -1,4 +1,5 @@
discard """
matrix: "--mm:refc"
output: '''obj = (inner: (kind: Just, id: 7))
obj.inner.id = 7
id = 7

View file

@ -1,4 +1,5 @@
discard """
matrix: "--mm:refc; --mm:orc --deepcopy:on"
output: "3"
"""

View file

@ -1,4 +1,5 @@
discard """
matrix: "--mm:refc"
targets: "c cpp"
"""

View file

@ -1,4 +1,5 @@
discard """
matrix: "--mm:refc"
output: '''0
0
0

View file

@ -1,6 +1,6 @@
discard """
output: "1"
cmd: r"nim c --hints:on $options -d:release $file"
cmd: r"nim c --hints:on $options --mm:refc -d:release $file"
ccodecheck: "'NI volatile state;'"
targets: "c"
"""