Remove dead code (#9777)

* gc/gc2: remove unused ref counting stuff
* also removes some false threading support - hasSharedHeap is always
false in gc/gc2
* gc: remove some threading cruft
* remove asgnRefNoCycle
* compiler: remove TLoc.dup (unused)
This commit is contained in:
Jacek Sieka 2018-11-26 02:47:39 -06:00 • committed by Andreas Rumpf
commit 87568830ab
7 changed files with 32 additions and 155 deletions

View file

@ -172,13 +172,8 @@ proc genRefAssign(p: BProc, dest, src: TLoc, flags: TAssignmentFlags) =
if (dest.storage == OnStack and p.config.selectedGC != gcGo) or not usesWriteBarrier(p.config):
linefmt(p, cpsStmts, "$1 = $2;$n", rdLoc(dest), rdLoc(src))
elif dest.storage == OnHeap:
# location is on heap
if canFormAcycle(dest.t):
linefmt(p, cpsStmts, "#asgnRef((void**) $1, $2);$n",
addrLoc(p.config, dest), rdLoc(src))
else:
linefmt(p, cpsStmts, "#asgnRefNoCycle((void**) $1, $2);$n",
addrLoc(p.config, dest), rdLoc(src))
linefmt(p, cpsStmts, "#asgnRef((void**) $1, $2);$n",
addrLoc(p.config, dest), rdLoc(src))
else:
linefmt(p, cpsStmts, "#unsureAsgnRef((void**) $1, $2);$n",
addrLoc(p.config, dest), rdLoc(src))