diff --git a/mmtk/Cargo.lock b/mmtk/Cargo.lock index 4c45486..c0634d7 100644 --- a/mmtk/Cargo.lock +++ b/mmtk/Cargo.lock @@ -108,29 +108,29 @@ dependencies = [ [[package]] name = "bytemuck" -version = "1.20.0" +version = "1.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b37c88a63ffd85d15b406896cc343916d7cf57838a847b3a6f2ca5d39a5695a" +checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" +checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] name = "cc" -version = "1.2.5" +version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31a0499c1dc64f458ad13872de75c0eb7e3fdb0e67964610c914b034fc5956e" +checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" dependencies = [ "jobserver", "libc", @@ -219,7 +219,7 @@ checksum = "4e018fccbeeb50ff26562ece792ed06659b9c2dae79ece77c4456bb10d9bf79b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -230,7 +230,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -262,14 +262,14 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] name = "env_filter" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab" +checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0" dependencies = [ "log", "regex", @@ -277,9 +277,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.5" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d" +checksum = "dcaee3d8e3cfc3fd92428d477bc97fc29ec8716d180c0d74c643bb26166660e0" dependencies = [ "anstream", "anstyle", @@ -449,7 +449,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -584,7 +584,7 @@ dependencies = [ [[package]] name = "mmtk" version = "0.30.0" -source = "git+https://github.com/mmtk/mmtk-core.git?rev=c0f97884234b51b13c8ba5d1563a8e0f592d11c2#c0f97884234b51b13c8ba5d1563a8e0f592d11c2" +source = "git+https://github.com/mmtk/mmtk-core.git?rev=ec745353a8de72b645613e0fef3ab7f5f1ad9bd1#ec745353a8de72b645613e0fef3ab7f5f1ad9bd1" dependencies = [ "atomic", "atomic-traits", @@ -620,12 +620,12 @@ dependencies = [ [[package]] name = "mmtk-macros" version = "0.30.0" -source = "git+https://github.com/mmtk/mmtk-core.git?rev=c0f97884234b51b13c8ba5d1563a8e0f592d11c2#c0f97884234b51b13c8ba5d1563a8e0f592d11c2" +source = "git+https://github.com/mmtk/mmtk-core.git?rev=ec745353a8de72b645613e0fef3ab7f5f1ad9bd1#ec745353a8de72b645613e0fef3ab7f5f1ad9bd1" dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -731,9 +731,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.37" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" dependencies = [ "proc-macro2", ] @@ -798,9 +798,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" +checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "scopeguard" @@ -816,22 +816,22 @@ checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" [[package]] name = "serde" -version = "1.0.216" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e" +checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.216" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e" +checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -883,7 +883,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -898,9 +898,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.90" +version = "2.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" +checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a" dependencies = [ "proc-macro2", "quote", @@ -915,7 +915,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] [[package]] @@ -1145,7 +1145,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", "synstructure", ] @@ -1166,7 +1166,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", "synstructure", ] @@ -1189,5 +1189,5 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.95", ] diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index 1d1aa8c..3747132 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -29,7 +29,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 = "c0f97884234b51b13c8ba5d1563a8e0f592d11c2" } +mmtk = { git = "https://github.com/mmtk/mmtk-core.git", rev = "ec745353a8de72b645613e0fef3ab7f5f1ad9bd1" } # 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" } @@ -40,3 +40,4 @@ nogc = [] semispace = [] marksweep = [] malloc_marksweep = ["mmtk/malloc_mark_sweep"] +binding_side_ref_proc = [] diff --git a/mmtk/rust-toolchain b/mmtk/rust-toolchain index 79e15fd..6b4de0a 100644 --- a/mmtk/rust-toolchain +++ b/mmtk/rust-toolchain @@ -1 +1 @@ -1.77.0 +1.83.0 diff --git a/mmtk/src/api.rs b/mmtk/src/api.rs index 8f18d05..30038cb 100644 --- a/mmtk/src/api.rs +++ b/mmtk/src/api.rs @@ -154,12 +154,6 @@ pub extern "C" fn total_bytes() -> usize { memory_manager::total_bytes(&SINGLETON) } -#[no_mangle] -#[cfg(feature = "sanity")] -pub extern "C" fn scan_region() { - memory_manager::scan_region(&SINGLETON) -} - #[no_mangle] pub extern "C" fn handle_user_collection_request(tls: VMMutatorThread) { memory_manager::handle_user_collection_request::(&SINGLETON, tls); diff --git a/mmtk/src/jikesrvm_calls/mod.rs b/mmtk/src/jikesrvm_calls/mod.rs index 13a22c7..4ee5bd7 100644 --- a/mmtk/src/jikesrvm_calls/mod.rs +++ b/mmtk/src/jikesrvm_calls/mod.rs @@ -31,7 +31,7 @@ pub fn prepare_mutator(tls: VMWorkerThread, mutator_tls: VMMutatorThread) { unsafe { // asm! is not smart enough to figure out VMMutatorThread has repr(transparent) and // therefore the same representation as a pointer. - let mutator_tls_usize = std::mem::transmute::<_, usize>(mutator_tls); + let mutator_tls_usize = std::mem::transmute::(mutator_tls); jtoc_call!(PREPARE_MUTATOR_METHOD_OFFSET, tls, mutator_tls_usize); } } diff --git a/mmtk/src/scan_boot_image.rs b/mmtk/src/scan_boot_image.rs index 7e0e2d8..de6e724 100644 --- a/mmtk/src/scan_boot_image.rs +++ b/mmtk/src/scan_boot_image.rs @@ -98,12 +98,12 @@ fn process_chunk( /* enqueue the specified slot or slots */ debug_assert!(conversions::is_address_aligned(Address::from_usize(offset))); let mut slot: Address = image_start + offset; - if cfg!(feature = "debug") { + if cfg!(debug_assertions) { REFS.fetch_add(1, Ordering::Relaxed); } if !FILTER || slot.load::
() > map_end { - if cfg!(feature = "debug") { + if cfg!(debug_assertions) { ROOTS.fetch_add(1, Ordering::Relaxed); } report_slot(JikesRVMSlot::from_address(slot)); @@ -113,11 +113,11 @@ fn process_chunk( offset += BYTES_IN_ADDRESS; slot = image_start + offset; debug_assert!(conversions::is_address_aligned(slot)); - if cfg!(feature = "debug") { + if cfg!(debug_assertions) { REFS.fetch_add(1, Ordering::Relaxed); } if !FILTER || slot.load::
() > map_end { - if cfg!(feature = "debug") { + if cfg!(debug_assertions) { ROOTS.fetch_add(1, Ordering::Relaxed); } // TODO: check_reference(slot) ? diff --git a/mmtk/src/tib_layout_constants.rs b/mmtk/src/tib_layout_constants.rs index 1be380d..ee84804 100644 --- a/mmtk/src/tib_layout_constants.rs +++ b/mmtk/src/tib_layout_constants.rs @@ -53,4 +53,4 @@ pub const TIB_FIRST_VIRTUAL_METHOD_INDEX: usize = *
  • fits into a PowerPC 16bit immediate operand
  • * */ -pub const NEEDS_DYNAMIC_LINK: isize = i16::min_value() as isize + 1; +pub const NEEDS_DYNAMIC_LINK: isize = i16::MIN as isize + 1;