зеркало из https://github.com/mozilla/pluotsorbet.git
Родитель
c42eeea85d
Коммит
df19f3411b
2
nat.ts
2
nat.ts
|
@ -136,7 +136,7 @@ module J2ME {
|
|||
}
|
||||
|
||||
var weakRef = (<java.lang.ref.WeakReference>getHandle(addr));
|
||||
weakRef.holder = ASM._gcMallocAtomic(4, 4);
|
||||
weakRef.holder = ASM._gcMallocAtomic(4);
|
||||
i32[weakRef.holder >> 2] = targetAddr;
|
||||
ASM._gcRegisterDisappearingLink(weakRef.holder, targetAddr);
|
||||
};
|
||||
|
|
|
@ -69,9 +69,9 @@ extern "C" {
|
|||
return (uintptr_t)GC_MALLOC(size);
|
||||
}
|
||||
|
||||
uintptr_t gcMallocAtomic(int32_t size, int32_t offset) {
|
||||
uintptr_t gcMallocAtomic(int32_t size) {
|
||||
uintptr_t ptr = (uintptr_t)GC_MALLOC_ATOMIC(size);
|
||||
memset((void*)(ptr + offset), 0, size - offset);
|
||||
memset((void*)ptr, 0, size);
|
||||
return ptr;
|
||||
}
|
||||
|
||||
|
|
|
@ -1345,7 +1345,7 @@ module J2ME {
|
|||
var addr;
|
||||
|
||||
if (elementClassInfo instanceof PrimitiveClassInfo) {
|
||||
addr = ASM._gcMallocAtomic(Constants.ARRAY_HDR_SIZE + size * (<PrimitiveArrayClassInfo>arrayClassInfo).bytesPerElement, Constants.ARRAY_HDR_SIZE);
|
||||
addr = ASM._gcMallocAtomic(Constants.ARRAY_HDR_SIZE + size * (<PrimitiveArrayClassInfo>arrayClassInfo).bytesPerElement);
|
||||
} else {
|
||||
// We need to hold an integer to define the length of the array
|
||||
// and *size* references.
|
||||
|
|
Загрузка…
Ссылка в новой задаче