fix(phase-285): restore weak_basic_llvm + complete LLVM detection/quick SSOT
This commit is contained in:
@ -717,7 +717,7 @@ pub extern "C" fn ny_release_strong(handle: i64) {
|
||||
if handle > 0 {
|
||||
// Drop the handle - this decrements the reference count
|
||||
// and may trigger deallocation if count reaches zero
|
||||
handles::drop(handle as u64);
|
||||
nyash_rust::runtime::host_handles::drop_handle(handle as u64);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1082,7 +1082,6 @@ pub extern "C" fn nyash_float_unbox_to_f64(float_handle: i64) -> f64 {
|
||||
/// - docs/reference/language/lifecycle.md:179
|
||||
/// - docs/development/current/main/phases/phase-285/phase-285llvm-1-design.md
|
||||
#[no_mangle]
|
||||
#[export_name = "nyrt_weak_new"]
|
||||
pub extern "C" fn nyrt_weak_new(strong_handle: i64) -> i64 {
|
||||
use nyash_rust::runtime::host_handles as handles;
|
||||
use nyash_rust::runtime::weak_handles;
|
||||
@ -1119,7 +1118,6 @@ pub extern "C" fn nyrt_weak_new(strong_handle: i64) -> i64 {
|
||||
/// # SSOT
|
||||
/// - docs/reference/language/lifecycle.md:179
|
||||
#[no_mangle]
|
||||
#[export_name = "nyrt_weak_to_strong"]
|
||||
pub extern "C" fn nyrt_weak_to_strong(weak_handle: i64) -> i64 {
|
||||
use nyash_rust::runtime::weak_handles;
|
||||
|
||||
@ -1140,7 +1138,6 @@ pub extern "C" fn nyrt_weak_to_strong(weak_handle: i64) -> i64 {
|
||||
/// # Note
|
||||
/// Called when WeakRef goes out of scope (LLVM backend cleanup)
|
||||
#[no_mangle]
|
||||
#[export_name = "nyrt_weak_drop"]
|
||||
pub extern "C" fn nyrt_weak_drop(weak_handle: i64) {
|
||||
use nyash_rust::runtime::weak_handles;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user