Skip to content

Commit

Permalink
Ignore the last commit message. It was just a merge. Git confused me.
Browse files Browse the repository at this point in the history
CogVM source as per VMMaker.oscog-eem.2420

Spur:
Extend semantics of primitives 165 & 166 (integerAt:[put:], signed indexing of
32-bit word classes) to byte, short and double word classes; actually, all
classes; this is a signedversion of 60 & 61 basicAt:[put:].

Refactor CogObjectRepresentationFor32|64BitSpur genPrimitiveAt[Put] into
genPrimitiveAt[Put]Signed:.

Extend Ronie's support for sign extension to all processors, generating the
simple move,signed shift sequence on processors without native sign extension
(i.e. ARM).

Added stats for Marking time and sweep time in full GC. Make them available
as vm parameters 72 and 73.

Now we have:
fullGCTime = markingTime + scavengeTime + compactionTime
With all but scavenge time available, but can be computed in-image from the
3 others.

We note that compactionTime includes sweepTime for convenience.
Depending on the compactor used, we have:
Planning -> sweepTime = 0.
Sweeper -> sweepTime = compactionTime.
Selective -> selectiveCompactionTime = compactionTime - sweepTime

Slang:
Extend constant elimination/analysis for generate[Signed]BitShift:on:indent:
so that isSignedInteger:inRangeForBits: generates a simple one-way shift for
integer signedBitShift: 1 - nBits when inlined and nBits is a constant
(see primitiveSpurIntegerAtPut).

Simulator:
Nuke some obsolete primitive experiments.
  • Loading branch information
eliotmiranda committed Jul 4, 2018
1 parent 469ea04 commit 9a93229
Show file tree
Hide file tree
Showing 87 changed files with 49,441 additions and 25,522 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ platforms/unix/config/autom4te.cache/
# /image/
/image/*.sum
/image/*.tgz
/image/*.st
/image/coglinux*
/image/cogwin
/image/Cog.app
Expand Down
2 changes: 1 addition & 1 deletion nsspur64src/vm/cogit.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Automatically generated by
CCodeGenerator VMMaker.oscog-eem.2401 uuid: 29232e0e-c9e3-41d8-ae75-519db862e02c
CCodeGenerator VMMaker.oscog-eem.2420 uuid: f303796f-283f-4d4c-a910-bf205a0b4600
*/


Expand Down
1,076 changes: 663 additions & 413 deletions nsspur64src/vm/cogitX64SysV.c

Large diffs are not rendered by default.

1,072 changes: 661 additions & 411 deletions nsspur64src/vm/cogitX64WIN64.c

Large diffs are not rendered by default.

1,645 changes: 1,076 additions & 569 deletions nsspur64src/vm/cointerp.c

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion nsspur64src/vm/cointerp.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Automatically generated by
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2401 uuid: 29232e0e-c9e3-41d8-ae75-519db862e02c
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2420 uuid: f303796f-283f-4d4c-a910-bf205a0b4600
*/


Expand Down
Loading

0 comments on commit 9a93229

Please sign in to comment.