Adds JSUList, JKRDisposer, and JKRHeap. (#4)

* Added JSUList, JKRDisposer, and JKRHeap.

JSUList: Decompiled JSUPtrLink and JSUPtrList with their respected
functions. The templated class JSUList is left.

JKRDisposer: Constructor matched but the destructor is close but
not yet a match.

JKRHeap: No functions matches yet. JKRHeap.cpp now includes
"operator delete" which makes it possible to forward compile
destructors.

* moved files from src/ to libs/
This commit is contained in:
Jonathan Wase
2020-11-29 17:47:00 +01:00
committed by GitHub
parent 68a46e15cb
commit 635fbc34ec
385 changed files with 4633 additions and 4131 deletions
+13 -13
View File
@@ -104,7 +104,7 @@ lbl_802721A0:
/* 802721B0 0026F0F0 7F E0 07 35 */ extsh. r0, r31
/* 802721B4 0026F0F4 40 81 00 0C */ ble lbl_802721C0
/* 802721B8 0026F0F8 7F C3 F3 78 */ mr r3, r30
/* 802721BC 0026F0FC 48 05 CB 81 */ bl __dl
/* 802721BC 0026F0FC 48 05 CB 81 */ bl __dl__FPv
lbl_802721C0:
/* 802721C0 0026F100 7F C3 F3 78 */ mr r3, r30
/* 802721C4 0026F104 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -134,7 +134,7 @@ lbl_80272210:
/* 80272214 0026F154 28 00 00 00 */ cmplwi r0, 0
/* 80272218 0026F158 40 82 00 2C */ bne lbl_80272244
/* 8027221C 0026F15C 38 60 00 4C */ li r3, 0x4c
/* 80272220 0026F160 48 05 CA 2D */ bl __nw
/* 80272220 0026F160 48 05 CA 2D */ bl __nw__FUl
/* 80272224 0026F164 7C 60 1B 79 */ or. r0, r3, r3
/* 80272228 0026F168 41 82 00 18 */ beq lbl_80272240
/* 8027222C 0026F16C 7F A4 EB 78 */ mr r4, r29
@@ -987,7 +987,7 @@ JFWThreadAlarmHandler:
/* 80272DE4 0026FD24 3C 60 80 43 */ lis r3, lbl_80430FE4@ha
/* 80272DE8 0026FD28 38 63 0F E4 */ addi r3, r3, lbl_80430FE4@l
/* 80272DEC 0026FD2C 38 9F 00 2C */ addi r4, r31, 0x2c
/* 80272DF0 0026FD30 48 06 93 6D */ bl JSUPtrList_NS_remove
/* 80272DF0 0026FD30 48 06 93 6D */ bl remove__10JSUPtrListFP10JSUPtrLink
/* 80272DF4 0026FD34 80 7F 00 28 */ lwz r3, 0x28(r31)
/* 80272DF8 0026FD38 48 0C E9 BD */ bl OSResumeThread
/* 80272DFC 0026FD3C 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -1008,7 +1008,7 @@ JFWDisplay_NS_threadSleep:
/* 80272E2C 0026FD6C 3B E1 00 34 */ addi r31, r1, 0x34
/* 80272E30 0026FD70 7F E3 FB 78 */ mr r3, r31
/* 80272E34 0026FD74 38 81 00 08 */ addi r4, r1, 8
/* 80272E38 0026FD78 48 06 8F C5 */ bl JSUPtrLink
/* 80272E38 0026FD78 48 06 8F C5 */ bl __ct__10JSUPtrLinkFPv
/* 80272E3C 0026FD7C 38 61 00 08 */ addi r3, r1, 8
/* 80272E40 0026FD80 48 0C 7A B9 */ bl OSCreateAlarm
/* 80272E44 0026FD84 48 0C DE 41 */ bl OSGetCurrentThread
@@ -1018,7 +1018,7 @@ JFWDisplay_NS_threadSleep:
/* 80272E54 0026FD94 3C 60 80 43 */ lis r3, lbl_80430FE4@ha
/* 80272E58 0026FD98 38 63 0F E4 */ addi r3, r3, lbl_80430FE4@l
/* 80272E5C 0026FD9C 7F E4 FB 78 */ mr r4, r31
/* 80272E60 0026FDA0 48 06 90 ED */ bl JSUPtrList_NS_append
/* 80272E60 0026FDA0 48 06 90 ED */ bl append__10JSUPtrListFP10JSUPtrLink
/* 80272E64 0026FDA4 38 61 00 08 */ addi r3, r1, 8
/* 80272E68 0026FDA8 7F 86 E3 78 */ mr r6, r28
/* 80272E6C 0026FDAC 7F A5 EB 78 */ mr r5, r29
@@ -1035,7 +1035,7 @@ JFWDisplay_NS_threadSleep:
/* 80272E90 0026FDD0 41 82 00 10 */ beq lbl_80272EA0
/* 80272E94 0026FDD4 7F E3 FB 78 */ mr r3, r31
/* 80272E98 0026FDD8 38 80 00 00 */ li r4, 0
/* 80272E9C 0026FDDC 48 06 8F 79 */ bl JSUPtrLink_NS_dtor
/* 80272E9C 0026FDDC 48 06 8F 79 */ bl __dt__10JSUPtrLinkFv
lbl_80272EA0:
/* 80272EA0 0026FDE0 39 61 00 60 */ addi r11, r1, 0x60
/* 80272EA4 0026FDE4 48 0E F3 81 */ bl _restgpr_28
@@ -1391,7 +1391,7 @@ JFWDrawDoneAlarm:
/* 802733BC 002702FC 3B E1 00 34 */ addi r31, r1, 0x34
/* 802733C0 00270300 7F E3 FB 78 */ mr r3, r31
/* 802733C4 00270304 38 81 00 08 */ addi r4, r1, 8
/* 802733C8 00270308 48 06 8A 35 */ bl JSUPtrLink
/* 802733C8 00270308 48 06 8A 35 */ bl __ct__10JSUPtrLinkFPv
/* 802733CC 0027030C 48 0C A3 29 */ bl __RAS_OSDisableInterrupts_begin
/* 802733D0 00270310 7C 7E 1B 78 */ mr r30, r3
/* 802733D4 00270314 38 61 00 08 */ addi r3, r1, 8
@@ -1399,7 +1399,7 @@ JFWDrawDoneAlarm:
/* 802733DC 0027031C 3C 60 80 43 */ lis r3, lbl_80430FE4@ha
/* 802733E0 00270320 38 63 0F E4 */ addi r3, r3, lbl_80430FE4@l
/* 802733E4 00270324 7F E4 FB 78 */ mr r4, r31
/* 802733E8 00270328 48 06 8B 65 */ bl JSUPtrList_NS_append
/* 802733E8 00270328 48 06 8B 65 */ bl append__10JSUPtrListFP10JSUPtrLink
/* 802733EC 0027032C C8 42 B8 70 */ lfd f2, lbl_80455270-_SDA2_BASE_(r2)
/* 802733F0 00270330 3C 60 80 00 */ lis r3, 0x800000F8@ha
/* 802733F4 00270334 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
@@ -1426,14 +1426,14 @@ JFWDrawDoneAlarm:
/* 80273440 00270380 3C 60 80 43 */ lis r3, lbl_80430FE4@ha
/* 80273444 00270384 38 63 0F E4 */ addi r3, r3, lbl_80430FE4@l
/* 80273448 00270388 7F E4 FB 78 */ mr r4, r31
/* 8027344C 0027038C 48 06 8D 11 */ bl JSUPtrList_NS_remove
/* 8027344C 0027038C 48 06 8D 11 */ bl remove__10JSUPtrListFP10JSUPtrLink
/* 80273450 00270390 7F C3 F3 78 */ mr r3, r30
/* 80273454 00270394 48 0C A2 C9 */ bl OSRestoreInterrupts
/* 80273458 00270398 28 1F 00 00 */ cmplwi r31, 0
/* 8027345C 0027039C 41 82 00 10 */ beq lbl_8027346C
/* 80273460 002703A0 7F E3 FB 78 */ mr r3, r31
/* 80273464 002703A4 38 80 00 00 */ li r4, 0
/* 80273468 002703A8 48 06 89 AD */ bl JSUPtrLink_NS_dtor
/* 80273468 002703A8 48 06 89 AD */ bl __dt__10JSUPtrLinkFv
lbl_8027346C:
/* 8027346C 002703AC 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 80273470 002703B0 83 C1 00 58 */ lwz r30, 0x58(r1)
@@ -1608,7 +1608,7 @@ lbl_802736C4:
/* 802736E8 00270628 3C 60 80 43 */ lis r3, lbl_80430FE4@ha
/* 802736EC 0027062C 38 63 0F E4 */ addi r3, r3, lbl_80430FE4@l
/* 802736F0 00270630 38 80 00 00 */ li r4, 0
/* 802736F4 00270634 48 06 87 81 */ bl JSUPtrList
/* 802736F4 00270634 48 06 87 81 */ bl __ct__10JSUPtrListFb
/* 802736F8 00270638 3C 60 80 43 */ lis r3, lbl_80430FE4@ha
/* 802736FC 0027063C 38 63 0F E4 */ addi r3, r3, lbl_80430FE4@l
.global JSUList_NS_dtor
@@ -1633,11 +1633,11 @@ JSUList_NS_dtor:
/* 8027373C 0027067C 7C 9F 23 78 */ mr r31, r4
/* 80273740 00270680 41 82 00 1C */ beq lbl_8027375C
/* 80273744 00270684 38 80 00 00 */ li r4, 0
/* 80273748 00270688 48 06 87 65 */ bl JSUPtrList_NS_dtor
/* 80273748 00270688 48 06 87 65 */ bl __dt__10JSUPtrListFv
/* 8027374C 0027068C 7F E0 07 35 */ extsh. r0, r31
/* 80273750 00270690 40 81 00 0C */ ble lbl_8027375C
/* 80273754 00270694 7F C3 F3 78 */ mr r3, r30
/* 80273758 00270698 48 05 B5 E5 */ bl __dl
/* 80273758 00270698 48 05 B5 E5 */ bl __dl__FPv
lbl_8027375C:
/* 8027375C 0027069C 7F C3 F3 78 */ mr r3, r30
/* 80273760 002706A0 83 E1 00 0C */ lwz r31, 0xc(r1)
+4 -4
View File
@@ -47,7 +47,7 @@ lbl_80271D44:
/* 80271D5C 0026EC9C 80 ED 82 0C */ lwz r7, lbl_8045078C-_SDA_BASE_(r13)
/* 80271D60 0026ECA0 48 06 02 45 */ bl JKRAram_NS_create
/* 80271D64 0026ECA4 38 60 00 7C */ li r3, 0x7c
/* 80271D68 0026ECA8 48 05 CE E5 */ bl __nw
/* 80271D68 0026ECA8 48 05 CE E5 */ bl __nw__FUl
/* 80271D6C 0026ECAC 7C 7F 1B 79 */ or. r31, r3, r3
/* 80271D70 0026ECB0 41 82 00 1C */ beq lbl_80271D8C
/* 80271D74 0026ECB4 48 0C EF 11 */ bl OSGetCurrentThread
@@ -62,7 +62,7 @@ lbl_80271D8C:
/* 80271D94 0026ECD4 48 07 2E C1 */ bl JUTVideo_NS_createManager
/* 80271D98 0026ECD8 83 ED 81 F8 */ lwz r31, lbl_80450778-_SDA_BASE_(r13)
/* 80271D9C 0026ECDC 38 60 00 1C */ li r3, 0x1c
/* 80271DA0 0026ECE0 48 05 CE AD */ bl __nw
/* 80271DA0 0026ECE0 48 05 CE AD */ bl __nw__FUl
/* 80271DA4 0026ECE4 28 03 00 00 */ cmplwi r3, 0
/* 80271DA8 0026ECE8 41 82 00 0C */ beq lbl_80271DB4
/* 80271DAC 0026ECEC 7F E4 FB 78 */ mr r4, r31
@@ -75,7 +75,7 @@ lbl_80271DB4:
/* 80271DC4 0026ED04 7F C3 F3 78 */ mr r3, r30
/* 80271DC8 0026ED08 48 07 00 79 */ bl JUTException_NS_create
/* 80271DCC 0026ED0C 38 60 00 70 */ li r3, 0x70
/* 80271DD0 0026ED10 48 05 CE 7D */ bl __nw
/* 80271DD0 0026ED10 48 05 CE 7D */ bl __nw__FUl
/* 80271DD4 0026ED14 7C 60 1B 79 */ or. r0, r3, r3
/* 80271DD8 0026ED18 41 82 00 14 */ beq lbl_80271DEC
/* 80271DDC 0026ED1C 80 8D 82 10 */ lwz r4, lbl_80450790-_SDA_BASE_(r13)
@@ -224,7 +224,7 @@ lbl_80271FE0:
/* 80272008 0026EF48 80 6D 8C 24 */ lwz r3, lbl_804511A4-_SDA_BASE_(r13)
/* 8027200C 0026EF4C 80 8D 82 18 */ lwz r4, lbl_80450798-_SDA_BASE_(r13)
/* 80272010 0026EF50 38 A0 00 04 */ li r5, 4
/* 80272014 0026EF54 48 05 C4 C1 */ bl JKRHeap_NS_alloc_X1_
/* 80272014 0026EF54 48 05 C4 C1 */ bl alloc__7JKRHeapFUli
/* 80272018 0026EF58 80 8D 82 18 */ lwz r4, lbl_80450798-_SDA_BASE_(r13)
/* 8027201C 0026EF5C 48 07 1F D1 */ bl JUTException_NS_createConsole
/* 80272020 0026EF60 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0