Skip to content

Commit

Permalink
- Fixing the count of nil objects in the remembered set
Browse files Browse the repository at this point in the history
- Fixing the assert to get if the PermSpaceRememberedSet is sane
  • Loading branch information
tesonep committed Jul 7, 2022
1 parent cc56865 commit ddeb1b9
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 5 deletions.
7 changes: 3 additions & 4 deletions smalltalksrc/VMMaker/SpurMemoryManager.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -7464,10 +7464,9 @@ SpurMemoryManager >> isPermSpaceRememberedSetSane [
0 to: numPointerSlots - 1 do: [ :index |
referenced := self fetchPointer: index ofObject: objOop.
((self isFixedKnownObject: referenced) not
and: [ (self isNonImmediate: referenced)
and: [(self getMemoryMap isYoungObject: referenced)
or: [ self getMemoryMap isOldObject: referenced ]]])
(((self isFixedKnownObject: referenced) not
and: [ (self isNonImmediate: referenced) and: [ referenced >= self getMemoryMap newSpaceStart ]])
and: [(self getMemoryMap isYoungObject: referenced) or: [ self getMemoryMap isOldObject: referenced ]])
ifTrue: [ mustBeRemembered := true]].
mustBeRemembered ifTrue: [
Expand Down
2 changes: 1 addition & 1 deletion smalltalksrc/VMMaker/VMRememberedSet.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ VMRememberedSet >> countNotNilObjects [

0 to: self rememberedSetLimit do: [ :i |
"The remembered set might be initialized with 0"
((self objectAt: i) = manager nilObject or: [ (self objectAt: i) = 0 ]) ifTrue: [ ^ count ].
((self objectAt: i) = manager nilObject or: [ (self objectAt: i) = 0 ]) ifTrue: [ ^ i ].
count := i ].

^ count
Expand Down

0 comments on commit ddeb1b9

Please sign in to comment.