From 042711c7335ac8a61ce94f6866fa03f2bd3d71bf Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Tue, 26 Mar 2024 04:32:21 +0000 Subject: [PATCH 01/10] Use mark sweep space as the nonmoving space --- .../rvm/src/org/jikesrvm/mm/mminterface/MSContext.java | 10 ++++------ .../rvm/src/org/jikesrvm/mm/mminterface/SSContext.java | 8 ++++++-- mmtk/Cargo.lock | 4 ++-- mmtk/Cargo.toml | 2 +- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MSContext.java b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MSContext.java index 692a0288..3a14abef 100644 --- a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MSContext.java +++ b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MSContext.java @@ -19,15 +19,15 @@ @Uninterruptible public class MSContext extends MMTkMutatorContext { // DEFAULT: FreeListAllocator #0 (MarkSweepSpace) + // NonMomving: FreeListAllocator #1 (MarkSweepSpace) // CODE: BumpAllocator #0 (ImmortalSpace) // LARGECODE: BumpAllocator #1 (ImmortalSpace) // Immortal: BumpAllocator #2 (ImmortalSpace) - // NonMomving: BumpAllocator #3 (ImmortalSpace) // LOS: LargeObjectAllocator #0 (LargeObjectSpace) @Inline protected final int getAllocatorTag(int allocator) { - if (allocator == MMTkAllocator.DEFAULT) + if (allocator == MMTkAllocator.DEFAULT || allocator == MMTkAllocator.NONMOVING) return MMTkMutatorContext.TAG_FREE_LIST; else if (allocator == MMTkAllocator.LOS) return MMTkMutatorContext.TAG_LARGE_OBJECT; @@ -37,12 +37,10 @@ else if (allocator == MMTkAllocator.LOS) protected final int getAllocatorIndex(int allocator) { if (allocator == MMTkAllocator.DEFAULT || allocator == MMTkAllocator.CODE || allocator == MMTkAllocator.LOS) { return 0; - } else if (allocator == MMTkAllocator.LARGE_CODE) { + } else if (allocator == MMTkAllocator.LARGE_CODE || allocator == MMTkAllocator.NONMOVING) { return 1; } else if (allocator == MMTkAllocator.IMMORTAL) { return 2; - } else if (allocator == MMTkAllocator.NONMOVING) { - return 3; } else { VM.sysFail("Unexpected allocator", allocator); return 0; @@ -50,7 +48,7 @@ protected final int getAllocatorIndex(int allocator) { } @Inline protected final int getSpaceTag(int allocator) { - if (allocator == MMTkAllocator.DEFAULT) + if (allocator == MMTkAllocator.DEFAULT || allocator == MMTkAllocator.NONMOVING) return MMTkMutatorContext.MARK_SWEEP_SPACE; else if (allocator == MMTkAllocator.LOS) return MMTkMutatorContext.LARGE_OBJECT_SPACE; diff --git a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java index 9a1365af..228c1dd8 100644 --- a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java +++ b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java @@ -22,13 +22,15 @@ public class SSContext extends MMTkMutatorContext { // CODE: BumpAllocator #1 (ImmortalSpace) // LARGE_CODE: BumpAllocator #2 (ImmortalSpace) // Immortal: BumpAllocator #3 (ImmortalSpace) - // NonMoving: BumpAllocator #4 (ImmortalSpace) // LOS: LargeObjectAllocator #0 (LargeObjectSpace) + // NonMoving: FreeListAllocator #1 (MarkSweepSpace) @Inline protected final int getAllocatorTag(int allocator) { if (allocator == MMTkAllocator.LOS) { return MMTkMutatorContext.TAG_LARGE_OBJECT; + } else if (allocator == MMTkAllocator.NONMOVING) { + return MMTkMutatorContext.TAG_FREE_LIST; } else { return MMTkMutatorContext.TAG_BUMP_POINTER; } @@ -44,7 +46,7 @@ protected final int getAllocatorIndex(int allocator) { } else if (allocator == MMTkAllocator.IMMORTAL) { return 3; } else if (allocator == MMTkAllocator.NONMOVING) { - return 4; + return 0; } else { VM.sysFail("Unexpected allocator", allocator); return 0; @@ -56,6 +58,8 @@ protected final int getSpaceTag(int allocator) { return COPY_SPACE; } else if (allocator == MMTkAllocator.LOS) { return LARGE_OBJECT_SPACE; + } else if (allocator == MMTkAllocator.NONMOVING) { + return MARK_SWEEP_SPACE; } else { return IMMORTAL_SPACE; } diff --git a/mmtk/Cargo.lock b/mmtk/Cargo.lock index a56b7dd3..6808853e 100644 --- a/mmtk/Cargo.lock +++ b/mmtk/Cargo.lock @@ -360,7 +360,7 @@ dependencies = [ [[package]] name = "mmtk" version = "0.23.0" -source = "git+https://github.com/mmtk/mmtk-core.git?rev=2d3677d6a0099d1ff561f5668bf89b432f7cad00#2d3677d6a0099d1ff561f5668bf89b432f7cad00" +source = "git+http://github.com/qinsoon/mmtk-core.git?rev=d15768a51b17ed0924d56772a7de4e0f5994f0c1#d15768a51b17ed0924d56772a7de4e0f5994f0c1" dependencies = [ "atomic", "atomic-traits", @@ -395,7 +395,7 @@ dependencies = [ [[package]] name = "mmtk-macros" version = "0.23.0" -source = "git+https://github.com/mmtk/mmtk-core.git?rev=2d3677d6a0099d1ff561f5668bf89b432f7cad00#2d3677d6a0099d1ff561f5668bf89b432f7cad00" +source = "git+http://github.com/qinsoon/mmtk-core.git?rev=d15768a51b17ed0924d56772a7de4e0f5994f0c1#d15768a51b17ed0924d56772a7de4e0f5994f0c1" dependencies = [ "proc-macro-error", "proc-macro2", diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index 4c49ca84..8e20126e 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -28,7 +28,7 @@ log = {version = "0.4", features = ["max_level_trace", "release_max_level_off"] # - change branch/rev # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/mmtk/mmtk-core.git", rev = "2d3677d6a0099d1ff561f5668bf89b432f7cad00" } +mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "d15768a51b17ed0924d56772a7de4e0f5994f0c1" } # Uncomment the following to build locally - if you change the path locally, do not commit the change in a PR # mmtk = { path = "../repos/mmtk-core" } From 672b5a99a2656dbe5a3926fb7168ae7b033519ba Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Wed, 27 Mar 2024 01:15:39 +0000 Subject: [PATCH 02/10] Update mmtk-core --- mmtk/Cargo.lock | 4 ++-- mmtk/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mmtk/Cargo.lock b/mmtk/Cargo.lock index 6808853e..2a1abb27 100644 --- a/mmtk/Cargo.lock +++ b/mmtk/Cargo.lock @@ -360,7 +360,7 @@ dependencies = [ [[package]] name = "mmtk" version = "0.23.0" -source = "git+http://github.com/qinsoon/mmtk-core.git?rev=d15768a51b17ed0924d56772a7de4e0f5994f0c1#d15768a51b17ed0924d56772a7de4e0f5994f0c1" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=68afeccd4b2874f001084343c21a4a1355880c4c#68afeccd4b2874f001084343c21a4a1355880c4c" dependencies = [ "atomic", "atomic-traits", @@ -395,7 +395,7 @@ dependencies = [ [[package]] name = "mmtk-macros" version = "0.23.0" -source = "git+http://github.com/qinsoon/mmtk-core.git?rev=d15768a51b17ed0924d56772a7de4e0f5994f0c1#d15768a51b17ed0924d56772a7de4e0f5994f0c1" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=68afeccd4b2874f001084343c21a4a1355880c4c#68afeccd4b2874f001084343c21a4a1355880c4c" dependencies = [ "proc-macro-error", "proc-macro2", diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index 8e20126e..5f55f3aa 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -28,7 +28,7 @@ log = {version = "0.4", features = ["max_level_trace", "release_max_level_off"] # - change branch/rev # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "d15768a51b17ed0924d56772a7de4e0f5994f0c1" } +mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "68afeccd4b2874f001084343c21a4a1355880c4c" } # Uncomment the following to build locally - if you change the path locally, do not commit the change in a PR # mmtk = { path = "../repos/mmtk-core" } From 70efb3410ae71afea08b2966f83618f93d766341 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Wed, 27 Mar 2024 02:50:21 +0000 Subject: [PATCH 03/10] Debug: set up tmate --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9fc9464c..f1e10f32 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,6 +19,9 @@ jobs: # Run the tests - name: Dacapo Tests run: ./.github/scripts/ci-test-normal.sh + - name: Setup tmate session + if: ${{ failure() }} + uses: mxschmitt/action-tmate@v3 # Run these checks after build From 5745f392309c3e14a1671380add06cd1c52e923b Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Wed, 3 Apr 2024 00:55:24 +0000 Subject: [PATCH 04/10] Add an assertion for inlined mutator size. Fix incorrect mutator layout. --- .../jikesrvm/mm/mminterface/MMTkMutatorContext.java | 13 ++++++++++--- .../src/org/jikesrvm/mm/mminterface/SSContext.java | 2 +- .../rvm/src/org/jikesrvm/runtime/Entrypoints.java | 3 +++ mmtk/src/api.rs | 8 ++++++++ 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MMTkMutatorContext.java b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MMTkMutatorContext.java index 1a616655..acd41407 100644 --- a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MMTkMutatorContext.java +++ b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/MMTkMutatorContext.java @@ -139,9 +139,11 @@ public abstract class MMTkMutatorContext extends MutatorContext { @Entrypoint Address immixAllocator0Context; @Entrypoint - Address immixAllocator0Hot; + byte immixAllocator0Hot; @Entrypoint - Address immixAllocator0Copy; + byte immixAllocator0Copy; + byte immixAllocator0Pad0; + byte immixAllocator0Pad1; @Entrypoint Address immixAllocator0LargeCursor; @Entrypoint @@ -253,7 +255,7 @@ public abstract class MMTkMutatorContext extends MutatorContext { // Malloc allocator size. We do not need offsets for each field, as we don't need to implement fastpath for large object allocator. static final int MALLOC_ALLOCATOR_SIZE = 3 * BYTES_IN_WORD; // Immix allocator size - static final int IMMIX_ALLOCATOR_SIZE = 12 * BYTES_IN_WORD; + static final int IMMIX_ALLOCATOR_SIZE = 11 * BYTES_IN_WORD; // Free list allocator size static final int FREE_LIST_ALLOCATOR_SIZE = 7 * BYTES_IN_WORD; // Mark compact allocator size (the same as bump allocator) @@ -420,4 +422,9 @@ public void deinitMutator() { Address handle = Magic.objectAsAddress(this).plus(MUTATOR_BASE_OFFSET); sysCall.sysDestroyMutator(handle); } + + @Entrypoint + public static final int getInlinedMutatorSize() { + return MUTATOR_SIZE; + } } \ No newline at end of file diff --git a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java index 228c1dd8..8f675129 100644 --- a/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java +++ b/jikesrvm/rvm/src/org/jikesrvm/mm/mminterface/SSContext.java @@ -23,7 +23,7 @@ public class SSContext extends MMTkMutatorContext { // LARGE_CODE: BumpAllocator #2 (ImmortalSpace) // Immortal: BumpAllocator #3 (ImmortalSpace) // LOS: LargeObjectAllocator #0 (LargeObjectSpace) - // NonMoving: FreeListAllocator #1 (MarkSweepSpace) + // NonMoving: FreeListAllocator #0 (MarkSweepSpace) @Inline protected final int getAllocatorTag(int allocator) { diff --git a/jikesrvm/rvm/src/org/jikesrvm/runtime/Entrypoints.java b/jikesrvm/rvm/src/org/jikesrvm/runtime/Entrypoints.java index db2cffe4..bdfec6e9 100644 --- a/jikesrvm/rvm/src/org/jikesrvm/runtime/Entrypoints.java +++ b/jikesrvm/rvm/src/org/jikesrvm/runtime/Entrypoints.java @@ -181,6 +181,9 @@ public class Entrypoints { public static final NormalMethod enqueueReferenceMethod = getMethod(org.jikesrvm.mm.mminterface.MemoryManager.class, "enqueueReference", "(Lorg/vmmagic/unboxed/Address;)V"); + public static final NormalMethod getInlinedMutatorSizeMethod = + getMethod(org.jikesrvm.mm.mminterface.MMTkMutatorContext.class, "getInlinedMutatorSize", "()I"); + public static final RVMField numThreadsField = getField(org.jikesrvm.scheduler.RVMThread.class, "numThreads", int.class); public static final RVMField isCollectorField = diff --git a/mmtk/src/api.rs b/mmtk/src/api.rs index a323c439..189e968c 100644 --- a/mmtk/src/api.rs +++ b/mmtk/src/api.rs @@ -149,6 +149,14 @@ pub extern "C" fn start_worker(tls: VMWorkerThread, worker: *mut GCWorker>(); + assert_eq!(java_inlined_mutator_size, rust_inlined_mutator_size); + } + // MMTk core renamed enable_collection() to initialize_collection(). The JikesRVM binding // never uses the new enable_collection() API so we just expose this as enable_collection(). // Also this is used by JikesRVM for third party heaps in places where it uses JavaMMTK's enableCollection(). From c6d1d171fd44a7b098ee29f0cdae5d487cd6a2db Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 8 Apr 2024 06:09:03 +0000 Subject: [PATCH 05/10] Debug: Test with 1 gc threads --- .github/scripts/common.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/scripts/common.sh b/.github/scripts/common.sh index 2dc106db..d8c87c3a 100644 --- a/.github/scripts/common.sh +++ b/.github/scripts/common.sh @@ -12,3 +12,5 @@ export RUSTUP_TOOLCHAIN=$RUSTUP_TOOLCHAIN # we run on other images/machines, we need to update this path. export JAVA_HOME=/usr/lib/jvm/temurin-8-jdk-amd64 export PATH=/usr/lib/jvm/temurin-8-jdk-amd64/bin:$PATH + +export MMTK_THREADS=1 From 49b5831739950cd4e6105f1ce173fffb31c7486d Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Tue, 9 Apr 2024 06:11:46 +0000 Subject: [PATCH 06/10] Revert "Debug: Test with 1 gc threads" This reverts commit c6d1d171fd44a7b098ee29f0cdae5d487cd6a2db. --- .github/scripts/common.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/scripts/common.sh b/.github/scripts/common.sh index d8c87c3a..2dc106db 100644 --- a/.github/scripts/common.sh +++ b/.github/scripts/common.sh @@ -12,5 +12,3 @@ export RUSTUP_TOOLCHAIN=$RUSTUP_TOOLCHAIN # we run on other images/machines, we need to update this path. export JAVA_HOME=/usr/lib/jvm/temurin-8-jdk-amd64 export PATH=/usr/lib/jvm/temurin-8-jdk-amd64/bin:$PATH - -export MMTK_THREADS=1 From c9bffa76944f33c2cfd6a34c4b92bead8525843b Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Tue, 9 Apr 2024 06:13:45 +0000 Subject: [PATCH 07/10] Update mmtk-core --- mmtk/Cargo.lock | 4 ++-- mmtk/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mmtk/Cargo.lock b/mmtk/Cargo.lock index 2a1abb27..ec9163d3 100644 --- a/mmtk/Cargo.lock +++ b/mmtk/Cargo.lock @@ -360,7 +360,7 @@ dependencies = [ [[package]] name = "mmtk" version = "0.23.0" -source = "git+https://github.com/qinsoon/mmtk-core.git?rev=68afeccd4b2874f001084343c21a4a1355880c4c#68afeccd4b2874f001084343c21a4a1355880c4c" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=0b9942a12d3d3af144fd1876655149b37d02ae93#0b9942a12d3d3af144fd1876655149b37d02ae93" dependencies = [ "atomic", "atomic-traits", @@ -395,7 +395,7 @@ dependencies = [ [[package]] name = "mmtk-macros" version = "0.23.0" -source = "git+https://github.com/qinsoon/mmtk-core.git?rev=68afeccd4b2874f001084343c21a4a1355880c4c#68afeccd4b2874f001084343c21a4a1355880c4c" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=0b9942a12d3d3af144fd1876655149b37d02ae93#0b9942a12d3d3af144fd1876655149b37d02ae93" dependencies = [ "proc-macro-error", "proc-macro2", diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index 5f55f3aa..574c6a10 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -28,7 +28,7 @@ log = {version = "0.4", features = ["max_level_trace", "release_max_level_off"] # - change branch/rev # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "68afeccd4b2874f001084343c21a4a1355880c4c" } +mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "0b9942a12d3d3af144fd1876655149b37d02ae93" } # Uncomment the following to build locally - if you change the path locally, do not commit the change in a PR # mmtk = { path = "../repos/mmtk-core" } From e23c4c957b012d3e4b04234292b782c928dc0a22 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Wed, 10 Apr 2024 05:24:32 +0000 Subject: [PATCH 08/10] Update mmtk-core and JikesRVM --- mmtk/Cargo.lock | 4 ++-- mmtk/Cargo.toml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mmtk/Cargo.lock b/mmtk/Cargo.lock index 790ac283..ee796fb5 100644 --- a/mmtk/Cargo.lock +++ b/mmtk/Cargo.lock @@ -360,7 +360,7 @@ dependencies = [ [[package]] name = "mmtk" version = "0.24.0" -source = "git+https://github.com/qinsoon/mmtk-core.git?rev=f4fa7f28fcdcb7e7e66176d782a575b7d61c29ad#f4fa7f28fcdcb7e7e66176d782a575b7d61c29ad" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=8e099806ff4eccf26c16836b2d3c5b7b10c11e89#8e099806ff4eccf26c16836b2d3c5b7b10c11e89" dependencies = [ "atomic", "atomic-traits", @@ -395,7 +395,7 @@ dependencies = [ [[package]] name = "mmtk-macros" version = "0.24.0" -source = "git+https://github.com/qinsoon/mmtk-core.git?rev=f4fa7f28fcdcb7e7e66176d782a575b7d61c29ad#f4fa7f28fcdcb7e7e66176d782a575b7d61c29ad" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=8e099806ff4eccf26c16836b2d3c5b7b10c11e89#8e099806ff4eccf26c16836b2d3c5b7b10c11e89" dependencies = [ "proc-macro-error", "proc-macro2", diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index 8c72ae49..dd4537ef 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -16,7 +16,7 @@ lto = true [package.metadata.jikesrvm] # Our CI matches the following line and extract mmtk/jikesrvm. If this line is updated, please check ci yaml files and make sure it works. jikesrvm_repo = "https://github.com/mmtk/jikesrvm.git" -jikesrvm_version = "a43efe4f33a6a69aabeb03e5c5e2e8880f96f047" +jikesrvm_version = "1fadcaf6a797453d2bef0c5176ed0857ff3aafb6" [dependencies] libc = "0.2" @@ -28,7 +28,7 @@ log = {version = "0.4", features = ["max_level_trace", "release_max_level_off"] # - change branch/rev # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "f4fa7f28fcdcb7e7e66176d782a575b7d61c29ad" } +mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "8e099806ff4eccf26c16836b2d3c5b7b10c11e89" } # Uncomment the following to build locally - if you change the path locally, do not commit the change in a PR # mmtk = { path = "../repos/mmtk-core" } From 9d9830eae8bdedf2935d4bd4432f76bc7eaefbc3 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 22 Apr 2024 00:59:11 +0000 Subject: [PATCH 09/10] Update JikesRVM's boot image address --- mmtk/Cargo.toml | 4 ++-- mmtk/src/api.rs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index dd4537ef..af618b83 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -15,8 +15,8 @@ lto = true # Metadata for the JikesRVM repository [package.metadata.jikesrvm] # Our CI matches the following line and extract mmtk/jikesrvm. If this line is updated, please check ci yaml files and make sure it works. -jikesrvm_repo = "https://github.com/mmtk/jikesrvm.git" -jikesrvm_version = "1fadcaf6a797453d2bef0c5176ed0857ff3aafb6" +jikesrvm_repo = "https://github.com/qinsoon/jikesrvm.git" +jikesrvm_version = "9d04231d8a241e6309d99feea3850d936cc4ec68" [dependencies] libc = "0.2" diff --git a/mmtk/src/api.rs b/mmtk/src/api.rs index 98ed6fb0..c2699557 100644 --- a/mmtk/src/api.rs +++ b/mmtk/src/api.rs @@ -64,7 +64,7 @@ pub extern "C" fn jikesrvm_gc_init(jtoc: *mut c_void, heap_size: usize) { builder .options .vm_space_start - .set(unsafe { Address::from_usize(0x6000_0000) }); + .set(unsafe { Address::from_usize(0x7000_0000) }); builder.options.vm_space_size.set(0x800_0000); } From c1558cacf9d72bb299d0b2c0050c0a6ba2fd24e0 Mon Sep 17 00:00:00 2001 From: Yi Lin Date: Mon, 22 Apr 2024 01:55:25 +0000 Subject: [PATCH 10/10] Update mmtk-core --- mmtk/Cargo.lock | 8 ++++---- mmtk/Cargo.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mmtk/Cargo.lock b/mmtk/Cargo.lock index 0f493455..0d31cdea 100644 --- a/mmtk/Cargo.lock +++ b/mmtk/Cargo.lock @@ -424,7 +424,7 @@ dependencies = [ [[package]] name = "mmtk" version = "0.24.0" -source = "git+https://github.com/qinsoon/mmtk-core.git?rev=8e099806ff4eccf26c16836b2d3c5b7b10c11e89#8e099806ff4eccf26c16836b2d3c5b7b10c11e89" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=b4424295ebfd146cf45c5b1568524a5c64440093#b4424295ebfd146cf45c5b1568524a5c64440093" dependencies = [ "atomic", "atomic-traits", @@ -459,7 +459,7 @@ dependencies = [ [[package]] name = "mmtk-macros" version = "0.24.0" -source = "git+https://github.com/qinsoon/mmtk-core.git?rev=8e099806ff4eccf26c16836b2d3c5b7b10c11e89#8e099806ff4eccf26c16836b2d3c5b7b10c11e89" +source = "git+https://github.com/qinsoon/mmtk-core.git?rev=b4424295ebfd146cf45c5b1568524a5c64440093#b4424295ebfd146cf45c5b1568524a5c64440093" dependencies = [ "proc-macro-error", "proc-macro2", @@ -710,9 +710,9 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.30.10" +version = "0.30.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d7c217777061d5a2d652aea771fb9ba98b6dade657204b08c4b9604d11555b" +checksum = "87341a165d73787554941cd5ef55ad728011566fe714e987d1b976c15dbc3a83" dependencies = [ "cfg-if", "core-foundation-sys", diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index af618b83..5db41b86 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -28,7 +28,7 @@ log = {version = "0.4", features = ["max_level_trace", "release_max_level_off"] # - change branch/rev # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "8e099806ff4eccf26c16836b2d3c5b7b10c11e89" } +mmtk = { git = "https://github.com/qinsoon/mmtk-core.git", rev = "b4424295ebfd146cf45c5b1568524a5c64440093" } # Uncomment the following to build locally - if you change the path locally, do not commit the change in a PR # mmtk = { path = "../repos/mmtk-core" }