Skip to content

Update for LXR-related API changes - #161

Merged
mmtkgc-bot merged 4 commits into
mmtk:masterfrom
qinsoon:update-mmtk-lxr-api-changes
Aug 19, 2026
Merged

Update for LXR-related API changes#161
mmtkgc-bot merged 4 commits into
mmtk:masterfrom
qinsoon:update-mmtk-lxr-api-changes

Conversation

@qinsoon

@qinsoon qinsoon commented Aug 17, 2026

Copy link
Copy Markdown
Member

No description provided.

@wks
wks marked this pull request as ready for review August 18, 2026 09:05
@wks

wks commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

We see some failed tests that output all-zero characters. They seem to be an existing bug related to IO and object movement, but does not seem to be related to the LXR. None of the plans supported by the CRuby binding uses the newly introduced try_copy function.

    1) Failure:
  TestRubyKaigi2023🥢#test_chopsticks_0_1 [/home/runner/work/mmtk-ruby/mmtk-ruby/git/ruby/test/test_trick.rb:235]:
  pid 68554 exit 0.
  
  1. [1/2] Assertion for "stdout"
     | <["RubyKaigi", "@Matsumoto"]> expected but was
     | <["\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000"]>.
  
    2) Failure:
  TestRubyOptimization#test_peephole_hash_freeze_empty [/home/runner/work/mmtk-ruby/mmtk-ruby/git/ruby/test/ruby/test_optimization.rb:831]:
  pid 69436 exit 0.
  
  1. [1/2] Assertion for "stdout"
     | <[":ok"]> expected but was
     | <["\u0000\u0000\u0000\u0000"]>.
  
    3) Failure:
  TestProcess#test__fork_wrong_type_hook [/home/runner/work/mmtk-ruby/mmtk-ruby/git/ruby/test/ruby/test_process.rb:2706]:
  [ruby-core:103400] [Feature #17795]
  pid 70603 exit 0.
  
  1. [1/2] Assertion for "stdout"
     | <["OK"]> expected but was
     | <["\u0000\u0000\u0000"]>.

@wks wks left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. The failing test doesn't seem to be caused by this PR.

@mmtkgc-bot
mmtkgc-bot merged commit d220697 into mmtk:master Aug 19, 2026
2 of 10 checks passed
oscardssmith pushed a commit to oscardssmith/mmtk-core that referenced this pull request Aug 19, 2026
This pull request introduces a simplified version of the LXR collector.
There are many features not included in this version of LXR, such as
reference processing, and they will be ported to the master branch in
the future.

In addition to the LXR plan, this PR also makes the following changes to
mmtk-core

- **Field unlog bits** metadata and **field-logging barrier**. They can
be used by generational and concurrent Immix plans to implement
remembered set and SATB.
-   **`Pause::RefCount`**: a new pause kind for reference counting.
- **`RootsWorkFactory::create_process_roots_work_with_root_kind`**: an
experimental API with `RootKind`.
- **Renamed pause-start and pause-end hooks** to merge the two
mechanisms from the master branch and the LXR branch to make the names
consistent.
- **`UnstraddlableRegion`** to prevent the invocation of
`region.contains` on regions which objects can straddle, specifically
`Line`.
- **Many changes to the `ImmixSpace` and `LargeObjectSpace`** to support
reference counting-based Immix plans.
-   **Additional object metadata** to support LXR.
-   **Additional scheduler stages** to support LXR.
-   Merged the implementations of `ObjectReference::iterate_fields`.
-   The definition of "chunk index" is changed.
- Map32: 0 is now a valid entry of the linked list, and invalid entries
are represented as -1.

Related PRs:

-   mmtk-openjdk JDK-21: mmtk/mmtk-openjdk#358
-   mmtk-jikesrvm: mmtk/mmtk-jikesrvm#195
-   mmtk-ruby: mmtk/mmtk-ruby#161

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Yi Lin <qinsoon@gmail.com>
Co-authored-by: Kunshan Wang <wks1986@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants