mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-26 13:33:34 -04:00
src(phase-36): T4 batch tus2 — delever: batch tus2 — 300 files (TUs; 2483 drawable) · 2752 bodies: 495 lever-free, 2257 residue, 0 refused · sites removed 3505 / needed 5262 / refused 0 / deferred 0 · replays 1350 (0 disagreed) · compiles 5616 in 251 s wall · final 300/300 identical · written 297 files | R22 check-all: 218 passed, 0 failed of 218 | census: THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 46,424 sites in 14,758 bodies (2,258 distinct) · marked !FAKE 9,393 · UNMARKED 37,031 (committed by hand: the cycle's git add hit a stale .git/index.lock created 03:24:19 during the batch's fleet run)
This commit is contained in:
@@ -0,0 +1,476 @@
|
||||
clean: removed build/, expected/, and the regenerated splat tree (asm/, assets/, undefined_*_auto.txt).
|
||||
disc-extract: up to date — extracted/retail/ matches the committed manifest (sha1 e5c6019249dec3c71bb2cf40658a78439dddb037)
|
||||
splat 0.41.0 (powered by spimdisasm 1.41.0)
|
||||
|
||||
0%| | 0/1096 [00:00<?, ?it/s]
|
||||
Loading symbols (symbols.us): 0%| | 0/1096 [00:00<?, ?it/s]
|
||||
Loading symbols (symbols.us): 100%|██████████| 1096/1096 [00:00<00:00, 103300.09it/s]
|
||||
|
||||
0%| | 0/47 [00:00<?, ?it/s]
|
||||
Loading symbols (symbols.us.ram): 0%| | 0/47 [00:00<?, ?it/s]
|
||||
Loading symbols (symbols.us.ram): 100%|██████████| 47/47 [00:00<00:00, 537145.20it/s]
|
||||
|
||||
0%| | 0/2 [00:00<?, ?it/s]
|
||||
Scanning header: 0%| | 0/2 [00:00<?, ?it/s]
|
||||
Scanning main: 0%| | 0/2 [00:00<?, ?it/s]
|
||||
Rodata segment '800' may belong to the text segment '800'
|
||||
Based on the usage from the function LzssDecodeSector to the symbol jtbl_80072A38
|
||||
|
||||
The rodata segment '800' has jumptables that are not aligned properly file-wise, indicating one or more likely file split.
|
||||
File split suggestions for this segment will follow in config yaml format:
|
||||
- [0x6324C, .rodata]
|
||||
- [0x63388, .rodata]
|
||||
- [0x633FC, .rodata]
|
||||
|
||||
|
||||
Rodata segment '800_b' may belong to the text segment '800_b'
|
||||
Based on the usage from the function func_8002B0B4 to the symbol jtbl_80072E44
|
||||
|
||||
Rodata segment '800_b_2' may belong to the text segment '800_b_2'
|
||||
Based on the usage from the function func_8002DC68 to the symbol jtbl_80072F3C
|
||||
|
||||
The rodata segment '800_b_2' has jumptables that are not aligned properly file-wise, indicating one or more likely file split.
|
||||
File split suggestions for this segment will follow in config yaml format:
|
||||
- [0x63920, .rodata]
|
||||
|
||||
|
||||
Rodata segment '800_c' may belong to the text segment '800_c'
|
||||
Based on the usage from the function func_80035270 to the symbol jtbl_800732A0
|
||||
|
||||
Scanning main: 100%|██████████| 2/2 [00:03<00:00, 1.54s/it]
|
||||
Scanning main: 100%|██████████| 2/2 [00:03<00:00, 1.54s/it]
|
||||
|
||||
0%| | 0/2 [00:00<?, ?it/s]
|
||||
Splitting header: 0%| | 0/2 [00:00<?, ?it/s]
|
||||
Splitting main: 0%| | 0/2 [00:00<?, ?it/s]
|
||||
Splitting main: 100%|██████████| 2/2 [00:01<00:00, 1.31it/s]
|
||||
Splitting main: 100%|██████████| 2/2 [00:01<00:00, 1.31it/s]
|
||||
|
||||
0%| | 0/2 [00:00<?, ?it/s]
|
||||
Linker script header: 0%| | 0/2 [00:00<?, ?it/s]
|
||||
Linker script main: 0%| | 0/2 [00:00<?, ?it/s]
|
||||
Linker script main: 100%|██████████| 2/2 [00:00<00:00, 57.20it/s]
|
||||
Split 340 KB (82.28%) in defined segments
|
||||
header: 2 KB (0.50%) 1 split, 0 cached
|
||||
c: 338 KB (81.78%) 85 split, 0 cached
|
||||
unknown: 0 B (0.00%) from unknown bin files
|
||||
ld_interleave --order: .main island = 8 pieces [53198.data.o, 800.o, 63470.data.o, 800_b.o, 800_b_2.o, 63940.data.o, 800_c.o, 63C4C.data.o]; pre=0 text=85 empties=166 bss=85
|
||||
[ OK ] resident
|
||||
[ OK ] ov_SC05_000
|
||||
[ OK ] ov_SC04_000
|
||||
[ OK ] ov_SC01_000
|
||||
[ OK ] ov_SC06_000
|
||||
[ OK ] ov_SC01_006
|
||||
[ OK ] ov_SC02_003
|
||||
[ OK ] ov_SC01_005
|
||||
[ OK ] ov_SC02_000
|
||||
[ OK ] ov_SC01_077
|
||||
[ OK ] ov_SC04_018
|
||||
[ OK ] ov_SC03_002
|
||||
[ OK ] ov_SC04_019
|
||||
[ OK ] ov_SC03_001
|
||||
[ OK ] ov_SC07_000
|
||||
[ OK ] ov_SC01_074
|
||||
[ OK ] ov_SC03_006
|
||||
[ OK ] ov_SC01_004
|
||||
[ OK ] ov_SC02_004
|
||||
[ OK ] ov_SC02_015
|
||||
[ OK ] ov_SC01_001
|
||||
[ OK ] ov_SC02_021
|
||||
[ OK ] ov_SC01_008
|
||||
[ OK ] ov_SC01_080
|
||||
[ OK ] ov_SC01_084
|
||||
[ OK ] ov_SC01_009
|
||||
[ OK ] ov_SC02_005
|
||||
[ OK ] ov_SC02_011
|
||||
[ OK ] ov_SC02_017
|
||||
[ OK ] ov_SC02_016
|
||||
[ OK ] ov_SC02_039
|
||||
[ OK ] ov_SC02_026
|
||||
[ OK ] ov_SC03_003
|
||||
[ OK ] ov_SC03_012
|
||||
[ OK ] ov_SC03_010
|
||||
[ OK ] ov_SC03_011
|
||||
[ OK ] ov_SC02_027
|
||||
[ OK ] ov_SC02_028
|
||||
[ OK ] ov_SC02_035
|
||||
[ OK ] ov_SC02_031
|
||||
[ OK ] ov_SC03_013
|
||||
[ OK ] ov_SC02_041
|
||||
[ OK ] ov_SC03_007
|
||||
[ OK ] ov_SC03_023
|
||||
[ OK ] ov_SC03_024
|
||||
[ OK ] ov_SC03_015
|
||||
[ OK ] ov_SC03_014
|
||||
[ OK ] ov_SC03_029
|
||||
[ OK ] ov_SC03_031
|
||||
[ OK ] ov_SC03_089
|
||||
[ OK ] ov_SC03_092
|
||||
[ OK ] ov_SC03_028
|
||||
[ OK ] ov_SC03_030
|
||||
[ OK ] ov_SC03_091
|
||||
[ OK ] ov_SC03_090
|
||||
[ OK ] ov_SC03_096
|
||||
[ OK ] ov_SC03_094
|
||||
[ OK ] ov_SC03_095
|
||||
[ OK ] ov_SC03_101
|
||||
[ OK ] ov_SC03_098
|
||||
[ OK ] ov_SC03_099
|
||||
[ OK ] ov_SC03_100
|
||||
[ OK ] ov_SC03_109
|
||||
[ OK ] ov_SC03_108
|
||||
[ OK ] ov_SC03_102
|
||||
[ OK ] ov_SC03_097
|
||||
[ OK ] ov_SC03_093
|
||||
[ OK ] ov_SC03_103
|
||||
[ OK ] ov_SC03_105
|
||||
[ OK ] ov_SC03_104
|
||||
[ OK ] ov_SC03_110
|
||||
[ OK ] ov_SC03_111
|
||||
[ OK ] ov_SC03_112
|
||||
[ OK ] ov_SC03_115
|
||||
[ OK ] ov_SC03_116
|
||||
[ OK ] ov_SC03_114
|
||||
[ OK ] ov_SC03_126
|
||||
[ OK ] ov_SC03_121
|
||||
[ OK ] ov_SC03_113
|
||||
[ OK ] ov_SC04_003
|
||||
[ OK ] ov_SC03_117
|
||||
[ OK ] ov_SC03_125
|
||||
[ OK ] ov_SC03_118
|
||||
[ OK ] ov_SC04_002
|
||||
[ OK ] ov_SC04_006
|
||||
[ OK ] ov_SC03_119
|
||||
[ OK ] ov_SC04_004
|
||||
[ OK ] ov_SC04_005
|
||||
[ OK ] ov_SC04_009
|
||||
[ OK ] ov_SC04_008
|
||||
[ OK ] ov_SC04_010
|
||||
[ OK ] ov_SC04_007
|
||||
[ OK ] ov_SC04_021
|
||||
[ OK ] ov_SC04_016
|
||||
[ OK ] ov_SC05_002
|
||||
[ OK ] ov_SC04_012
|
||||
[ OK ] ov_SC03_124
|
||||
[ OK ] ov_SC04_015
|
||||
[ OK ] ov_SC05_001
|
||||
[ OK ] ov_SC04_020
|
||||
[ OK ] ov_SC05_004
|
||||
[ OK ] ov_SC04_011
|
||||
[ OK ] ov_SC05_006
|
||||
[ OK ] ov_SC05_003
|
||||
[ OK ] ov_SC05_005
|
||||
[ OK ] ov_SC05_007
|
||||
[ OK ] ov_SC05_009
|
||||
[ OK ] ov_SC05_008
|
||||
[ OK ] ov_SC05_011
|
||||
[ OK ] ov_SC05_019
|
||||
[ OK ] ov_SC06_013
|
||||
[ OK ] ov_SC06_010
|
||||
[ OK ] ov_SC06_008
|
||||
[ OK ] ov_SC06_014
|
||||
[ OK ] ov_SC05_010
|
||||
[ OK ] ov_SC06_015
|
||||
[ OK ] ov_SC06_011
|
||||
[ OK ] ov_SC05_017
|
||||
[ OK ] ov_SC06_016
|
||||
[ OK ] ov_SC05_018
|
||||
[ OK ] ov_SC06_020
|
||||
[ OK ] ov_SC07_008
|
||||
[ OK ] ov_SC06_022
|
||||
[ OK ] ov_SC06_027
|
||||
[ OK ] ov_SC07_001
|
||||
[ OK ] ov_SC06_018
|
||||
[ OK ] ov_SC06_006
|
||||
[ OK ] ov_SC06_030
|
||||
[ OK ] ov_SC06_024
|
||||
[ OK ] ov_SC06_025
|
||||
[ OK ] ov_SC06_029
|
||||
[ OK ] ov_SC07_002
|
||||
[ OK ] md_MAIN_015
|
||||
[ OK ] md_MAIN_013
|
||||
[ OK ] ov_SC07_009
|
||||
[ OK ] md_MAIN_016
|
||||
[ OK ] md_MAIN_017
|
||||
[ OK ] md_MAIN_014
|
||||
[ OK ] md_MAIN_018
|
||||
[ OK ] md_MAIN_021
|
||||
[ OK ] md_MAIN_023
|
||||
[ OK ] md_MAIN_020
|
||||
[ OK ] md_MAIN_022
|
||||
[ OK ] md_MAIN_024
|
||||
[ OK ] md_MAIN_019
|
||||
[ OK ] ov_SC06_032
|
||||
[ OK ] md_MAIN_028
|
||||
[ OK ] md_MAIN_026
|
||||
[ OK ] md_MAIN_027
|
||||
[ OK ] md_MAIN_025
|
||||
[ OK ] md_MAIN_029
|
||||
[ OK ] md_MAIN_031
|
||||
[ OK ] md_MAIN_030
|
||||
[ OK ] md_MAIN_032
|
||||
[ OK ] md_MAIN_033
|
||||
[ OK ] md_MAIN_034
|
||||
[ OK ] md_MAIN_035
|
||||
[ OK ] md_MAIN_036
|
||||
[ OK ] md_MAIN_037
|
||||
[ OK ] md_MAIN_038
|
||||
[ OK ] md_MAIN_039
|
||||
[ OK ] md_MAIN_041
|
||||
[ OK ] md_MAIN_040
|
||||
[ OK ] md_MAIN_042
|
||||
[ OK ] ov_SC06_033
|
||||
[ OK ] md_MAIN_043
|
||||
[ OK ] md_MAIN_044
|
||||
[ OK ] md_MAIN_047
|
||||
[ OK ] md_MAIN_045
|
||||
[ OK ] md_MAIN_008
|
||||
[ OK ] md_MAIN_046
|
||||
[ OK ] md_MAIN_001
|
||||
[ OK ] md_MAIN_011
|
||||
[ OK ] md_SC03_074
|
||||
[ OK ] md_SC03_076
|
||||
[ OK ] md_SC03_075
|
||||
[ OK ] md_SC03_073
|
||||
[ OK ] md_SC03_078
|
||||
[ OK ] md_MAIN_003
|
||||
[ OK ] ov_SC07_011
|
||||
[ OK ] ov_MAIN_012
|
||||
[ OK ] md_SC03_077
|
||||
[ OK ] md_SC03_079
|
||||
[ OK ] md_SC03_134
|
||||
[ OK ] md_SC03_133
|
||||
[ OK ] md_SC03_135
|
||||
[ OK ] ov_SC03_107
|
||||
[ OK ] ov_SC07_010
|
||||
[ OK ] ov_SC07_006
|
||||
[ OK ] ov_SC07_007
|
||||
[ OK ] md_SC03_137
|
||||
[ OK ] md_SC04_024
|
||||
[ OK ] md_SC03_136
|
||||
[ OK ] md_SC03_132
|
||||
[ OK ] md_SC07_004
|
||||
[ OK ] md_SC07_003
|
||||
[ OK ] md_SC04_025
|
||||
[ OK ] md_SC04_026
|
||||
[ OK ] md_SC03_138
|
||||
[ OK ] md_SC04_029
|
||||
[ OK ] md_SC04_027
|
||||
[ OK ] md_SC05_024
|
||||
[ OK ] md_SC05_028
|
||||
[ OK ] md_SC05_025
|
||||
[ OK ] md_SC04_030
|
||||
[ OK ] md_MAIN_009
|
||||
[ OK ] md_SC05_027
|
||||
[ OK ] md_MAIN_007
|
||||
[ OK ] md_SC03_053
|
||||
[ OK ] md_SC05_023
|
||||
[ OK ] md_SC03_054
|
||||
[ OK ] md_SC05_029
|
||||
[ OK ] md_SC03_056
|
||||
[ OK ] md_SC05_026
|
||||
[ OK ] md_SC04_028
|
||||
[ OK ] ov_SC02_037
|
||||
[ OK ] md_SC02_009
|
||||
extract-all: 217 extracted, 0 failed of 217 (+ main, serial)
|
||||
[ OK ] resident
|
||||
[ OK ] ov_SC01_006
|
||||
[ OK ] ov_SC01_000
|
||||
[ OK ] ov_SC05_000
|
||||
[ OK ] ov_SC04_000
|
||||
[ OK ] ov_SC01_005
|
||||
[ OK ] ov_SC06_000
|
||||
[ OK ] ov_SC03_006
|
||||
[ OK ] ov_SC01_001
|
||||
[ OK ] ov_SC03_001
|
||||
[ OK ] ov_SC04_019
|
||||
[ OK ] ov_SC03_002
|
||||
[ OK ] ov_SC04_018
|
||||
[ OK ] ov_SC02_000
|
||||
[ OK ] ov_SC02_003
|
||||
[ OK ] ov_SC01_077
|
||||
[ OK ] ov_SC01_004
|
||||
[ OK ] ov_SC01_084
|
||||
[ OK ] ov_SC01_080
|
||||
[ OK ] ov_SC02_004
|
||||
[ OK ] ov_SC01_074
|
||||
[ OK ] ov_SC01_008
|
||||
[ OK ] ov_SC01_009
|
||||
[ OK ] ov_SC02_016
|
||||
[ OK ] ov_SC02_011
|
||||
[ OK ] ov_SC02_026
|
||||
[ OK ] ov_SC02_021
|
||||
[ OK ] ov_SC07_000
|
||||
[ OK ] ov_SC02_015
|
||||
[ OK ] ov_SC02_017
|
||||
[ OK ] ov_SC02_005
|
||||
[ OK ] ov_SC02_035
|
||||
[ OK ] ov_SC02_039
|
||||
[ OK ] ov_SC02_027
|
||||
[ OK ] ov_SC02_031
|
||||
[ OK ] ov_SC02_041
|
||||
[ OK ] ov_SC03_003
|
||||
[ OK ] ov_SC03_012
|
||||
[ OK ] ov_SC03_011
|
||||
[ OK ] ov_SC03_010
|
||||
[ OK ] ov_SC02_028
|
||||
[ OK ] ov_SC03_013
|
||||
[ OK ] ov_SC03_007
|
||||
[ OK ] ov_SC03_014
|
||||
[ OK ] ov_SC03_015
|
||||
[ OK ] ov_SC03_023
|
||||
[ OK ] ov_SC03_024
|
||||
[ OK ] ov_SC03_031
|
||||
[ OK ] ov_SC03_028
|
||||
[ OK ] ov_SC03_030
|
||||
[ OK ] ov_SC03_089
|
||||
[ OK ] ov_SC03_029
|
||||
[ OK ] ov_SC03_096
|
||||
[ OK ] ov_SC03_092
|
||||
[ OK ] ov_SC03_090
|
||||
[ OK ] ov_SC03_097
|
||||
[ OK ] ov_SC03_091
|
||||
[ OK ] ov_SC03_093
|
||||
[ OK ] ov_SC03_095
|
||||
[ OK ] ov_SC03_098
|
||||
[ OK ] ov_SC03_094
|
||||
[ OK ] main
|
||||
[ OK ] ov_SC03_099
|
||||
[ OK ] ov_SC03_100
|
||||
[ OK ] ov_SC03_101
|
||||
[ OK ] ov_SC03_102
|
||||
[ OK ] ov_SC03_109
|
||||
[ OK ] ov_SC03_108
|
||||
[ OK ] ov_SC03_103
|
||||
[ OK ] ov_SC03_111
|
||||
[ OK ] ov_SC03_113
|
||||
[ OK ] ov_SC03_115
|
||||
[ OK ] ov_SC03_114
|
||||
[ OK ] ov_SC03_110
|
||||
[ OK ] ov_SC03_105
|
||||
[ OK ] ov_SC03_104
|
||||
[ OK ] ov_SC03_112
|
||||
[ OK ] ov_SC03_116
|
||||
[ OK ] ov_SC03_117
|
||||
[ OK ] ov_SC03_118
|
||||
[ OK ] ov_SC04_003
|
||||
[ OK ] ov_SC04_002
|
||||
[ OK ] ov_SC04_008
|
||||
[ OK ] ov_SC04_006
|
||||
[ OK ] ov_SC03_126
|
||||
[ OK ] ov_SC03_119
|
||||
[ OK ] ov_SC04_009
|
||||
[ OK ] ov_SC03_125
|
||||
[ OK ] ov_SC03_121
|
||||
[ OK ] ov_SC04_004
|
||||
[ OK ] ov_SC04_005
|
||||
[ OK ] ov_SC04_007
|
||||
[ OK ] ov_SC03_124
|
||||
[ OK ] ov_SC04_010
|
||||
[ OK ] ov_SC04_011
|
||||
[ OK ] ov_SC04_015
|
||||
[ OK ] ov_SC04_012
|
||||
[ OK ] ov_SC04_020
|
||||
[ OK ] ov_SC04_021
|
||||
[ OK ] ov_SC05_003
|
||||
[ OK ] ov_SC05_005
|
||||
[ OK ] ov_SC05_004
|
||||
[ OK ] ov_SC05_006
|
||||
[ OK ] ov_SC04_016
|
||||
[ OK ] ov_SC05_002
|
||||
[ OK ] ov_SC05_001
|
||||
[ OK ] ov_SC05_009
|
||||
[ OK ] ov_SC05_008
|
||||
[ OK ] ov_SC05_007
|
||||
[ OK ] ov_SC05_010
|
||||
[ OK ] ov_SC05_011
|
||||
[ OK ] ov_SC05_019
|
||||
[ OK ] ov_SC05_018
|
||||
[ OK ] ov_SC06_008
|
||||
[ OK ] ov_SC06_006
|
||||
[ OK ] ov_SC06_010
|
||||
[ OK ] ov_SC06_011
|
||||
[ OK ] ov_SC06_015
|
||||
[ OK ] ov_SC06_014
|
||||
[ OK ] ov_SC05_017
|
||||
[ OK ] ov_SC06_013
|
||||
[ OK ] ov_SC06_018
|
||||
[ OK ] ov_SC06_024
|
||||
[ OK ] ov_SC06_020
|
||||
[ OK ] ov_SC06_022
|
||||
[ OK ] ov_SC06_016
|
||||
[ OK ] ov_SC06_025
|
||||
[ OK ] ov_SC06_027
|
||||
[ OK ] md_MAIN_013
|
||||
[ OK ] md_MAIN_014
|
||||
[ OK ] md_MAIN_015
|
||||
[ OK ] md_MAIN_016
|
||||
[ OK ] md_MAIN_017
|
||||
[ OK ] md_MAIN_018
|
||||
[ OK ] md_MAIN_019
|
||||
[ OK ] md_MAIN_020
|
||||
[ OK ] md_MAIN_021
|
||||
[ OK ] md_MAIN_022
|
||||
[ OK ] ov_SC06_029
|
||||
[ OK ] md_MAIN_023
|
||||
[ OK ] ov_SC06_030
|
||||
[ OK ] md_MAIN_024
|
||||
[ OK ] md_MAIN_025
|
||||
[ OK ] ov_MAIN_012
|
||||
[ OK ] md_MAIN_026
|
||||
[ OK ] ov_SC07_001
|
||||
[ OK ] md_MAIN_027
|
||||
[ OK ] md_MAIN_030
|
||||
[ OK ] md_MAIN_029
|
||||
[ OK ] md_MAIN_028
|
||||
[ OK ] ov_SC07_009
|
||||
[ OK ] ov_SC07_008
|
||||
[ OK ] md_MAIN_032
|
||||
[ OK ] md_MAIN_031
|
||||
[ OK ] md_MAIN_034
|
||||
[ OK ] md_MAIN_033
|
||||
[ OK ] md_MAIN_035
|
||||
[ OK ] md_MAIN_036
|
||||
[ OK ] md_MAIN_039
|
||||
[ OK ] md_MAIN_037
|
||||
[ OK ] ov_SC07_011
|
||||
[ OK ] md_MAIN_041
|
||||
[ OK ] md_MAIN_040
|
||||
[ OK ] md_MAIN_038
|
||||
[ OK ] ov_SC07_006
|
||||
[ OK ] ov_SC07_007
|
||||
[ OK ] md_MAIN_043
|
||||
[ OK ] md_MAIN_042
|
||||
[ OK ] md_MAIN_044
|
||||
[ OK ] md_MAIN_001
|
||||
[ OK ] md_MAIN_046
|
||||
[ OK ] md_MAIN_047
|
||||
[ OK ] md_MAIN_011
|
||||
[ OK ] md_MAIN_045
|
||||
[ OK ] md_MAIN_008
|
||||
[ OK ] ov_SC07_002
|
||||
[ OK ] ov_SC06_032
|
||||
[ OK ] md_SC03_078
|
||||
[ OK ] md_SC07_003
|
||||
[ OK ] md_SC03_075
|
||||
[ OK ] md_SC03_073
|
||||
[ OK ] md_SC03_074
|
||||
[ OK ] md_SC03_079
|
||||
[ OK ] ov_SC07_010
|
||||
[ OK ] md_SC03_077
|
||||
[ OK ] ov_SC02_037
|
||||
[ OK ] md_SC03_132
|
||||
[ OK ] md_SC03_133
|
||||
[ OK ] md_SC03_076
|
||||
[ OK ] md_MAIN_003
|
||||
[ OK ] md_SC04_025
|
||||
[ OK ] md_SC03_138
|
||||
[ OK ] md_SC03_134
|
||||
[ OK ] md_SC04_026
|
||||
[ OK ] md_SC03_137
|
||||
[ OK ] ov_SC06_033
|
||||
[ OK ] md_SC03_136
|
||||
[ OK ] md_SC04_024
|
||||
[ OK ] md_SC03_135
|
||||
[ OK ] md_SC04_030
|
||||
[ OK ] md_SC05_023
|
||||
@@ -55,14 +55,14 @@
|
||||
},
|
||||
"kinds": {
|
||||
"asm-body/direct": 13,
|
||||
"barrier/direct": 5419,
|
||||
"barrier/direct": 5410,
|
||||
"barrier/via-macro": 2,
|
||||
"gte/direct": 1140,
|
||||
"gte/via-macro": 5751,
|
||||
"instruction/direct": 1731,
|
||||
"instruction/via-macro": 22,
|
||||
"keepalive/direct": 2379,
|
||||
"launder/direct": 4790,
|
||||
"keepalive/direct": 2339,
|
||||
"launder/direct": 4786,
|
||||
"launder/via-macro": 440,
|
||||
"verbatim-body/direct": 2682
|
||||
}
|
||||
@@ -70,52 +70,52 @@
|
||||
"binaries": 218,
|
||||
"classes": {
|
||||
"A": {
|
||||
"bodies": 12945,
|
||||
"distinct_bodies": 1849,
|
||||
"bodies": 12335,
|
||||
"distinct_bodies": 1861,
|
||||
"file_scope": 0,
|
||||
"in_bodies": 34991,
|
||||
"in_bodies": 31681,
|
||||
"kinds": {
|
||||
"pin": 34991
|
||||
"pin": 31681
|
||||
},
|
||||
"marked": 2784,
|
||||
"sites": 34991,
|
||||
"marked": 5971,
|
||||
"sites": 31681,
|
||||
"tus": 2676,
|
||||
"unmarked": 32207
|
||||
"unmarked": 25710
|
||||
},
|
||||
"B": {
|
||||
"bodies": 10540,
|
||||
"distinct_bodies": 1209,
|
||||
"bodies": 10495,
|
||||
"distinct_bodies": 1214,
|
||||
"file_scope": 13,
|
||||
"in_bodies": 24356,
|
||||
"in_bodies": 24303,
|
||||
"kinds": {
|
||||
"asm-body": 13,
|
||||
"barrier": 5421,
|
||||
"barrier": 5412,
|
||||
"gte": 6891,
|
||||
"instruction": 1753,
|
||||
"keepalive": 2379,
|
||||
"launder": 5230,
|
||||
"keepalive": 2339,
|
||||
"launder": 5226,
|
||||
"verbatim-body": 2682
|
||||
},
|
||||
"marked": 1609,
|
||||
"sites": 24369,
|
||||
"marked": 3464,
|
||||
"sites": 24316,
|
||||
"tus": 2450,
|
||||
"unmarked": 22760
|
||||
"unmarked": 20852
|
||||
},
|
||||
"C": {
|
||||
"bodies": 810,
|
||||
"distinct_bodies": 145,
|
||||
"file_scope": 516,
|
||||
"in_bodies": 2510,
|
||||
"file_scope": 502,
|
||||
"in_bodies": 2382,
|
||||
"kinds": {
|
||||
"cast": 2277,
|
||||
"cast": 2149,
|
||||
"decl-body": 231,
|
||||
"decl-file": 516,
|
||||
"decl-file": 502,
|
||||
"param": 2
|
||||
},
|
||||
"marked": 1,
|
||||
"sites": 3026,
|
||||
"tus": 879,
|
||||
"unmarked": 3025
|
||||
"sites": 2884,
|
||||
"tus": 869,
|
||||
"unmarked": 2883
|
||||
},
|
||||
"D": {
|
||||
"bodies": 69,
|
||||
@@ -132,7 +132,7 @@
|
||||
},
|
||||
"E": {
|
||||
"bodies": 737,
|
||||
"distinct_bodies": 117,
|
||||
"distinct_bodies": 118,
|
||||
"file_scope": 6423,
|
||||
"in_bodies": 1005,
|
||||
"kinds": {
|
||||
@@ -199,9 +199,9 @@
|
||||
"coverage": {
|
||||
"asm": {
|
||||
"comment_dead": 6792,
|
||||
"live": 62968,
|
||||
"live": 59605,
|
||||
"macro_block": 7189,
|
||||
"raw": 76949
|
||||
"raw": 73586
|
||||
},
|
||||
"attribute": {
|
||||
"comment_dead": 0,
|
||||
@@ -217,30 +217,30 @@
|
||||
},
|
||||
"register": {
|
||||
"comment_dead": 8584,
|
||||
"live": 35077,
|
||||
"live": 31767,
|
||||
"macro_block": 18,
|
||||
"raw": 43679
|
||||
"raw": 40369
|
||||
},
|
||||
"volatile": {
|
||||
"comment_dead": 2607,
|
||||
"live": 4768,
|
||||
"live": 4626,
|
||||
"macro_block": 6510,
|
||||
"raw": 13885
|
||||
"raw": 13743
|
||||
}
|
||||
},
|
||||
"coverage_ok": true,
|
||||
"elapsed_s": 50.5,
|
||||
"elapsed_s": 38.2,
|
||||
"generated": "2026-09-09",
|
||||
"head": "e5f59c12f",
|
||||
"head": "a605e1dba",
|
||||
"headers": 3181,
|
||||
"levers_AB": {
|
||||
"asm": 14796,
|
||||
"bodies": 15243,
|
||||
"distinct_bodies": 2244,
|
||||
"marked": 4391,
|
||||
"pins": 34991,
|
||||
"sites": 49787,
|
||||
"unmarked": 45396,
|
||||
"asm": 14743,
|
||||
"bodies": 14758,
|
||||
"distinct_bodies": 2258,
|
||||
"marked": 9393,
|
||||
"pins": 31681,
|
||||
"sites": 46424,
|
||||
"unmarked": 37031,
|
||||
"what": "register pins + asm statements excluding GTE ops: the classes the phase drives to 0"
|
||||
},
|
||||
"macro_definitions": {
|
||||
@@ -363,11 +363,6 @@
|
||||
137,
|
||||
1
|
||||
],
|
||||
[
|
||||
"gte_mvmva0",
|
||||
136,
|
||||
1
|
||||
],
|
||||
[
|
||||
"gte_ldIR0z",
|
||||
136,
|
||||
@@ -377,6 +372,11 @@
|
||||
"gte_ldIRGB",
|
||||
136,
|
||||
1
|
||||
],
|
||||
[
|
||||
"gte_dpcl",
|
||||
136,
|
||||
1
|
||||
]
|
||||
],
|
||||
"total": 9540
|
||||
@@ -387,35 +387,35 @@
|
||||
},
|
||||
"pins": {
|
||||
"bare_name": 75,
|
||||
"init": 4917,
|
||||
"init": 4408,
|
||||
"registers": {
|
||||
"$0": 1337,
|
||||
"$1": 2,
|
||||
"$10": 296,
|
||||
"$11": 324,
|
||||
"$10": 169,
|
||||
"$11": 244,
|
||||
"$12": 420,
|
||||
"$13": 286,
|
||||
"$13": 246,
|
||||
"$14": 282,
|
||||
"$15": 8,
|
||||
"$16": 3752,
|
||||
"$17": 3667,
|
||||
"$18": 2006,
|
||||
"$19": 1338,
|
||||
"$2": 5400,
|
||||
"$20": 772,
|
||||
"$21": 831,
|
||||
"$22": 285,
|
||||
"$23": 417,
|
||||
"$16": 3326,
|
||||
"$17": 3165,
|
||||
"$18": 1762,
|
||||
"$19": 1178,
|
||||
"$2": 4980,
|
||||
"$20": 605,
|
||||
"$21": 704,
|
||||
"$22": 158,
|
||||
"$23": 290,
|
||||
"$24": 4,
|
||||
"$25": 136,
|
||||
"$29": 13,
|
||||
"$3": 3225,
|
||||
"$4": 3736,
|
||||
"$5": 2784,
|
||||
"$6": 1005,
|
||||
"$3": 2963,
|
||||
"$4": 3691,
|
||||
"$5": 2742,
|
||||
"$6": 925,
|
||||
"$7": 944,
|
||||
"$8": 1000,
|
||||
"$9": 646,
|
||||
"$8": 833,
|
||||
"$9": 479,
|
||||
"3": 1,
|
||||
"4": 1,
|
||||
"5": 2,
|
||||
@@ -430,30 +430,30 @@
|
||||
"v0": 16,
|
||||
"v1": 15
|
||||
},
|
||||
"sites": 34991,
|
||||
"sites": 31681,
|
||||
"sp": 13,
|
||||
"spelling": {
|
||||
"__asm__": 34784,
|
||||
"__asm__": 31474,
|
||||
"asm": 207
|
||||
},
|
||||
"volatile_qualified": 136,
|
||||
"zero": 1337
|
||||
},
|
||||
"src_stamp": "1b260759b699bd23",
|
||||
"src_stamp": "53caafa5f5cc74a3",
|
||||
"tus": 4121,
|
||||
"unclassified": 0,
|
||||
"union_AD": {
|
||||
"bodies": 18814,
|
||||
"bodies": 18329,
|
||||
"by_kind": {
|
||||
"main": 204,
|
||||
"md": 213,
|
||||
"ov": 17988,
|
||||
"ov": 17503,
|
||||
"resident": 16,
|
||||
"shared": 393
|
||||
},
|
||||
"copies_in_multi": 16758,
|
||||
"distinct_bodies": 2555,
|
||||
"multi_copy_classes": 499
|
||||
"copies_in_multi": 16285,
|
||||
"distinct_bodies": 2569,
|
||||
"multi_copy_classes": 525
|
||||
},
|
||||
"verbatim_excluded": {
|
||||
"functions": 13,
|
||||
@@ -489,9 +489,9 @@
|
||||
},
|
||||
"volatile": {
|
||||
"kinds": {
|
||||
"cast": 2277,
|
||||
"cast": 2149,
|
||||
"decl-body": 231,
|
||||
"decl-file": 516,
|
||||
"decl-file": 502,
|
||||
"param": 2
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
lever_census: 218 binaries · 4,121 TUs + 3,181 headers · coverage OK · unclassified 0 · verbatim excluded 13 fn / 14 sites (manifest 13)
|
||||
coverage asm raw 76949 = live 62968 + macro-block 7189 + comment/dead 6792
|
||||
coverage register raw 43679 = live 35077 + macro-block 18 + comment/dead 8584
|
||||
coverage volatile raw 13885 = live 4768 + macro-block 6510 + comment/dead 2607
|
||||
coverage asm raw 73586 = live 59605 + macro-block 7189 + comment/dead 6792
|
||||
coverage register raw 40369 = live 31767 + macro-block 18 + comment/dead 8584
|
||||
coverage volatile raw 13743 = live 4626 + macro-block 6510 + comment/dead 2607
|
||||
coverage builtin raw 599 = live 445 + macro-block 0 + comment/dead 154
|
||||
coverage attribute raw 76 = live 76 + macro-block 0 + comment/dead 0
|
||||
class sites in-bodies file-scope bodies distinct TUs marked unmarked kinds
|
||||
A pins 34991 34991 0 12945 1849 2676 2784 32207 {'pin': 34991}
|
||||
B asm 24369 24356 13 10540 1209 2450 1609 22760 {'instruction': 1753, 'keepalive': 2379, 'gte': 6891, 'launder': 5230, 'barrier': 5421, 'asm-body': 13, 'verbatim-body': 2682}
|
||||
C volatile 3026 2510 516 810 145 879 1 3025 {'cast': 2277, 'decl-body': 231, 'decl-file': 516, 'param': 2}
|
||||
A pins 31681 31681 0 12335 1861 2676 5971 25710 {'pin': 31681}
|
||||
B asm 24316 24303 13 10495 1214 2450 3464 20852 {'instruction': 1753, 'keepalive': 2339, 'gte': 6891, 'launder': 5226, 'barrier': 5412, 'verbatim-body': 2682, 'asm-body': 13}
|
||||
C volatile 2884 2382 502 810 145 869 1 2883 {'cast': 2149, 'decl-file': 502, 'decl-body': 231, 'param': 2}
|
||||
D register 86 86 0 69 69 19 0 86 {'register': 86}
|
||||
E asm-label 7428 1005 6423 737 117 2080 0 7428 {'asm-label': 7428}
|
||||
E asm-label 7428 1005 6423 737 118 2080 0 7428 {'asm-label': 7428}
|
||||
F builtin 445 445 0 428 29 302 0 445 {'builtin': 445}
|
||||
G attribute 76 1 75 1 1 40 0 76 {'attribute': 76}
|
||||
UNION A–D: 18,814 bodies · 2,555 distinct (addresses normalized) · 499 multi-copy classes holding 16,758 bodies · by kind {'ov': 17988, 'shared': 393, 'main': 204, 'md': 213, 'resident': 16}
|
||||
THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 49,787 sites in 15,243 bodies (2,244 distinct) · marked !FAKE 4,391 · UNMARKED 45,396
|
||||
UNION A–D: 18,329 bodies · 2,569 distinct (addresses normalized) · 525 multi-copy classes holding 16,285 bodies · by kind {'ov': 17503, 'main': 204, 'shared': 393, 'md': 213, 'resident': 16}
|
||||
THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 46,424 sites in 14,758 bodies (2,258 distinct) · marked !FAKE 9,393 · UNMARKED 37,031
|
||||
orphan !FAKE markers (no pin/asm site on the line nor below): 0
|
||||
pins: 34,991 · $0 1,337 · $sp 13 · with initializer 4,917 · volatile-qualified 136 · bare-name 75 · spellings {'__asm__': 34784, 'asm': 207}
|
||||
pins: 31,681 · $0 1,337 · $sp 13 · with initializer 4,408 · volatile-qualified 136 · bare-name 75 · spellings {'__asm__': 31474, 'asm': 207}
|
||||
whole-body asm routines in C shells, manifest PERMANENT (hand asm, NOT levers): 22 routines · 2,682 sites (2,660 private copies + 22 shared headers); asm-bodies NOT permanent (levers): 13 site(s) ['func_8001E378:DECOMPILE-NOW', 'func_80020F34:DECOMPILE-NOW', 'func_800249F0:DECOMPILE-NOW', 'func_80025CBC:DECOMPILE-NOW', 'func_80026514:UNCERTAIN', 'func_800268D0:UNCERTAIN', 'func_80027058:DECOMPILE-NOW', 'func_80027200:DECOMPILE-NOW', 'func_800CBA44:DECOMPILE-NOW', 'func_8017D810:DECOMPILE-NOW', 'func_8017E26C:UNCERTAIN', 'func_80184440:DECOMPILE-NOW', 'func_801A3BCC:DECOMPILE-NOW']
|
||||
asm kinds: {'asm-body/direct': 13, 'barrier/direct': 5419, 'barrier/via-macro': 2, 'gte/direct': 1140, 'gte/via-macro': 5751, 'instruction/direct': 1731, 'instruction/via-macro': 22, 'keepalive/direct': 2379, 'launder/direct': 4790, 'launder/via-macro': 440, 'verbatim-body/direct': 2682}
|
||||
asm kinds: {'asm-body/direct': 13, 'barrier/direct': 5410, 'barrier/via-macro': 2, 'gte/direct': 1140, 'gte/via-macro': 5751, 'instruction/direct': 1731, 'instruction/via-macro': 22, 'keepalive/direct': 2339, 'launder/direct': 4786, 'launder/via-macro': 440, 'verbatim-body/direct': 2682}
|
||||
instruction mnemonics: {'addu': 999, 'move': 407, 'la': 145, 'lh': 134, 'addiu': 24, 'RTP_SND': 22, '.section': 7, 'lui': 5, 'and': 2, 'andi': 1, 'mult': 1, 'mfhi': 1, 'sll': 1, 'li': 1, 'lw': 1, 'nop': 1, 'srl': 1}
|
||||
gte mnemonics: {'gte_ldv0': 653, 'swc2': 449, 'lwc2': 435, 'gte_stsxy': 361, 'gte_rtps': 356, 'gte_stflg': 319, 'gte_rtpt': 289, 'gte_stsxy3': 191, 'gte_ldrgb': 162, 'gte_ldv3c': 159, 'gte_rt': 155, 'gte_SetRotMatrix': 150, 'gte_SetTransMatrix': 145, 'gte_stsv': 145, 'gte_stlvnl': 143, 'gte_ldv3': 140, 'gte_ldIR0z': 133, 'gte_ldIRGB': 133, 'gte_dpcl': 133, 'gte_stORGB': 133, 'gte_mvmva0': 131, 'gte_stsz4': 126, 'gte_stsz3': 123, 'gte_stszotz': 113, 'gte_nclip': 96, 'gte_stopz': 96, 'gte_stsxy3c': 94, 'lw': 80, 'lhu': 70, 'mfc2': 61}
|
||||
asm-bearing macro definitions: 9,540 (338 names, 32 with >1 text) kinds {'gte': 9102, 'launder': 428, 'instruction': 9, 'barrier': 1}
|
||||
@@ -26,4 +26,4 @@ lever_census: 218 binaries · 4,121 TUs + 3,181 headers · coverage OK · unclas
|
||||
src/shared/ov/func_80178004.h pins got 26 expected 26 OK
|
||||
ov_SC03_006 func_80184034 bare-name pins got 3 expected 3 OK
|
||||
engine_prelude.h asm sites (a macro definition only) got 0 expected 0 OK
|
||||
elapsed 50.5 s
|
||||
elapsed 38.2 s
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,5 @@
|
||||
delever_oracle --calibrate main ov_SC03_014 ov_SC03_015 ov_SC04_011: 177/177 objects byte-identical untouched; twin checks 32 (0 mismatch); positive control DIFFERS on build/src/800.o; 4.8 s — OK
|
||||
main 85/85 identical, mean 0.194 s per object
|
||||
ov_SC03_014 32/32 identical, mean 0.303 s per object
|
||||
ov_SC03_015 32/32 identical, mean 0.276 s per object
|
||||
ov_SC04_011 28/28 identical, mean 0.235 s per object
|
||||
+187
-187
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"head": "e5f59c12f",
|
||||
"head": "a605e1dba",
|
||||
"stamp": "b44c5a8a3423",
|
||||
"generated": "2026-09-09 03:15",
|
||||
"generated": "2026-09-09 03:20",
|
||||
"aliases": [
|
||||
"main",
|
||||
"ov_SC03_014",
|
||||
@@ -21,207 +21,207 @@
|
||||
"main": {
|
||||
"objects": 85,
|
||||
"identical": 85,
|
||||
"seconds": 10.307000000000006,
|
||||
"mean_s": 0.121
|
||||
"seconds": 16.508,
|
||||
"mean_s": 0.194
|
||||
},
|
||||
"ov_SC03_014": {
|
||||
"objects": 32,
|
||||
"identical": 32,
|
||||
"seconds": 6.9860000000000015,
|
||||
"mean_s": 0.218
|
||||
"seconds": 9.711999999999998,
|
||||
"mean_s": 0.303
|
||||
},
|
||||
"ov_SC03_015": {
|
||||
"objects": 32,
|
||||
"identical": 32,
|
||||
"seconds": 6.369999999999997,
|
||||
"mean_s": 0.199
|
||||
"seconds": 8.828,
|
||||
"mean_s": 0.276
|
||||
},
|
||||
"ov_SC04_011": {
|
||||
"objects": 28,
|
||||
"identical": 28,
|
||||
"seconds": 5.704000000000001,
|
||||
"mean_s": 0.204
|
||||
"seconds": 6.593,
|
||||
"mean_s": 0.235
|
||||
}
|
||||
},
|
||||
"per_object_seconds": {
|
||||
"build/src/800.o": 1.021,
|
||||
"build/src/800_b.o": 0.13,
|
||||
"build/src/800_b_2.o": 0.706,
|
||||
"build/src/800_b_o0a.o": 0.087,
|
||||
"build/src/800_c.o": 0.319,
|
||||
"build/src/800b2.o": 0.105,
|
||||
"build/src/apicard1.o": 0.107,
|
||||
"build/src/apicard2.o": 0.191,
|
||||
"build/src/apicard3.o": 0.129,
|
||||
"build/src/apicard4.o": 0.13,
|
||||
"build/src/apicard5.o": 0.085,
|
||||
"build/src/apicard6.o": 0.256,
|
||||
"build/src/apicard7.o": 0.126,
|
||||
"build/src/boot.o": 0.121,
|
||||
"build/src/gap.o": 0.118,
|
||||
"build/src/libapi1.o": 0.104,
|
||||
"build/src/libapi2.o": 0.113,
|
||||
"build/src/libc2_1.o": 0.152,
|
||||
"build/src/libc2_2.o": 0.075,
|
||||
"build/src/libcd1.o": 0.076,
|
||||
"build/src/libcd2.o": 0.07,
|
||||
"build/src/libetc.o": 0.078,
|
||||
"build/src/libgpu.o": 0.078,
|
||||
"build/src/libgpu2.o": 0.094,
|
||||
"build/src/libgs1.o": 0.088,
|
||||
"build/src/libgs2.o": 0.101,
|
||||
"build/src/libgs3.o": 0.071,
|
||||
"build/src/libgs4.o": 0.127,
|
||||
"build/src/libgs5.o": 0.085,
|
||||
"build/src/libgs6.o": 0.085,
|
||||
"build/src/libgs7.o": 0.113,
|
||||
"build/src/libgs8.o": 0.065,
|
||||
"build/src/libgte1.o": 0.1,
|
||||
"build/src/libgte10.o": 0.069,
|
||||
"build/src/libgte11.o": 0.083,
|
||||
"build/src/libgte12.o": 0.066,
|
||||
"build/src/libgte13.o": 0.077,
|
||||
"build/src/libgte14.o": 0.077,
|
||||
"build/src/libgte15.o": 0.08,
|
||||
"build/src/libgte16.o": 0.062,
|
||||
"build/src/libgte17.o": 0.178,
|
||||
"build/src/libgte18.o": 0.084,
|
||||
"build/src/libgte19.o": 0.079,
|
||||
"build/src/libgte2.o": 0.072,
|
||||
"build/src/libgte20.o": 0.085,
|
||||
"build/src/libgte21.o": 0.155,
|
||||
"build/src/libgte22.o": 0.103,
|
||||
"build/src/libgte23.o": 0.269,
|
||||
"build/src/libgte24.o": 0.091,
|
||||
"build/src/libgte25.o": 0.125,
|
||||
"build/src/libgte26.o": 0.076,
|
||||
"build/src/libgte27.o": 0.138,
|
||||
"build/src/libgte28.o": 0.078,
|
||||
"build/src/libgte29.o": 0.077,
|
||||
"build/src/libgte3.o": 0.071,
|
||||
"build/src/libgte30.o": 0.074,
|
||||
"build/src/libgte4.o": 0.087,
|
||||
"build/src/libgte5.o": 0.071,
|
||||
"build/src/libgte6.o": 0.072,
|
||||
"build/src/libgte7.o": 0.073,
|
||||
"build/src/libgte8.o": 0.09,
|
||||
"build/src/libgte9.o": 0.069,
|
||||
"build/src/libmcrd1.o": 0.095,
|
||||
"build/src/libmcrd2.o": 0.07,
|
||||
"build/src/libpad1.o": 0.07,
|
||||
"build/src/libpad2.o": 0.188,
|
||||
"build/src/sgap.o": 0.084,
|
||||
"build/src/sgap_2.o": 0.206,
|
||||
"build/src/sgap_3.o": 0.08,
|
||||
"build/src/sgap_4.o": 0.07,
|
||||
"build/src/sgap_5.o": 0.066,
|
||||
"build/src/sgap_6.o": 0.073,
|
||||
"build/src/sgap_8.o": 0.08,
|
||||
"build/src/snd1.o": 0.086,
|
||||
"build/src/snd10.o": 0.076,
|
||||
"build/src/snd11.o": 0.222,
|
||||
"build/src/snd12.o": 0.066,
|
||||
"build/src/snd2.o": 0.076,
|
||||
"build/src/snd3.o": 0.071,
|
||||
"build/src/snd4.o": 0.069,
|
||||
"build/src/snd5.o": 0.077,
|
||||
"build/src/snd6.o": 0.193,
|
||||
"build/src/snd7.o": 0.071,
|
||||
"build/src/snd8.o": 0.083,
|
||||
"build/src/snd9.o": 0.098,
|
||||
"build/src/ov_SC03_014/ov_SC03_014.o": 0.263,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.612,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.531,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.074,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.072,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.16,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.181,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.173,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.124,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.078,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.365,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.084,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.198,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.137,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.134,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.087,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.184,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.778,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.391,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.12,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.256,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.109,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.155,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.114,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.385,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.24,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.11,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.536,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.073,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.114,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.064,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.084,
|
||||
"build/src/ov_SC03_015/ov_SC03_015.o": 0.178,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.671,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.51,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.068,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.061,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.195,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.195,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.219,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.081,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.078,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.197,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.099,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.194,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.157,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.139,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.077,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.147,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.615,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.34,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.111,
|
||||
"build/src/800.o": 1.105,
|
||||
"build/src/800_b.o": 0.119,
|
||||
"build/src/800_b_2.o": 0.457,
|
||||
"build/src/800_b_o0a.o": 0.206,
|
||||
"build/src/800_c.o": 0.31,
|
||||
"build/src/800b2.o": 0.177,
|
||||
"build/src/apicard1.o": 0.393,
|
||||
"build/src/apicard2.o": 0.128,
|
||||
"build/src/apicard3.o": 0.123,
|
||||
"build/src/apicard4.o": 0.198,
|
||||
"build/src/apicard5.o": 0.29,
|
||||
"build/src/apicard6.o": 0.116,
|
||||
"build/src/apicard7.o": 0.254,
|
||||
"build/src/boot.o": 0.162,
|
||||
"build/src/gap.o": 0.13,
|
||||
"build/src/libapi1.o": 0.186,
|
||||
"build/src/libapi2.o": 0.099,
|
||||
"build/src/libc2_1.o": 0.233,
|
||||
"build/src/libc2_2.o": 0.238,
|
||||
"build/src/libcd1.o": 0.13,
|
||||
"build/src/libcd2.o": 0.214,
|
||||
"build/src/libetc.o": 0.128,
|
||||
"build/src/libgpu.o": 0.187,
|
||||
"build/src/libgpu2.o": 0.177,
|
||||
"build/src/libgs1.o": 0.171,
|
||||
"build/src/libgs2.o": 0.165,
|
||||
"build/src/libgs3.o": 0.151,
|
||||
"build/src/libgs4.o": 0.147,
|
||||
"build/src/libgs5.o": 0.163,
|
||||
"build/src/libgs6.o": 0.489,
|
||||
"build/src/libgs7.o": 0.327,
|
||||
"build/src/libgs8.o": 0.116,
|
||||
"build/src/libgte1.o": 0.143,
|
||||
"build/src/libgte10.o": 0.124,
|
||||
"build/src/libgte11.o": 0.126,
|
||||
"build/src/libgte12.o": 0.157,
|
||||
"build/src/libgte13.o": 0.204,
|
||||
"build/src/libgte14.o": 0.117,
|
||||
"build/src/libgte15.o": 0.11,
|
||||
"build/src/libgte16.o": 0.346,
|
||||
"build/src/libgte17.o": 0.345,
|
||||
"build/src/libgte18.o": 0.132,
|
||||
"build/src/libgte19.o": 0.101,
|
||||
"build/src/libgte2.o": 0.121,
|
||||
"build/src/libgte20.o": 0.374,
|
||||
"build/src/libgte21.o": 0.203,
|
||||
"build/src/libgte22.o": 0.083,
|
||||
"build/src/libgte23.o": 0.114,
|
||||
"build/src/libgte24.o": 0.112,
|
||||
"build/src/libgte25.o": 0.104,
|
||||
"build/src/libgte26.o": 0.118,
|
||||
"build/src/libgte27.o": 0.364,
|
||||
"build/src/libgte28.o": 0.15,
|
||||
"build/src/libgte29.o": 0.121,
|
||||
"build/src/libgte3.o": 0.282,
|
||||
"build/src/libgte30.o": 0.111,
|
||||
"build/src/libgte4.o": 0.093,
|
||||
"build/src/libgte5.o": 0.12,
|
||||
"build/src/libgte6.o": 0.132,
|
||||
"build/src/libgte7.o": 0.185,
|
||||
"build/src/libgte8.o": 0.127,
|
||||
"build/src/libgte9.o": 0.139,
|
||||
"build/src/libmcrd1.o": 0.249,
|
||||
"build/src/libmcrd2.o": 0.232,
|
||||
"build/src/libpad1.o": 0.148,
|
||||
"build/src/libpad2.o": 0.206,
|
||||
"build/src/sgap.o": 0.129,
|
||||
"build/src/sgap_2.o": 0.27,
|
||||
"build/src/sgap_3.o": 0.155,
|
||||
"build/src/sgap_4.o": 0.139,
|
||||
"build/src/sgap_5.o": 0.1,
|
||||
"build/src/sgap_6.o": 0.127,
|
||||
"build/src/sgap_8.o": 0.122,
|
||||
"build/src/snd1.o": 0.353,
|
||||
"build/src/snd10.o": 0.111,
|
||||
"build/src/snd11.o": 0.123,
|
||||
"build/src/snd12.o": 0.108,
|
||||
"build/src/snd2.o": 0.299,
|
||||
"build/src/snd3.o": 0.106,
|
||||
"build/src/snd4.o": 0.296,
|
||||
"build/src/snd5.o": 0.095,
|
||||
"build/src/snd6.o": 0.349,
|
||||
"build/src/snd7.o": 0.115,
|
||||
"build/src/snd8.o": 0.112,
|
||||
"build/src/snd9.o": 0.117,
|
||||
"build/src/ov_SC03_014/ov_SC03_014.o": 0.374,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.786,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.652,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.089,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.108,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.235,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.222,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.212,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.141,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.142,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.444,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.143,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.353,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.263,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.178,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.141,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.269,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.868,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.436,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.272,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.485,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.249,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.169,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.172,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.328,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.366,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.158,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.812,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.1,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.226,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.19,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.129,
|
||||
"build/src/ov_SC03_015/ov_SC03_015.o": 0.284,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_after.o": 1.148,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.523,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.081,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.077,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.218,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.221,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.312,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.28,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.11,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.229,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.103,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.271,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.142,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.129,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.359,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.227,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.819,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.384,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.131,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.334,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.078,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.122,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.087,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.308,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.245,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.076,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.325,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.101,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.114,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.148,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.1,
|
||||
"build/src/ov_SC04_011/ov_SC04_011.o": 0.162,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.645,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.448,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.063,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.065,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.231,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.175,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.21,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.104,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.141,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.341,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.082,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.209,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.121,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.09,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.079,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.124,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.466,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.282,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.122,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.221,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.12,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.142,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.142,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.138,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.621,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.079,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.081
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.268,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.223,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.099,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.26,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.321,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.085,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.571,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.141,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.109,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.134,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.235,
|
||||
"build/src/ov_SC04_011/ov_SC04_011.o": 0.313,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.727,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.503,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.062,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.086,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.275,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.188,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.155,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.111,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.081,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.208,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.113,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.298,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.116,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.098,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.095,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.2,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.564,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.34,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.119,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.265,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.076,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.146,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.163,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.156,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.916,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.097,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.122
|
||||
},
|
||||
"ok": true,
|
||||
"seconds": 3.3
|
||||
"seconds": 4.8
|
||||
}
|
||||
|
||||
@@ -1 +1,11 @@
|
||||
log: tus1 THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 49,787 sites in 15,243 bodies (2,244 distinct) · marked !FAKE 4,391 · UNMARKED 45,396
|
||||
cycle: batch tus1 committed a605e1dba — delever: batch tus1 — 300 files (TUs; 2204 drawable) · 1392 bodies: 299 lever-free, 1093 residue, 0 refused · sites removed 3342 / needed 4177 / refused 0 / deferred 0 · replays 1364 (0 disagreed) · compiles 1794 in 59 s wall · final 300/300 identical · written 300 files | check-all: 218 passed, 0 failed of 218
|
||||
log: tus2 THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 46,424 sites in 14,758 bodies (2,258 distinct) · marked !FAKE 9,393 · UNMARKED 37,031
|
||||
fatal: Unable to create '/home/musashi/bfm-decomp/.git/index.lock': File exists.
|
||||
|
||||
Another git process seems to be running in this repository, e.g.
|
||||
an editor opened by 'git commit'. Please make sure all processes
|
||||
are terminated then try again. If it still fails, a git process
|
||||
may have crashed in this repository earlier:
|
||||
remove the file manually to continue.
|
||||
cycle exit=1
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -326,7 +326,9 @@ accumulate here as the phase produces them.**
|
||||
|
||||
- **2026-09-09 — T4 batch `tus1`** (`.run/P36/delever/run_tus1.log`, `batch_tus1.json`): `delever: batch tus1 — 300 files (TUs; 2204 drawable) · 1392 bodies: 299 lever-free, 1093 residue, 0 refused · sites removed 3342 / needed 4177 / refused 0 / deferred 0 · replays 1364 (0 disagreed) · compiles 1794 in 59 s wall · final 300/300 identical · written 300 files` → R22 (`.run/P36/baseline/r22_tus1.log`) **`check-all: 218 passed, 0 failed of 218`** (`wall=157.17 s`) → census `THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 49,787 sites in 15,243 bodies (2,244 distinct) · marked !FAKE 4,391 · UNMARKED 45,396`.
|
||||
|
||||
## 🛑 SESSION CHECKPOINT — S98 (2026-09-09): T0 ☑ T1 ☑ T1b ☑ T2 ☑ T3 ☑ — all committed (T3 = `39e3e1851` tools, `cd24727dd` + `7ee458dd7` the ov_SC04_011 batches, this close); NEXT = T4 the mechanical campaign: `tools/delever_cycle.sh` over the whole population (TUs then headers), unattended, one commit per batch, R22 every batch | the number: 53,033 sites in 15,638 bodies (2,246 distinct), 310 marked, 0 orphans | last batch `tus1` on e5f59c12f: THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 49,787 sites in 15,243 bodies (2,244 distinct) · marked !FAKE 4,391 · UNMARKED 45,396
|
||||
- **2026-09-09 — T4 batch `tus2`** (`.run/P36/delever/run_tus2.log`, `batch_tus2.json`): `delever: batch tus2 — 300 files (TUs; 2483 drawable) · 2752 bodies: 495 lever-free, 2257 residue, 0 refused · sites removed 3505 / needed 5262 / refused 0 / deferred 0 · replays 1350 (0 disagreed) · compiles 5616 in 251 s wall · final 300/300 identical · written 297 files` → R22 (`.run/P36/baseline/r22_tus2.log`) **`check-all: 218 passed, 0 failed of 218`** (`wall=148.11 s`) → census `THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 46,424 sites in 14,758 bodies (2,258 distinct) · marked !FAKE 9,393 · UNMARKED 37,031`.
|
||||
|
||||
## 🛑 SESSION CHECKPOINT — S98 (2026-09-09): T0 ☑ T1 ☑ T1b ☑ T2 ☑ T3 ☑ — all committed (T3 = `39e3e1851` tools, `cd24727dd` + `7ee458dd7` the ov_SC04_011 batches, this close); NEXT = T4 the mechanical campaign: `tools/delever_cycle.sh` over the whole population (TUs then headers), unattended, one commit per batch, R22 every batch | the number: 53,033 sites in 15,638 bodies (2,246 distinct), 310 marked, 0 orphans | last batch `tus2` on a605e1dba: THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 46,424 sites in 14,758 bodies (2,258 distinct) · marked !FAKE 9,393 · UNMARKED 37,031
|
||||
|
||||
### 0. How to use this block
|
||||
A fresh session reads CLAUDE.md's load order, replays this block verbatim, confirms the effort (T4/T5/T6/T8/T9 are xHigh per the plan, Max is
|
||||
|
||||
@@ -1639,7 +1639,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017E914);
|
||||
u16 *pB = (*(u16 * *)&D_8017E910);
|
||||
u16 *pC = (*(u16 * *)&D_8017E91C);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -1647,7 +1647,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -1658,11 +1658,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -1997,10 +1997,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017E910;
|
||||
extern u16 D_80184130;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017E910;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017E910; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
|
||||
@@ -625,7 +625,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -672,7 +672,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -686,7 +686,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1017,7 +1017,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_80185B28; t1 = D_80185B29; t2 = D_80185B2A;
|
||||
@@ -1119,7 +1119,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_80185BC8, D_80185BC9, D_80185BCA, D_80185BCB, D_80185BCC, D_80185BCD, D_80185BCE, D_80185BCF, D_80185BD0;
|
||||
extern unsigned char D_80185BC8, D_80185BC9, D_80185BCA, D_80185BCB, D_80185BCC, D_80185BCD, D_80185BCE, D_80185BCF, D_80185BD0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_80185B28; v = *p; t = D_80185BC8;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1341,13 +1341,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1381,10 +1381,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801841AC;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1426,22 +1426,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s32 D_801841C4;
|
||||
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801841AC);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1456,31 +1456,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1489,17 +1489,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1508,21 +1508,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1667,9 +1667,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1688,7 +1688,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1788,7 +1788,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F734[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1836,12 +1836,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8017F720;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2012,7 +2012,7 @@ void func_8013EB7C(void) {
|
||||
extern unsigned char D_8017F6FC;
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
@@ -2139,7 +2139,7 @@ s32 func_8013EF88() {
|
||||
|
||||
unsigned short v;
|
||||
short i;
|
||||
register short *p124 __asm__("$16");
|
||||
short *p124;
|
||||
|
||||
v = D_80115118.field0;
|
||||
if (v != 0) {
|
||||
|
||||
@@ -1277,9 +1277,9 @@ extern void func_80147D38(s32 a0, s32 a1, s32 a2, s32 a3, void * a4);
|
||||
extern void func_80147E44(s32 a0, s32 a1, s32 a2, s32 a3);
|
||||
extern void func_80147F78(s32 arg0, s32 arg1, s32 arg2, s32 arg3);
|
||||
extern void func_80147F50(s32 arg0);
|
||||
extern volatile s32 D_80127090;
|
||||
extern volatile s32 D_80127094;
|
||||
extern volatile s32 D_80127098;
|
||||
extern s32 D_80127090;
|
||||
extern s32 D_80127094;
|
||||
extern s32 D_80127098;
|
||||
extern void func_80147F78(s32 a0, s32 a1, s32 a2, s32 a3);
|
||||
extern void func_80148038(s32 a0, s32 a1);
|
||||
extern s32 csqrt(s32 a0);
|
||||
@@ -3701,8 +3701,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80180BE0;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -3856,8 +3856,8 @@ void func_8015D380(s32 a0) {
|
||||
extern s32 D_80180C4C;
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -4013,7 +4013,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -4925,7 +4925,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -5809,7 +5809,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801842A0[0] = p;
|
||||
func_80024054(&D_80180E88, &D_801842AC);
|
||||
func_8001CE28(p, &D_801842AC);
|
||||
@@ -5820,7 +5820,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801842A0[1] = p;
|
||||
func_80024054(&D_80180EA8, &D_801842D4);
|
||||
func_8001CE28(p, &D_801842D4);
|
||||
@@ -5831,7 +5831,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801842A0[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801842EC, 0x84);
|
||||
func_8001CE68(p, &D_801842EC);
|
||||
@@ -5890,9 +5890,9 @@ s32 func_801621CC(s32 arg0) {
|
||||
extern u8 D_80078EB0;
|
||||
extern u8 D_80078EB1;
|
||||
extern s32 D_80180EBC;
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -6024,14 +6024,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801842F8[0] = (s32)item;
|
||||
func_80024054(D_80180EEC, D_80184304);
|
||||
@@ -6042,7 +6042,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801842F8[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80180F04), D_8018432C);
|
||||
@@ -6053,7 +6053,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801842F8[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_80184348, 0x84);
|
||||
@@ -6132,10 +6132,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80180F24[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -6361,7 +6361,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -6645,9 +6645,9 @@ void func_80164BDC(s32 param_1)
|
||||
extern u8 D_8018435D;
|
||||
extern u8 D_8018435E;
|
||||
extern u8 D_8018435F;
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -6807,9 +6807,9 @@ void func_801651B8(void * param_1)
|
||||
{
|
||||
|
||||
extern s32 D_80184398;
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -6818,7 +6818,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -7225,7 +7225,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = aD800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -7311,7 +7311,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -7461,18 +7460,18 @@ void func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_80184418[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -7539,17 +7538,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -7567,12 +7566,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80181284;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -7642,10 +7641,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80181298;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -7744,8 +7743,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -8111,7 +8110,7 @@ void func_80168828(void)
|
||||
extern void func_800173BC(void *a0, void *a1);
|
||||
extern u16 D_80181364[];
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -8119,7 +8118,7 @@ void func_80168828(void)
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -8210,8 +8209,8 @@ void func_80168BDC(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
short mtx[16];
|
||||
short vec[4];
|
||||
int r;
|
||||
register int i __asm__("$17"); /* loop counter, survives the call -> $s1 */
|
||||
register int tmp __asm__("$2"); /* increment temp -> $v0 (the split-IV) */
|
||||
int i; /* loop counter, survives the call -> $s1 */
|
||||
int tmp; /* increment temp -> $v0 (the split-IV) */
|
||||
func_800D2318();
|
||||
vec[0] = *(short *)(param_1 + 0x12);
|
||||
vec[1] = *(short *)(param_1 + 0x16);
|
||||
@@ -8244,7 +8243,7 @@ void func_80168BDC(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
}
|
||||
tmp = i + 1;
|
||||
i = tmp;
|
||||
__asm__ __volatile__("" : "=r"(i) : "0"(i));
|
||||
__asm__ __volatile__("" : "=r"(i) : "0"(i)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
} while ((short)tmp < (short)param_4);
|
||||
}
|
||||
}
|
||||
@@ -8268,8 +8267,8 @@ void func_80168D94(int a0) {
|
||||
short v10[4]; /* sp+0x10 SVECTOR */
|
||||
short v18[16]; /* sp+0x18 MATRIX_L48 */
|
||||
short v38[16]; /* sp+0x38 MATRIX_L48 */
|
||||
register int v1 __asm__("$3");
|
||||
register int v0 __asm__("$2");
|
||||
int v1;
|
||||
register int v0 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
v10[0] = *(unsigned short *)(s1 + 0x12);
|
||||
v10[1] = *(unsigned short *)(s1 + 0x16);
|
||||
v10[2] = *(unsigned short *)(s1 + 0x1A);
|
||||
@@ -8278,7 +8277,7 @@ void func_80168D94(int a0) {
|
||||
v0 = rand();
|
||||
v1 = (v0 & 0x7F) << 3;
|
||||
v0 = (int)((unsigned int)(v0 & 0x7F00) >> 5);
|
||||
__asm__("" : "=r"(v0) : "0"(v0));
|
||||
__asm__("" : "=r"(v0) : "0"(v0)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
v0 += 0xC00;
|
||||
} else {
|
||||
v0 = rand();
|
||||
@@ -8287,7 +8286,7 @@ void func_80168D94(int a0) {
|
||||
}
|
||||
v10[0] = v1;
|
||||
v10[1] = v0;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
v10[2] = 0;
|
||||
RotMatrixYXZ(v10, v18);
|
||||
func_80048EAC(v38, v18);
|
||||
@@ -8296,9 +8295,9 @@ void func_80168D94(int a0) {
|
||||
v10[2] = 0x24;
|
||||
((void (*)(void *, void *, void *))ApplyMatrixSV)(v18, v10, v10);
|
||||
{
|
||||
register s32 a __asm__("$4") = *(unsigned short *)(s1 + 0x6);
|
||||
register s32 b __asm__("$5") = *(unsigned short *)(s1 + 0xA);
|
||||
register s32 c __asm__("$3") = *(unsigned short *)(s1 + 0xE);
|
||||
register s32 a __asm__("$4") = *(unsigned short *)(s1 + 0x6); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 b = *(unsigned short *)(s1 + 0xA);
|
||||
register s32 c __asm__("$3") = *(unsigned short *)(s1 + 0xE); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(unsigned short *)(s1 + 0x12) = v10[0];
|
||||
*(unsigned short *)(s1 + 0x16) = v10[1];
|
||||
{
|
||||
@@ -8391,8 +8390,8 @@ void func_80169058(s32 a0) {
|
||||
s16 v18[4]; /* sp+0x18 SVECTOR */
|
||||
s16 v20[16]; /* sp+0x20 MATRIX_L48 */
|
||||
s16 v40[16]; /* sp+0x40 MATRIX_L48 */
|
||||
register s32 v1 __asm__("$3");
|
||||
register s32 v0 __asm__("$2");
|
||||
s32 v1;
|
||||
register s32 v0 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
v10[0] = *(u16 *)(s1 + 0x6);
|
||||
v10[1] = *(u16 *)(s1 + 0xA);
|
||||
v10[2] = *(u16 *)(s1 + 0xE);
|
||||
@@ -8407,7 +8406,7 @@ void func_80169058(s32 a0) {
|
||||
v0 = rand();
|
||||
v1 = (v0 & 0x7F) << 3;
|
||||
v0 = ((u32)(v0 & 0x7F00)) >> 5;
|
||||
__asm__ __volatile__("" : "=r"(v0) : "0"(v0));
|
||||
__asm__ __volatile__("" : "=r"(v0) : "0"(v0)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
v0 = v0 + 0xC00;
|
||||
} else {
|
||||
v0 = rand();
|
||||
@@ -8416,7 +8415,7 @@ void func_80169058(s32 a0) {
|
||||
}
|
||||
v10[0] = v1;
|
||||
v10[1] = v0;
|
||||
__asm__ __volatile__("" : : "r"(v1), "r"(v0));
|
||||
__asm__ __volatile__("" : : "r"(v1), "r"(v0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
v10[2] = 0;
|
||||
RotMatrixYXZ(v10, v20);
|
||||
func_80048EAC(v40, v20);
|
||||
@@ -8459,8 +8458,8 @@ extern void func_800D20C0(void *a0, void *a1, s32 a2);
|
||||
extern void func_800D23D0(void *a0);
|
||||
extern void func_80169584(s32 param_1);
|
||||
void func_80169408(s32 a0) {
|
||||
register s32 s2 __asm__("$18") = a0;
|
||||
register s32 s1 __asm__("$17");
|
||||
register s32 s2 __asm__("$18") = a0; // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 s1;
|
||||
s16 v10[4]; /* sp+0x10 SVECTOR */
|
||||
s16 out[4]; /* sp+0x18 SVECTOR */
|
||||
s16 m[32]; /* sp+0x20 MATRIX_L48 (+ trailing reserve to 0x60 — matches target frame) */
|
||||
@@ -8754,8 +8753,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2527,7 +2527,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017F19C);
|
||||
u16 *pB = (*(u16 * *)&D_8017F198);
|
||||
u16 *pC = (*(u16 * *)&D_8017F1A4);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2535,7 +2535,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2546,11 +2546,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2699,7 +2699,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2883,10 +2883,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017F198;
|
||||
extern u16 D_801A4458;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017F198;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017F198; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3077,8 +3077,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3229,22 +3229,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8017F198;
|
||||
extern u8 D_8017F19C;
|
||||
extern u8 D_8017F1A4;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8017F19C);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8017F198); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8017F1A4); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801A4448;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A4458 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8017F1A0);
|
||||
|
||||
@@ -641,7 +641,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -688,7 +688,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -702,7 +702,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1057,7 +1057,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801A5790; t1 = D_801A5791; t2 = D_801A5792;
|
||||
@@ -1156,7 +1156,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801A5830, D_801A5831, D_801A5832, D_801A5833, D_801A5834, D_801A5835, D_801A5836, D_801A5837, D_801A5838;
|
||||
extern unsigned char D_801A5830, D_801A5831, D_801A5832, D_801A5833, D_801A5834, D_801A5835, D_801A5836, D_801A5837, D_801A5838;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801A5790; v = *p; t = D_801A5830;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1376,13 +1376,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1415,10 +1415,10 @@ extern void func_800599B8(u16*);
|
||||
|
||||
void func_8013D8FC(void)
|
||||
{
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1466,22 +1466,22 @@ extern void func_800599B8(u16 *);
|
||||
void func_8013D9B0(int param_1)
|
||||
{
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801A44D4);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1496,31 +1496,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1529,17 +1529,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1548,21 +1548,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1703,9 +1703,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1724,7 +1724,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1811,7 +1811,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017FFBC[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1857,12 +1857,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8017FFA8;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2019,7 +2019,7 @@ extern unsigned char D_8017FF84;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80180008[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1534,7 +1534,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8018002C[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8018002C[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1553,8 +1553,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1590,7 +1590,7 @@ extern s32 D_80180020;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1845,8 +1845,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_8018022C[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1888,8 +1888,8 @@ extern unsigned char D_801802AC[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1938,7 +1938,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801A3BC0, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2107,8 +2107,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_80180564[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_80180564[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2288,8 +2288,8 @@ extern u8 D_80180554;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2330,9 +2330,9 @@ extern u8 D_80180590;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1644,8 +1644,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80181468;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1797,8 +1797,8 @@ extern s32 D_801814D4;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1949,7 +1949,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2804,7 +2804,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3612,7 +3612,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A45C8[0] = p;
|
||||
func_80024054(&D_80181710, &D_801A45D4);
|
||||
func_8001CE28(p, &D_801A45D4);
|
||||
@@ -3623,7 +3623,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A45C8[1] = p;
|
||||
func_80024054(&D_80181730, &D_801A45FC);
|
||||
func_8001CE28(p, &D_801A45FC);
|
||||
@@ -3634,7 +3634,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A45C8[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801A4614, 0x84);
|
||||
func_8001CE68(p, &D_801A4614);
|
||||
@@ -3690,9 +3690,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80181744;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3828,14 +3828,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801A4620[0] = (s32)item;
|
||||
func_80024054(D_80181774, D_801A462C);
|
||||
@@ -3846,7 +3846,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801A4620[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_8018178C), D_801A4654);
|
||||
@@ -3857,7 +3857,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801A4620[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801A4670, 0x84);
|
||||
@@ -3932,10 +3932,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_801817AC[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4115,7 +4115,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4381,9 +4381,9 @@ extern u8 D_801A4687;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4529,9 +4529,9 @@ extern s32 D_801A46C0;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4540,7 +4540,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4877,7 +4877,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4963,7 +4963,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5113,18 +5112,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
{
|
||||
extern unsigned char D_801A4740[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5173,17 +5172,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5201,12 +5200,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80181B0C;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5276,10 +5275,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80181B20;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5373,8 +5372,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5652,7 +5651,7 @@ void func_80168828()
|
||||
extern u16 D_80181BEC[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5660,7 +5659,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5965,8 +5964,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2527,7 +2527,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80183DEC);
|
||||
u16 *pB = (*(u16 * *)&D_80183DE8);
|
||||
u16 *pC = (*(u16 * *)&D_80183DF4);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2535,7 +2535,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2546,11 +2546,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2699,7 +2699,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2883,10 +2883,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80183DE8;
|
||||
extern u16 D_801EC6E8;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80183DE8;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80183DE8; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3077,8 +3077,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3229,22 +3229,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80183DE8;
|
||||
extern u8 D_80183DEC;
|
||||
extern u8 D_80183DF4;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80183DEC);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80183DE8); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80183DF4); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801EC6D8;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EC6E8 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80183DF0);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1058,7 +1058,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801F3070; t1 = D_801F3071; t2 = D_801F3072;
|
||||
@@ -1157,7 +1157,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801F3110, D_801F3111, D_801F3112, D_801F3113, D_801F3114, D_801F3115, D_801F3116, D_801F3117, D_801F3118;
|
||||
extern unsigned char D_801F3110, D_801F3111, D_801F3112, D_801F3113, D_801F3114, D_801F3115, D_801F3116, D_801F3117, D_801F3118;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801F3070; v = *p; t = D_801F3110;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1377,13 +1377,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1418,10 +1418,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801EC764;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1462,22 +1462,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801EC764;
|
||||
extern s32 D_801EC77C;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801EC764);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1492,31 +1492,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1525,17 +1525,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1544,21 +1544,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1699,9 +1699,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1720,7 +1720,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1808,7 +1808,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80184C0C[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1854,12 +1854,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80184BF8;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2016,7 +2016,7 @@ extern unsigned char D_80184BD4;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80184C58[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1554,7 +1554,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80184C7C[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80184C7C[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1573,8 +1573,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1610,7 +1610,7 @@ extern s32 D_80184C70;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1856,8 +1856,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80184E7C[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1899,8 +1899,8 @@ extern unsigned char D_80184EFC[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1949,7 +1949,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801EBC98, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2118,8 +2118,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_801851B4[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_801851B4[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2299,8 +2299,8 @@ extern u8 D_801851A4;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2341,9 +2341,9 @@ extern u8 D_801851E0;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_801860B8;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80186124;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2801,7 +2801,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3609,7 +3609,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EC858[0] = p;
|
||||
func_80024054(&D_80186360, &D_801EC864);
|
||||
func_8001CE28(p, &D_801EC864);
|
||||
@@ -3620,7 +3620,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EC858[1] = p;
|
||||
func_80024054(&D_80186380, &D_801EC88C);
|
||||
func_8001CE28(p, &D_801EC88C);
|
||||
@@ -3631,7 +3631,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EC858[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801EC8A4, 0x84);
|
||||
func_8001CE68(p, &D_801EC8A4);
|
||||
@@ -3687,9 +3687,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80186394;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3825,14 +3825,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EC8B0[0] = (s32)item;
|
||||
func_80024054(D_801863C4, D_801EC8BC);
|
||||
@@ -3843,7 +3843,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EC8B0[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_801863DC), D_801EC8E4);
|
||||
@@ -3854,7 +3854,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EC8B0[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801EC900, 0x84);
|
||||
@@ -3929,10 +3929,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_801863FC[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4112,7 +4112,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4378,9 +4378,9 @@ extern u8 D_801EC917;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4526,9 +4526,9 @@ extern s32 D_801EC950;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4537,7 +4537,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4868,7 +4868,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4954,7 +4954,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5108,18 +5107,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801EC9D0[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5168,17 +5167,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5196,12 +5195,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018675C;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5271,10 +5270,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80186770;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5368,8 +5367,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5648,7 +5647,7 @@ void func_80168828()
|
||||
extern u16 D_8018683C[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5656,7 +5655,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5961,8 +5960,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017F7B0);
|
||||
u16 *pB = (*(u16 * *)&D_8017F7AC);
|
||||
u16 *pC = (*(u16 * *)&D_8017F7B8);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017F7AC;
|
||||
extern u16 D_8018EE50;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017F7AC;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017F7AC; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8017F7AC;
|
||||
extern u8 D_8017F7B0;
|
||||
extern u8 D_8017F7B8;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8017F7B0);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8017F7AC); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8017F7B8); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_8018EE40;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018EE50 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8017F7B4);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1058,7 +1058,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_80190278; t1 = D_80190279; t2 = D_8019027A;
|
||||
@@ -1158,7 +1158,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_80190318, D_80190319, D_8019031A, D_8019031B, D_8019031C, D_8019031D, D_8019031E, D_8019031F, D_80190320;
|
||||
extern unsigned char D_80190318, D_80190319, D_8019031A, D_8019031B, D_8019031C, D_8019031D, D_8019031E, D_8019031F, D_80190320;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_80190278; v = *p; t = D_80190318;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1378,13 +1378,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1419,10 +1419,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_8018EECC;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1463,22 +1463,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_8018EECC;
|
||||
extern s32 D_8018EEE4;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_8018EECC);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1493,31 +1493,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1526,17 +1526,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1545,21 +1545,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1700,9 +1700,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1721,7 +1721,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1809,7 +1809,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_801805D0[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1855,12 +1855,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_801805BC;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2017,7 +2017,7 @@ extern unsigned char D_80180598;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018061C[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1538,7 +1538,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80180640[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80180640[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1557,8 +1557,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1594,7 +1594,7 @@ extern s32 D_80180634;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1840,8 +1840,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80180840[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1883,8 +1883,8 @@ extern unsigned char D_801808C0[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1933,7 +1933,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_8018E078, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2102,8 +2102,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_80180B78[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_80180B78[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2283,8 +2283,8 @@ extern u8 D_80180B68;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2325,9 +2325,9 @@ extern u8 D_80180BA4;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80181A7C;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80181AE8;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018EFC0[0] = p;
|
||||
func_80024054(&D_80181D24, &D_8018EFCC);
|
||||
func_8001CE28(p, &D_8018EFCC);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018EFC0[1] = p;
|
||||
func_80024054(&D_80181D44, &D_8018EFF4);
|
||||
func_8001CE28(p, &D_8018EFF4);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018EFC0[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_8018F00C, 0x84);
|
||||
func_8001CE68(p, &D_8018F00C);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80181D58;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8018F018[0] = (s32)item;
|
||||
func_80024054(D_80181D88, D_8018F024);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8018F018[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80181DA0), D_8018F04C);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8018F018[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_8018F068, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80181DC0[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_8018F07F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_8018F0B8;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_8018F138[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80182120;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80182134;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_80182200[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2520,7 +2520,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80182944);
|
||||
u16 *pB = (*(u16 * *)&D_80182940);
|
||||
u16 *pC = (*(u16 * *)&D_8018294C);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2539,11 +2539,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2692,7 +2692,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2876,10 +2876,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80182940;
|
||||
extern u16 D_801CC5B0;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80182940;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80182940; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3070,8 +3070,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3222,22 +3222,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80182940;
|
||||
extern u8 D_80182944;
|
||||
extern u8 D_8018294C;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80182944);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80182940); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8018294C); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801CC5A0;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801CC5B0 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80182948);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1057,7 +1057,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801CDED8; t1 = D_801CDED9; t2 = D_801CDEDA;
|
||||
@@ -1157,7 +1157,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801CDF78, D_801CDF79, D_801CDF7A, D_801CDF7B, D_801CDF7C, D_801CDF7D, D_801CDF7E, D_801CDF7F, D_801CDF80;
|
||||
extern unsigned char D_801CDF78, D_801CDF79, D_801CDF7A, D_801CDF7B, D_801CDF7C, D_801CDF7D, D_801CDF7E, D_801CDF7F, D_801CDF80;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801CDED8; v = *p; t = D_801CDF78;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1377,13 +1377,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1418,10 +1418,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801CC62C;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1462,22 +1462,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801CC62C;
|
||||
extern s32 D_801CC644;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801CC62C);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1492,31 +1492,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1525,17 +1525,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1544,21 +1544,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1699,9 +1699,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1720,7 +1720,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1808,7 +1808,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80183764[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1854,12 +1854,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80183750;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2016,7 +2016,7 @@ extern unsigned char D_8018372C;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_801837B0[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1538,7 +1538,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_801837D4[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_801837D4[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1557,8 +1557,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1594,7 +1594,7 @@ extern s32 D_801837C8;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1840,8 +1840,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_801839D4[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1883,8 +1883,8 @@ extern unsigned char D_80183A54[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1933,7 +1933,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801CB7D8, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2102,8 +2102,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_80183D0C[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_80183D0C[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2283,8 +2283,8 @@ extern u8 D_80183CFC;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2325,9 +2325,9 @@ extern u8 D_80183D38;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80184C10;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80184C7C;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801CC720[0] = p;
|
||||
func_80024054(&D_80184EB8, &D_801CC72C);
|
||||
func_8001CE28(p, &D_801CC72C);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801CC720[1] = p;
|
||||
func_80024054(&D_80184ED8, &D_801CC754);
|
||||
func_8001CE28(p, &D_801CC754);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801CC720[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801CC76C, 0x84);
|
||||
func_8001CE68(p, &D_801CC76C);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80184EEC;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801CC778[0] = (s32)item;
|
||||
func_80024054(D_80184F1C, D_801CC784);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801CC778[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80184F34), D_801CC7AC);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801CC778[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801CC7C8, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80184F54[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801CC7DF;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801CC818;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801CC898[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_801852B4;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_801852C8;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_80185394[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017FD24);
|
||||
u16 *pB = (*(u16 * *)&D_8017FD20);
|
||||
u16 *pC = (*(u16 * *)&D_8017FD2C);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017FD20;
|
||||
extern u16 D_801A2060;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017FD20;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017FD20; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8017FD20;
|
||||
extern u8 D_8017FD24;
|
||||
extern u8 D_8017FD2C;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8017FD24);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8017FD20); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8017FD2C); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801A2050;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A2060 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8017FD28);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1058,7 +1058,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801A3488; t1 = D_801A3489; t2 = D_801A348A;
|
||||
@@ -1158,7 +1158,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801A3528, D_801A3529, D_801A352A, D_801A352B, D_801A352C, D_801A352D, D_801A352E, D_801A352F, D_801A3530;
|
||||
extern unsigned char D_801A3528, D_801A3529, D_801A352A, D_801A352B, D_801A352C, D_801A352D, D_801A352E, D_801A352F, D_801A3530;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801A3488; v = *p; t = D_801A3528;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1378,13 +1378,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1419,10 +1419,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801A20DC;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1463,22 +1463,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801A20DC;
|
||||
extern s32 D_801A20F4;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801A20DC);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1493,31 +1493,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1526,17 +1526,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1545,21 +1545,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1700,9 +1700,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1721,7 +1721,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1809,7 +1809,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80180B44[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1855,12 +1855,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80180B30;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2017,7 +2017,7 @@ extern unsigned char D_80180B0C;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80180B90[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1538,7 +1538,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80180BB4[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80180BB4[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1557,8 +1557,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1594,7 +1594,7 @@ extern s32 D_80180BA8;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1840,8 +1840,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80180DB4[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1883,8 +1883,8 @@ extern unsigned char D_80180E34[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1933,7 +1933,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801A1288, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2102,8 +2102,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_801810EC[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_801810EC[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2283,8 +2283,8 @@ extern u8 D_801810DC;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2325,9 +2325,9 @@ extern u8 D_80181118;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80181FF0;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_8018205C;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A21D0[0] = p;
|
||||
func_80024054(&D_80182298, &D_801A21DC);
|
||||
func_8001CE28(p, &D_801A21DC);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A21D0[1] = p;
|
||||
func_80024054(&D_801822B8, &D_801A2204);
|
||||
func_8001CE28(p, &D_801A2204);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801A21D0[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801A221C, 0x84);
|
||||
func_8001CE68(p, &D_801A221C);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_801822CC;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801A2228[0] = (s32)item;
|
||||
func_80024054(D_801822FC, D_801A2234);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801A2228[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80182314), D_801A225C);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801A2228[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801A2278, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80182334[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801A228F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801A22C8;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801A2348[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80182694;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_801826A8;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_80182774[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80182F0C);
|
||||
u16 *pB = (*(u16 * *)&D_80182F08);
|
||||
u16 *pC = (*(u16 * *)&D_80182F14);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80182F08;
|
||||
extern u16 D_801F1EC0;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80182F08;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80182F08; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80182F08;
|
||||
extern u8 D_80182F0C;
|
||||
extern u8 D_80182F14;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80182F0C);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80182F08); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80182F14); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801F1EB0;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801F1EC0 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80182F10);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1058,7 +1058,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801F3308; t1 = D_801F3309; t2 = D_801F330A;
|
||||
@@ -1158,7 +1158,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801F33A8, D_801F33A9, D_801F33AA, D_801F33AB, D_801F33AC, D_801F33AD, D_801F33AE, D_801F33AF, D_801F33B0;
|
||||
extern unsigned char D_801F33A8, D_801F33A9, D_801F33AA, D_801F33AB, D_801F33AC, D_801F33AD, D_801F33AE, D_801F33AF, D_801F33B0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801F3308; v = *p; t = D_801F33A8;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1378,13 +1378,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1419,10 +1419,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801F1F3C;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1463,22 +1463,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801F1F3C;
|
||||
extern s32 D_801F1F54;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801F1F3C);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1493,31 +1493,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1526,17 +1526,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1545,21 +1545,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1700,9 +1700,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1721,7 +1721,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1809,7 +1809,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80183D2C[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1855,12 +1855,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80183D18;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2017,7 +2017,7 @@ extern unsigned char D_80183CF4;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80183D78[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1538,7 +1538,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80183D9C[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80183D9C[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1557,8 +1557,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1594,7 +1594,7 @@ extern s32 D_80183D90;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1840,8 +1840,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80183F9C[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1883,8 +1883,8 @@ extern unsigned char D_8018401C[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1933,7 +1933,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801F104C, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2102,8 +2102,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_801842D4[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_801842D4[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2283,8 +2283,8 @@ extern u8 D_801842C4;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2325,9 +2325,9 @@ extern u8 D_80184300;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_801851D8;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80185244;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801F2030[0] = p;
|
||||
func_80024054(&D_80185480, &D_801F203C);
|
||||
func_8001CE28(p, &D_801F203C);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801F2030[1] = p;
|
||||
func_80024054(&D_801854A0, &D_801F2064);
|
||||
func_8001CE28(p, &D_801F2064);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801F2030[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801F207C, 0x84);
|
||||
func_8001CE68(p, &D_801F207C);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_801854B4;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801F2088[0] = (s32)item;
|
||||
func_80024054(D_801854E4, D_801F2094);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801F2088[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_801854FC), D_801F20BC);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801F2088[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801F20D8, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_8018551C[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801F20EF;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801F2128;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801F21A8[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018587C;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80185890;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_8018595C[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017EB8C);
|
||||
u16 *pB = (*(u16 * *)&D_8017EB88);
|
||||
u16 *pC = (*(u16 * *)&D_8017EB94);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017EB88;
|
||||
extern u16 D_8019A940;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017EB88;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017EB88; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8017EB88;
|
||||
extern u8 D_8017EB8C;
|
||||
extern u8 D_8017EB94;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8017EB8C);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8017EB88); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8017EB94); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_8019A930;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8019A940 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8017EB90);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_8019BC18; t1 = D_8019BC19; t2 = D_8019BC1A;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_8019BCB8, D_8019BCB9, D_8019BCBA, D_8019BCBB, D_8019BCBC, D_8019BCBD, D_8019BCBE, D_8019BCBF, D_8019BCC0;
|
||||
extern unsigned char D_8019BCB8, D_8019BCB9, D_8019BCBA, D_8019BCBB, D_8019BCBC, D_8019BCBD, D_8019BCBE, D_8019BCBF, D_8019BCC0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_8019BC18; v = *p; t = D_8019BCB8;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_8019A9BC;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_8019A9BC;
|
||||
extern s32 D_8019A9D4;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_8019A9BC);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F9AC[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8017F998;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_8017F974;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F9F8[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1539,7 +1539,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8017FA1C[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8017FA1C[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1558,8 +1558,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1595,7 +1595,7 @@ extern s32 D_8017FA10;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1841,8 +1841,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_8017FC1C[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1884,8 +1884,8 @@ extern unsigned char D_8017FC9C[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1934,7 +1934,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_8019A0DC, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2103,8 +2103,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8017FF54[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8017FF54[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2284,8 +2284,8 @@ extern u8 D_8017FF44;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2326,9 +2326,9 @@ extern u8 D_8017FF80;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80180E58;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80180EC4;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8019AAB0[0] = p;
|
||||
func_80024054(&D_80181100, &D_8019AABC);
|
||||
func_8001CE28(p, &D_8019AABC);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8019AAB0[1] = p;
|
||||
func_80024054(&D_80181120, &D_8019AAE4);
|
||||
func_8001CE28(p, &D_8019AAE4);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8019AAB0[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_8019AAFC, 0x84);
|
||||
func_8001CE68(p, &D_8019AAFC);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80181134;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8019AB08[0] = (s32)item;
|
||||
func_80024054(D_80181164, D_8019AB14);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8019AB08[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_8018117C), D_8019AB3C);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8019AB08[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_8019AB58, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_8018119C[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_8019AB6F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_8019ABA8;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_8019AC28[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_801814FC;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80181510;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_801815DC[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -296,7 +296,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801DA9B8; t1 = D_801DA9B9; t2 = D_801DA9BA;
|
||||
@@ -376,7 +376,7 @@ extern unsigned char D_801DAA78, D_801DAA79, D_801DAA7A, D_801DAA7B, D_801DAA7C,
|
||||
|
||||
void func_8013D178(void) {
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801DA9B8; v = *p; t = D_801DAA78;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -589,13 +589,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -626,10 +626,10 @@ extern void func_800599B8(s32 a0, s32 a1);
|
||||
|
||||
void func_8013D8FC(void)
|
||||
{
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -675,22 +675,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s32 D_801D9594;
|
||||
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801D957C);
|
||||
if (psVar15 != 0) {
|
||||
@@ -705,31 +705,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -738,17 +738,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -757,21 +757,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -911,9 +911,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_c2 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -932,7 +932,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1062,7 +1062,7 @@ extern void (*D_80187ED0[])(void);
|
||||
|
||||
void func_8013E5E8(void)
|
||||
{
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1106,12 +1106,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80187EBC;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -1265,7 +1265,7 @@ extern unsigned char D_80187E98;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
@@ -1383,7 +1383,7 @@ s32 func_8013EF88() {
|
||||
|
||||
unsigned short v;
|
||||
short i;
|
||||
register short *p124 __asm__("$16");
|
||||
short *p124;
|
||||
|
||||
v = D_80115118.field0;
|
||||
if (v != 0) {
|
||||
@@ -1527,7 +1527,7 @@ extern void func_801407F4(void);
|
||||
extern s32 func_801416D4(s16); /* macro-canonical redecl (§8e) */
|
||||
|
||||
s32 func_8013F350(void) {
|
||||
register u16 *pd __asm__("$5") = &D_8011511C;
|
||||
register u16 *pd __asm__("$5") = &D_8011511C; // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *ps;
|
||||
u16 *pf;
|
||||
u16 *pg;
|
||||
@@ -1537,17 +1537,17 @@ s32 func_8013F350(void) {
|
||||
u8 *pmax;
|
||||
u8 *p2e;
|
||||
u8 *p3e;
|
||||
register s32 off __asm__("$4");
|
||||
register s32 off __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s16 i;
|
||||
s32 r;
|
||||
s16 rs;
|
||||
s16 d;
|
||||
u8 b;
|
||||
register u8 bb __asm__("$4");
|
||||
u8 bb;
|
||||
u8 m;
|
||||
s32 chg;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(pd) : "0"(pd));
|
||||
__asm__ __volatile__("" : "=r"(pd) : "0"(pd)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pad = *pd;
|
||||
chg = 0;
|
||||
if (pad != 0) {
|
||||
@@ -1823,7 +1823,7 @@ void func_8013FAF8(s16 arg0, s16 arg1) {
|
||||
s32 t;
|
||||
s16 *pp;
|
||||
s32 flag2;
|
||||
register s32 flag3 __asm__("$18");
|
||||
register s32 flag3 __asm__("$18"); // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
func_80140E6C();
|
||||
func_80140F00();
|
||||
@@ -2283,14 +2283,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -2370,7 +2370,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -2381,13 +2381,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2690,7 +2690,7 @@ extern u16 D_80115116;
|
||||
extern void (*D_80187F1C[])(void);
|
||||
|
||||
void func_80141874(void) {
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -2852,7 +2852,7 @@ extern void func_8012C218(void *a0);
|
||||
void func_801424E4(short *param_1) {
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80187F40[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -2871,8 +2871,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -2904,7 +2904,7 @@ extern s32 D_80187F34;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -3135,8 +3135,8 @@ extern void func_80142B2C(void *arg0);
|
||||
extern s32 D_80188140[];
|
||||
|
||||
void func_80142EC0(s32 param_1) {
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -3176,8 +3176,8 @@ extern unsigned char D_801881C0[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -3223,7 +3223,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801D891C, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -3388,8 +3388,8 @@ extern s32 func_8012BEE8(s32 a0);
|
||||
extern void func_8012C218(void *a0);
|
||||
|
||||
void func_80143D28(s32 param_1) {
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_80188478[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -3565,8 +3565,8 @@ extern u8 D_80188468;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -3609,9 +3609,9 @@ extern u8 D_801884A4;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -2788,7 +2788,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_801870B0);
|
||||
u16 *pB = (*(u16 * *)&D_801870AC);
|
||||
u16 *pC = (*(u16 * *)&D_801870B8);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2796,7 +2796,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2807,11 +2807,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -3002,7 +3002,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -3180,10 +3180,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_801870AC;
|
||||
extern u16 D_801D9500;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_801870AC;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_801870AC; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3370,8 +3370,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
|
||||
@@ -689,7 +689,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -736,7 +736,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -750,7 +750,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1711,8 +1711,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_8018937C;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1893,8 +1893,8 @@ extern s32 D_801893E8;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -2037,7 +2037,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2940,7 +2940,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3791,7 +3791,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801D9670[0] = p;
|
||||
func_80024054(&D_80189624, &D_801D967C);
|
||||
func_8001CE28(p, &D_801D967C);
|
||||
@@ -3802,7 +3802,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801D9670[1] = p;
|
||||
func_80024054(&D_80189644, &D_801D96A4);
|
||||
func_8001CE28(p, &D_801D96A4);
|
||||
@@ -3813,7 +3813,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801D9670[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801D96BC, 0x84);
|
||||
func_8001CE68(p, &D_801D96BC);
|
||||
@@ -3869,9 +3869,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80189658;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -4001,14 +4001,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801D96C8[0] = (s32)item;
|
||||
func_80024054(D_80189688, D_801D96D4);
|
||||
@@ -4019,7 +4019,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801D96C8[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_801896A0), D_801D96FC);
|
||||
@@ -4030,7 +4030,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801D96C8[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801D9718, 0x84);
|
||||
@@ -4100,10 +4100,10 @@ extern void (*D_801896C0[])(void); /* word-stride table of dispatch fn pointer
|
||||
|
||||
void func_801627E8(void)
|
||||
{
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4372,7 +4372,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4637,9 +4637,9 @@ extern u8 D_801D972F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4777,9 +4777,9 @@ extern s32 D_801D9768;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4788,7 +4788,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -5108,7 +5108,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -5194,7 +5194,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5341,18 +5340,18 @@ void func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
{
|
||||
extern unsigned char D_801D97E8[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5397,17 +5396,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5425,12 +5424,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80189A20;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5500,10 +5499,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80189A34;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5609,8 +5608,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5901,7 +5900,7 @@ void func_80168828(void)
|
||||
extern void func_800173BC(void *a0, void *a1);
|
||||
extern u16 D_80189B00[];
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5909,7 +5908,7 @@ void func_80168828(void)
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -6248,8 +6247,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80183AEC);
|
||||
u16 *pB = (*(u16 * *)&D_80183AE8);
|
||||
u16 *pC = (*(u16 * *)&D_80183AF4);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80183AE8;
|
||||
extern u16 D_801C4770;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80183AE8;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80183AE8; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80183AE8;
|
||||
extern u8 D_80183AEC;
|
||||
extern u8 D_80183AF4;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80183AEC);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80183AE8); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80183AF4); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801C4760;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C4770 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80183AF0);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801C75F0; t1 = D_801C75F1; t2 = D_801C75F2;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801C7E98, D_801C7E99, D_801C7E9A, D_801C7E9B, D_801C7E9C, D_801C7E9D, D_801C7E9E, D_801C7E9F, D_801C7EA0;
|
||||
extern unsigned char D_801C7E98, D_801C7E99, D_801C7E9A, D_801C7E9B, D_801C7E9C, D_801C7E9D, D_801C7E9E, D_801C7E9F, D_801C7EA0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801C75F0; v = *p; t = D_801C7E98;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801C47EC;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801C47EC;
|
||||
extern s32 D_801C4804;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801C47EC);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018490C[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_801848F8;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_801848D4;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80184958[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1555,7 +1555,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8018497C[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8018497C[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1574,8 +1574,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1611,7 +1611,7 @@ extern s32 D_80184970;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1857,8 +1857,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80184B7C[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1900,8 +1900,8 @@ extern unsigned char D_80184BFC[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1950,7 +1950,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801C3EFC, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2119,8 +2119,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_80184EB4[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_80184EB4[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2300,8 +2300,8 @@ extern u8 D_80184EA4;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2342,9 +2342,9 @@ extern u8 D_80184EE0;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80185DB8;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80185E24;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C48E0[0] = p;
|
||||
func_80024054(&D_80186060, &D_801C48EC);
|
||||
func_8001CE28(p, &D_801C48EC);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C48E0[1] = p;
|
||||
func_80024054(&D_80186080, &D_801C4914);
|
||||
func_8001CE28(p, &D_801C4914);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C48E0[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801C492C, 0x84);
|
||||
func_8001CE68(p, &D_801C492C);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80186094;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801C4938[0] = (s32)item;
|
||||
func_80024054(D_801860C4, D_801C4944);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801C4938[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_801860DC), D_801C496C);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801C4938[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801C4988, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_801860FC[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801C499F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801C49D8;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801C4A58[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018645C;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80186470;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_8018653C[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80186DE0);
|
||||
u16 *pB = (*(u16 * *)&D_80186DDC);
|
||||
u16 *pC = (*(u16 * *)&D_80186DE8);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80186DDC;
|
||||
extern u16 D_801C6218;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80186DDC;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80186DDC; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80186DDC;
|
||||
extern u8 D_80186DE0;
|
||||
extern u8 D_80186DE8;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80186DE0);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80186DDC); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80186DE8); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801C6208;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C6218 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80186DE4);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801C7758; t1 = D_801C7759; t2 = D_801C775A;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801C77F8, D_801C77F9, D_801C77FA, D_801C77FB, D_801C77FC, D_801C77FD, D_801C77FE, D_801C77FF, D_801C7800;
|
||||
extern unsigned char D_801C77F8, D_801C77F9, D_801C77FA, D_801C77FB, D_801C77FC, D_801C77FD, D_801C77FE, D_801C77FF, D_801C7800;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801C7758; v = *p; t = D_801C77F8;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801C6294;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801C6294;
|
||||
extern s32 D_801C62AC;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801C6294);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80187C00[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80187BEC;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_80187BC8;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80187C4C[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1539,7 +1539,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80187C70[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80187C70[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1558,8 +1558,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1595,7 +1595,7 @@ extern s32 D_80187C64;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1841,8 +1841,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80187E70[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1884,8 +1884,8 @@ extern unsigned char D_80187EF0[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1934,7 +1934,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801C58CC, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2103,8 +2103,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_801881A8[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_801881A8[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2284,8 +2284,8 @@ extern u8 D_80188198;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2326,9 +2326,9 @@ extern u8 D_801881D4;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_801890AC;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80189118;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2802,7 +2802,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3610,7 +3610,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C6388[0] = p;
|
||||
func_80024054(&D_80189354, &D_801C6394);
|
||||
func_8001CE28(p, &D_801C6394);
|
||||
@@ -3621,7 +3621,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C6388[1] = p;
|
||||
func_80024054(&D_80189374, &D_801C63BC);
|
||||
func_8001CE28(p, &D_801C63BC);
|
||||
@@ -3632,7 +3632,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801C6388[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801C63D4, 0x84);
|
||||
func_8001CE68(p, &D_801C63D4);
|
||||
@@ -3688,9 +3688,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80189388;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3826,14 +3826,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801C63E0[0] = (s32)item;
|
||||
func_80024054(D_801893B8, D_801C63EC);
|
||||
@@ -3844,7 +3844,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801C63E0[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_801893D0), D_801C6414);
|
||||
@@ -3855,7 +3855,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801C63E0[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801C6430, 0x84);
|
||||
@@ -3930,10 +3930,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_801893F0[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4113,7 +4113,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4379,9 +4379,9 @@ extern u8 D_801C6447;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4527,9 +4527,9 @@ extern s32 D_801C6480;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4538,7 +4538,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4869,7 +4869,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4955,7 +4955,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5109,18 +5108,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801C6500[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5169,17 +5168,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5197,12 +5196,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80189750;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5272,10 +5271,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80189764;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5369,8 +5368,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5649,7 +5648,7 @@ void func_80168828()
|
||||
extern u16 D_80189830[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5657,7 +5656,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5962,8 +5961,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2525,7 +2525,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8018B190);
|
||||
u16 *pB = (*(u16 * *)&D_8018B18C);
|
||||
u16 *pC = (*(u16 * *)&D_8018B198);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2533,7 +2533,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2544,11 +2544,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2697,7 +2697,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2881,10 +2881,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8018B18C;
|
||||
extern u16 D_801E6D48;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8018B18C;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8018B18C; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3075,8 +3075,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3227,22 +3227,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8018B18C;
|
||||
extern u8 D_8018B190;
|
||||
extern u8 D_8018B198;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8018B190);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8018B18C); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8018B198); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801E6D38;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E6D48 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8018B194);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1058,7 +1058,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801E8688; t1 = D_801E8689; t2 = D_801E868A;
|
||||
@@ -1158,7 +1158,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801E8740, D_801E8741, D_801E8742, D_801E8743, D_801E8744, D_801E8745, D_801E8746, D_801E8747, D_801E8748;
|
||||
extern unsigned char D_801E8740, D_801E8741, D_801E8742, D_801E8743, D_801E8744, D_801E8745, D_801E8746, D_801E8747, D_801E8748;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801E8688; v = *p; t = D_801E8740;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1378,13 +1378,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1419,10 +1419,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801E6DC4;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1463,22 +1463,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801E6DC4;
|
||||
extern s32 D_801E6DDC;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801E6DC4);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1493,31 +1493,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1526,17 +1526,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1545,21 +1545,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1700,9 +1700,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1721,7 +1721,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1809,7 +1809,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018BFB0[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1855,12 +1855,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8018BF9C;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2017,7 +2017,7 @@ extern unsigned char D_8018BF78;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1041,14 +1041,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1128,7 +1128,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1139,13 +1139,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1352,7 +1352,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018BFFC[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1554,7 +1554,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8018C020[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8018C020[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1573,8 +1573,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1610,7 +1610,7 @@ extern s32 D_8018C014;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1856,8 +1856,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_8018C220[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1899,8 +1899,8 @@ extern unsigned char D_8018C2A0[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1949,7 +1949,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801E6120, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2118,8 +2118,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8018C558[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8018C558[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2299,8 +2299,8 @@ extern u8 D_8018C548;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2341,9 +2341,9 @@ extern u8 D_8018C584;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_8018D45C;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_8018D4C8;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2801,7 +2801,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3609,7 +3609,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E6EB8[0] = p;
|
||||
func_80024054(&D_8018D704, &D_801E6EC4);
|
||||
func_8001CE28(p, &D_801E6EC4);
|
||||
@@ -3620,7 +3620,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E6EB8[1] = p;
|
||||
func_80024054(&D_8018D724, &D_801E6EEC);
|
||||
func_8001CE28(p, &D_801E6EEC);
|
||||
@@ -3631,7 +3631,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E6EB8[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801E6F04, 0x84);
|
||||
func_8001CE68(p, &D_801E6F04);
|
||||
@@ -3687,9 +3687,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_8018D738;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3825,14 +3825,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801E6F10[0] = (s32)item;
|
||||
func_80024054(D_8018D768, D_801E6F1C);
|
||||
@@ -3843,7 +3843,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801E6F10[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_8018D780), D_801E6F44);
|
||||
@@ -3854,7 +3854,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801E6F10[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801E6F60, 0x84);
|
||||
@@ -3929,10 +3929,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_8018D7A0[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4112,7 +4112,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4378,9 +4378,9 @@ extern u8 D_801E6F77;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4526,9 +4526,9 @@ extern s32 D_801E6FB0;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4537,7 +4537,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4868,7 +4868,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4954,7 +4954,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5108,18 +5107,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801E7030[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5168,17 +5167,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5196,12 +5195,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018DB00;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5271,10 +5270,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018DB14;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5368,8 +5367,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5648,7 +5647,7 @@ void func_80168828()
|
||||
extern u16 D_8018DBE0[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5656,7 +5655,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5961,8 +5960,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017E270);
|
||||
u16 *pB = (*(u16 * *)&D_8017E26C);
|
||||
u16 *pC = (*(u16 * *)&D_8017E278);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017E26C;
|
||||
extern u16 D_80194F98;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017E26C;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017E26C; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8017E26C;
|
||||
extern u8 D_8017E270;
|
||||
extern u8 D_8017E278;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8017E270);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8017E26C); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8017E278); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_80194F88;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80194F98 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8017E274);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_80196270; t1 = D_80196271; t2 = D_80196272;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_80196310, D_80196311, D_80196312, D_80196313, D_80196314, D_80196315, D_80196316, D_80196317, D_80196318;
|
||||
extern unsigned char D_80196310, D_80196311, D_80196312, D_80196313, D_80196314, D_80196315, D_80196316, D_80196317, D_80196318;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_80196270; v = *p; t = D_80196310;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_80195014;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_80195014;
|
||||
extern s32 D_8019502C;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_80195014);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F090[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8017F07C;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_8017F058;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F0DC[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1539,7 +1539,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8017F100[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8017F100[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1558,8 +1558,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1595,7 +1595,7 @@ extern s32 D_8017F0F4;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1841,8 +1841,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_8017F300[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1884,8 +1884,8 @@ extern unsigned char D_8017F380[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1934,7 +1934,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_80194730, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2103,8 +2103,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8017F638[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8017F638[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2284,8 +2284,8 @@ extern u8 D_8017F628;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2326,9 +2326,9 @@ extern u8 D_8017F664;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_8018053C;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_801805A8;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80195108[0] = p;
|
||||
func_80024054(&D_801807E4, &D_80195114);
|
||||
func_8001CE28(p, &D_80195114);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80195108[1] = p;
|
||||
func_80024054(&D_80180804, &D_8019513C);
|
||||
func_8001CE28(p, &D_8019513C);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80195108[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_80195154, 0x84);
|
||||
func_8001CE68(p, &D_80195154);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80180818;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_80195160[0] = (s32)item;
|
||||
func_80024054(D_80180848, D_8019516C);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_80195160[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80180860), D_80195194);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_80195160[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801951B0, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80180880[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801951C7;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_80195200;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_80195280[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80180BE0;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80180BF4;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_80180CC0[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80190E74);
|
||||
u16 *pB = (*(u16 * *)&D_80190E70);
|
||||
u16 *pC = (*(u16 * *)&D_80190E7C);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80190E70;
|
||||
extern u16 D_801E3010;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80190E70;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80190E70; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80190E70;
|
||||
extern u8 D_80190E74;
|
||||
extern u8 D_80190E7C;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80190E74);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80190E70); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80190E7C); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801E3000;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E3010 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80190E78);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801E4A90; t1 = D_801E4A91; t2 = D_801E4A92;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801E4B98, D_801E4B99, D_801E4B9A, D_801E4B9B, D_801E4B9C, D_801E4B9D, D_801E4B9E, D_801E4B9F, D_801E4BA0;
|
||||
extern unsigned char D_801E4B98, D_801E4B99, D_801E4B9A, D_801E4B9B, D_801E4B9C, D_801E4B9D, D_801E4B9E, D_801E4B9F, D_801E4BA0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801E4A90; v = *p; t = D_801E4B98;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801E308C;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801E308C;
|
||||
extern s32 D_801E30A4;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801E308C);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80191C94[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_80191C80;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_80191C5C;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80191CE0[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1539,7 +1539,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80191D04[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80191D04[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1558,8 +1558,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1595,7 +1595,7 @@ extern s32 D_80191CF8;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1841,8 +1841,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80191F04[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1884,8 +1884,8 @@ extern unsigned char D_80191F84[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1934,7 +1934,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801E2464, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2103,8 +2103,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8019223C[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8019223C[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2284,8 +2284,8 @@ extern u8 D_8019222C;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2326,9 +2326,9 @@ extern u8 D_80192268;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80193140;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_801931AC;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2801,7 +2801,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3609,7 +3609,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E3180[0] = p;
|
||||
func_80024054(&D_801933E8, &D_801E318C);
|
||||
func_8001CE28(p, &D_801E318C);
|
||||
@@ -3620,7 +3620,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E3180[1] = p;
|
||||
func_80024054(&D_80193408, &D_801E31B4);
|
||||
func_8001CE28(p, &D_801E31B4);
|
||||
@@ -3631,7 +3631,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E3180[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801E31CC, 0x84);
|
||||
func_8001CE68(p, &D_801E31CC);
|
||||
@@ -3687,9 +3687,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_8019341C;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3825,14 +3825,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801E31D8[0] = (s32)item;
|
||||
func_80024054(D_8019344C, D_801E31E4);
|
||||
@@ -3843,7 +3843,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801E31D8[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80193464), D_801E320C);
|
||||
@@ -3854,7 +3854,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801E31D8[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801E3228, 0x84);
|
||||
@@ -3929,10 +3929,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80193484[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4112,7 +4112,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4378,9 +4378,9 @@ extern u8 D_801E323F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4526,9 +4526,9 @@ extern s32 D_801E3278;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4537,7 +4537,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4868,7 +4868,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4954,7 +4954,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5108,18 +5107,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801E32F8[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5168,17 +5167,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5196,12 +5195,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_801937E4;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5271,10 +5270,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_801937F8;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5368,8 +5367,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5648,7 +5647,7 @@ void func_80168828()
|
||||
extern u16 D_801938C4[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5656,7 +5655,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5961,8 +5960,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_801912C4);
|
||||
u16 *pB = (*(u16 * *)&D_801912C0);
|
||||
u16 *pC = (*(u16 * *)&D_801912CC);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_801912C0;
|
||||
extern u16 D_801E9EF0;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_801912C0;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_801912C0; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_801912C0;
|
||||
extern u8 D_801912C4;
|
||||
extern u8 D_801912CC;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_801912C4);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_801912C0); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_801912CC); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801E9EE0;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801E9EF0 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_801912C8);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801EB928; t1 = D_801EB929; t2 = D_801EB92A;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801EB9C8, D_801EB9C9, D_801EB9CA, D_801EB9CB, D_801EB9CC, D_801EB9CD, D_801EB9CE, D_801EB9CF, D_801EB9D0;
|
||||
extern unsigned char D_801EB9C8, D_801EB9C9, D_801EB9CA, D_801EB9CB, D_801EB9CC, D_801EB9CD, D_801EB9CE, D_801EB9CF, D_801EB9D0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801EB928; v = *p; t = D_801EB9C8;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801E9F6C;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801E9F6C;
|
||||
extern s32 D_801E9F84;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801E9F6C);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_801920E4[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_801920D0;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_801920AC;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80192130[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1555,7 +1555,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_80192154[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_80192154[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1574,8 +1574,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1611,7 +1611,7 @@ extern s32 D_80192148;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1857,8 +1857,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80192354[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1900,8 +1900,8 @@ extern unsigned char D_801923D4[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1950,7 +1950,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801E95C0, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2119,8 +2119,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8019268C[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8019268C[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2300,8 +2300,8 @@ extern u8 D_8019267C;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2342,9 +2342,9 @@ extern u8 D_801926B8;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80193590;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_801935FC;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EA060[0] = p;
|
||||
func_80024054(&D_80193838, &D_801EA06C);
|
||||
func_8001CE28(p, &D_801EA06C);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EA060[1] = p;
|
||||
func_80024054(&D_80193858, &D_801EA094);
|
||||
func_8001CE28(p, &D_801EA094);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EA060[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801EA0AC, 0x84);
|
||||
func_8001CE68(p, &D_801EA0AC);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_8019386C;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EA0B8[0] = (s32)item;
|
||||
func_80024054(D_8019389C, D_801EA0C4);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EA0B8[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_801938B4), D_801EA0EC);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EA0B8[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801EA108, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_801938D4[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801EA11F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801EA158;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801EA1D8[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80193C34;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80193C48;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_80193D14[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8017E7D8);
|
||||
u16 *pB = (*(u16 * *)&D_8017E7D4);
|
||||
u16 *pC = (*(u16 * *)&D_8017E7E0);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8017E7D4;
|
||||
extern u16 D_8018F070;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8017E7D4;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8017E7D4; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8017E7D4;
|
||||
extern u8 D_8017E7D8;
|
||||
extern u8 D_8017E7E0;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8017E7D8);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8017E7D4); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8017E7E0); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_8018F060;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018F070 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8017E7DC);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_80190548; t1 = D_80190549; t2 = D_8019054A;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801905E8, D_801905E9, D_801905EA, D_801905EB, D_801905EC, D_801905ED, D_801905EE, D_801905EF, D_801905F0;
|
||||
extern unsigned char D_801905E8, D_801905E9, D_801905EA, D_801905EB, D_801905EC, D_801905ED, D_801905EE, D_801905EF, D_801905F0;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_80190548; v = *p; t = D_801905E8;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_8018F0EC;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_8018F0EC;
|
||||
extern s32 D_8018F104;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_8018F0EC);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F5F8[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8017F5E4;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_8017F5C0;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8017F644[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1539,7 +1539,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8017F668[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8017F668[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1558,8 +1558,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1595,7 +1595,7 @@ extern s32 D_8017F65C;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1841,8 +1841,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_8017F868[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1884,8 +1884,8 @@ extern unsigned char D_8017F8E8[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1934,7 +1934,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_8018E818, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2103,8 +2103,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8017FBA0[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8017FBA0[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2284,8 +2284,8 @@ extern u8 D_8017FB90;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2326,9 +2326,9 @@ extern u8 D_8017FBCC;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1641,8 +1641,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80180AA4;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1794,8 +1794,8 @@ extern s32 D_80180B10;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1946,7 +1946,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2801,7 +2801,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3609,7 +3609,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018F1E0[0] = p;
|
||||
func_80024054(&D_80180D4C, &D_8018F1EC);
|
||||
func_8001CE28(p, &D_8018F1EC);
|
||||
@@ -3620,7 +3620,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018F1E0[1] = p;
|
||||
func_80024054(&D_80180D6C, &D_8018F214);
|
||||
func_8001CE28(p, &D_8018F214);
|
||||
@@ -3631,7 +3631,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_8018F1E0[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_8018F22C, 0x84);
|
||||
func_8001CE68(p, &D_8018F22C);
|
||||
@@ -3687,9 +3687,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80180D80;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3825,14 +3825,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8018F238[0] = (s32)item;
|
||||
func_80024054(D_80180DB0, D_8018F244);
|
||||
@@ -3843,7 +3843,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8018F238[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80180DC8), D_8018F26C);
|
||||
@@ -3854,7 +3854,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_8018F238[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_8018F288, 0x84);
|
||||
@@ -3929,10 +3929,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80180DE8[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4112,7 +4112,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4378,9 +4378,9 @@ extern u8 D_8018F29F;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4526,9 +4526,9 @@ extern s32 D_8018F2D8;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4537,7 +4537,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4868,7 +4868,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4954,7 +4954,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5108,18 +5107,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_8018F358[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5168,17 +5167,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5196,12 +5195,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80181148;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5271,10 +5270,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018115C;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5368,8 +5367,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5648,7 +5647,7 @@ void func_80168828()
|
||||
extern u16 D_80181228[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5656,7 +5655,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5961,8 +5960,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_80184A10);
|
||||
u16 *pB = (*(u16 * *)&D_80184A0C);
|
||||
u16 *pC = (*(u16 * *)&D_80184A18);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80184A0C;
|
||||
extern u16 D_801B2C88;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80184A0C;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80184A0C; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80184A0C;
|
||||
extern u8 D_80184A10;
|
||||
extern u8 D_80184A18;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_80184A10);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80184A0C); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80184A18); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801B2C78;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801B2C88 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80184A14);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801B4980; t1 = D_801B4981; t2 = D_801B4982;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801B4A20, D_801B4A21, D_801B4A22, D_801B4A23, D_801B4A24, D_801B4A25, D_801B4A26, D_801B4A27, D_801B4A28;
|
||||
extern unsigned char D_801B4A20, D_801B4A21, D_801B4A22, D_801B4A23, D_801B4A24, D_801B4A25, D_801B4A26, D_801B4A27, D_801B4A28;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801B4980; v = *p; t = D_801B4A20;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801B2D04;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801B2D04;
|
||||
extern s32 D_801B2D1C;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801B2D04);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_80185830[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8018581C;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_801857F8;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018587C[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1555,7 +1555,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_801858A0[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_801858A0[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1574,8 +1574,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1611,7 +1611,7 @@ extern s32 D_80185894;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1857,8 +1857,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_80185AA0[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1900,8 +1900,8 @@ extern unsigned char D_80185B20[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1950,7 +1950,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801B23F8, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2119,8 +2119,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_80185DD8[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_80185DD8[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2300,8 +2300,8 @@ extern u8 D_80185DC8;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2342,9 +2342,9 @@ extern u8 D_80185E04;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_80186CDC;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_80186D48;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801B2DF8[0] = p;
|
||||
func_80024054(&D_80186F84, &D_801B2E04);
|
||||
func_8001CE28(p, &D_801B2E04);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801B2DF8[1] = p;
|
||||
func_80024054(&D_80186FA4, &D_801B2E2C);
|
||||
func_8001CE28(p, &D_801B2E2C);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801B2DF8[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801B2E44, 0x84);
|
||||
func_8001CE68(p, &D_801B2E44);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_80186FB8;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801B2E50[0] = (s32)item;
|
||||
func_80024054(D_80186FE8, D_801B2E5C);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801B2E50[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_80187000), D_801B2E84);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801B2E50[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801B2EA0, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_80187020[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801B2EB7;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801B2EF0;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801B2F70[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80187380;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_80187394;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_80187460[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8018AA68);
|
||||
u16 *pB = (*(u16 * *)&D_8018AA64);
|
||||
u16 *pC = (*(u16 * *)&D_8018AA70);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_8018AA64;
|
||||
extern u16 D_801EE4B0;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_8018AA64;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_8018AA64; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_8018AA64;
|
||||
extern u8 D_8018AA68;
|
||||
extern u8 D_8018AA70;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8018AA68);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_8018AA64); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_8018AA70); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_801EE4A0;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EE4B0 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_8018AA6C);
|
||||
|
||||
@@ -640,7 +640,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
extern u8 D_801152B0;
|
||||
|
||||
s32 *p;
|
||||
register s32 s7 __asm__("$23");
|
||||
register s32 s7 __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flag;
|
||||
s32 acc;
|
||||
s16 i;
|
||||
@@ -687,7 +687,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
return 1;
|
||||
next:
|
||||
p = (s32 *)*p;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (p != 0) goto loop;
|
||||
return 0;
|
||||
}
|
||||
@@ -701,7 +701,7 @@ s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3) {
|
||||
s32 t = 0;
|
||||
if (((V3 *)a2)->x == ((V3 *)a3)->x && ((V3 *)a2)->y == ((V3 *)a3)->y) {
|
||||
s32 zt = (((V3 *)a2)->z == ((V3 *)a3)->z);
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(t) : "r"(zt)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
eq = t;
|
||||
}
|
||||
|
||||
@@ -1059,7 +1059,7 @@ void func_8013CF68()
|
||||
|
||||
u8 t0, t1, t2;
|
||||
u8 *base;
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base));
|
||||
__asm__("la %0, D_800A5E94" : "=r"(base)); // !FAKE: instruction la — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
*(s32 *)(base - 0xC) = 0;
|
||||
t0 = D_801EFBE0; t1 = D_801EFBE1; t2 = D_801EFBE2;
|
||||
@@ -1159,7 +1159,7 @@ void func_8013D178(void) {
|
||||
extern unsigned char D_801EFC80, D_801EFC81, D_801EFC82, D_801EFC83, D_801EFC84, D_801EFC85, D_801EFC86, D_801EFC87, D_801EFC88;
|
||||
extern unsigned char D_801EFC80, D_801EFC81, D_801EFC82, D_801EFC83, D_801EFC84, D_801EFC85, D_801EFC86, D_801EFC87, D_801EFC88;
|
||||
unsigned char v, t;
|
||||
register unsigned char *p __asm__("$5");
|
||||
register unsigned char *p __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
p = &D_801EFBE0; v = *p; t = D_801EFC80;
|
||||
if (v != t) { if (v < t) *p = v + 8; else *p = v - 8; }
|
||||
@@ -1379,13 +1379,13 @@ void func_8013D53C(void *arg0v) {
|
||||
n = arg0->w * arg0->h;
|
||||
i = 0;
|
||||
src = arg0->data;
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */
|
||||
__asm__("" :: "r"(src)); /* +2 refs on src (depth-2): keeps src above i, below the mfhi temp */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
dst = src + n;
|
||||
if (n > 0) {
|
||||
do {
|
||||
u16 px;
|
||||
s32 r, g, b, out;
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */
|
||||
__asm__("" :: "r"(i)); /* +3 refs on i (depth-3): lifts i over dst in the $t2 race */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
px = *src;
|
||||
r = ((px & 0x1F) * s0v) / 2560;
|
||||
g = (((px & 0x3E0) * t9v) / 2560) & 0x3E0;
|
||||
@@ -1420,10 +1420,10 @@ void func_8013D8FC(void)
|
||||
{
|
||||
|
||||
extern s16 *D_801EE52C;
|
||||
register s16 *psVar3 __asm__("$17");
|
||||
register s16 *psVar2 __asm__("$16");
|
||||
register s32 c9 __asm__("$19");
|
||||
register s32 cff __asm__("$18");
|
||||
s16 *psVar3;
|
||||
register s16 *psVar2 __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 c9;
|
||||
s32 cff;
|
||||
u16 sVar1;
|
||||
s16 buf[4];
|
||||
|
||||
@@ -1464,22 +1464,22 @@ void func_8013D9B0(int param_1)
|
||||
extern s16 *D_801EE52C;
|
||||
extern s32 D_801EE544;
|
||||
u8 buf[0x20];
|
||||
register s32 uVar13 __asm__("$16");
|
||||
register u16 *psVar14 __asm__("$17");
|
||||
register u16 *psVar15 __asm__("$18");
|
||||
register s32 uVar16 __asm__("$19");
|
||||
register void *r0 __asm__("$20");
|
||||
register u16 *puVar10 __asm__("$11");
|
||||
register u16 *puVar9 __asm__("$10");
|
||||
register s32 iVar11 __asm__("$13");
|
||||
register s32 iVar12 __asm__("$14");
|
||||
s32 uVar13;
|
||||
register u16 *psVar14 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *psVar15;
|
||||
s32 uVar16;
|
||||
void *r0;
|
||||
u16 *puVar10;
|
||||
register u16 *puVar9 __asm__("$10"); // !FAKE: pin $10 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar11;
|
||||
register s32 iVar12 __asm__("$14"); // !FAKE: pin $14 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 sVar4;
|
||||
register u32 uVar5 __asm__("$3");
|
||||
register u32 uVar7 __asm__("$6");
|
||||
register u32 uVar1 __asm__("$7");
|
||||
register u32 uVar6 __asm__("$4");
|
||||
register u32 uVar8 __asm__("$8");
|
||||
register u32 uVar3 __asm__("$9");
|
||||
register u32 uVar5 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar7 __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar1 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 uVar6;
|
||||
register u32 uVar8 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 uVar3 __asm__("$9"); // !FAKE: pin $9 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
psVar15 = (*(u16 * *)&D_801EE52C);
|
||||
if (psVar15 != 0) {
|
||||
@@ -1494,31 +1494,31 @@ void func_8013D9B0(int param_1)
|
||||
iVar11 = 0;
|
||||
if (sVar4 == 9) {
|
||||
*(s16 *)(buf + 0) = psVar14[-4];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 2) = psVar14[-3];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 4) = psVar14[-2];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*(s16 *)(buf + 6) = psVar14[-1];
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
{
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2];
|
||||
register s32 mh __asm__("$2") = (s32)((s16 *)psVar14)[-1];
|
||||
register s32 mw __asm__("$3") = (s32)((s16 *)psVar14)[-2]; // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 mh = (s32)((s16 *)psVar14)[-1];
|
||||
iVar12 = mw * mh;
|
||||
}
|
||||
uVar13 = 0;
|
||||
puVar10 = *(u16 **)psVar14;
|
||||
{
|
||||
register s32 boff __asm__("$2") = iVar12 * 2;
|
||||
register u16 *pi __asm__("$5");
|
||||
register s32 boff __asm__("$2") = iVar12 * 2; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *pi __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pi = (u16 *)((s32)puVar10 + boff);
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi));
|
||||
__asm__ __volatile__("" : "=r"(pi) : "0"(pi)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
puVar9 = pi;
|
||||
}
|
||||
if (0 < iVar12) {
|
||||
do {
|
||||
register u32 pix __asm__("$2");
|
||||
register u32 out __asm__("$2");
|
||||
register u32 pix __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u32 out __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 result;
|
||||
*(u32 *)(buf + 0xc) = (u32)*puVar10;
|
||||
pix = (u32)*puVar9;
|
||||
@@ -1527,17 +1527,17 @@ void func_8013D9B0(int param_1)
|
||||
uVar1 = pix & 0x7c00;
|
||||
{
|
||||
void *p1;
|
||||
register void *pa __asm__("$2");
|
||||
register void *pb __asm__("$12");
|
||||
__asm__ __volatile__("");
|
||||
register void *pa __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register void *pb __asm__("$12"); // !FAKE: pin $12 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p1 = buf + 0xc;
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1));
|
||||
__asm__ __volatile__("" : "=r"(p1) : "0"(p1)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
gte_ldIR0z();
|
||||
gte_ldrgb(r0);
|
||||
gte_ldIRGB(p1);
|
||||
gte_dpcl();
|
||||
pa = buf + 0x10;
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa));
|
||||
__asm__ __volatile__("" : "=r"(pa) : "0"(pa)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
pb = pa;
|
||||
gte_stORGB(pb);
|
||||
}
|
||||
@@ -1546,21 +1546,21 @@ void func_8013D9B0(int param_1)
|
||||
uVar8 = out & 0x3e0;
|
||||
uVar3 = out & 0x7c00;
|
||||
if (uVar5 != uVar6) {
|
||||
register s32 c __asm__("$2");
|
||||
s32 c;
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar5 < (s32)uVar6) uVar5 = uVar5 + 1;
|
||||
c = (s32)uVar6 < (s32)uVar5;
|
||||
if (c) uVar5 = uVar5 - 1;
|
||||
}
|
||||
if (uVar7 != uVar8) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar7 < (s32)uVar8) uVar7 = uVar7 + 0x20;
|
||||
c = (s32)uVar8 < (s32)uVar7;
|
||||
if (c) uVar7 = uVar7 - 0x20;
|
||||
}
|
||||
if (uVar1 != uVar3) {
|
||||
register s32 c __asm__("$2");
|
||||
register s32 c __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
uVar13 = 1;
|
||||
if ((s32)uVar1 < (s32)uVar3) uVar1 = uVar1 + 0x400;
|
||||
c = (s32)uVar3 < (s32)uVar1;
|
||||
@@ -1701,9 +1701,9 @@ void func_8013DD68() {
|
||||
u16 *puVar16;
|
||||
u16 *q;
|
||||
u16 *puVar10;
|
||||
register u16 uVar2 __asm__("$3");
|
||||
register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int uVar5;
|
||||
register int iVar14 __asm__("$7");
|
||||
register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
Buf_8013DD68 buf;
|
||||
u8 *pbase;
|
||||
u8 *base;
|
||||
@@ -1722,7 +1722,7 @@ void func_8013DD68() {
|
||||
p = p + 0x10;
|
||||
iVar14 = 0;
|
||||
if (uVar1 != 0) {
|
||||
register int c5 __asm__("$11") = 5;
|
||||
int c5 = 5;
|
||||
puVar10 = (u16 *)((int)p + 0x18);
|
||||
q = puVar16 + 8;
|
||||
do {
|
||||
@@ -1810,7 +1810,7 @@ void func_8013E5E8(void)
|
||||
extern unsigned short D_80115112;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018B888[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 -> store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_80029444();
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
@@ -1856,12 +1856,12 @@ void func_8013E6AC(void) {
|
||||
D_80115140[i] = 0;
|
||||
}
|
||||
if (!((u32)func_80029504() < 5 || currentLocationId == 0x302A || currentLocationId == 0x3073)) {
|
||||
register s32 *ep __asm__("$8");
|
||||
register s32 *fp __asm__("$9");
|
||||
s32 *ep;
|
||||
s32 *fp;
|
||||
fp = (s32 *)&D_80115110;
|
||||
ep = (s32 *)&D_8018B874;
|
||||
for (i = 0; i < 5; i++) {
|
||||
register s32 *fa __asm__("$6");
|
||||
s32 *fa;
|
||||
s32 v;
|
||||
fa = (s32 *)(i * 4 + (s32)fp);
|
||||
v = ep[i] * 3 >> 2;
|
||||
@@ -2018,7 +2018,7 @@ extern unsigned char D_8018B850;
|
||||
void func_8013EB7C(void) {
|
||||
s32 sp10[2];
|
||||
short sVar1;
|
||||
register short sVar2 __asm__("$2");
|
||||
register short sVar2 __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 a0v;
|
||||
s32 iVar4;
|
||||
|
||||
|
||||
@@ -1042,14 +1042,14 @@ s16 n;
|
||||
Prim4 *p;
|
||||
s16 t;
|
||||
s32 c3;
|
||||
register u16 *a __asm__("$20");
|
||||
register u16 *b __asm__("$21");
|
||||
register u16 *c __asm__("$23");
|
||||
register u16 *e __asm__("$22");
|
||||
register u16 *pb __asm__("$10");
|
||||
register u32 m24 __asm__("$8");
|
||||
register u32 mhi __asm__("$9");
|
||||
register s32 eight __asm__("$2");
|
||||
u16 *a;
|
||||
u16 *b;
|
||||
u16 *c;
|
||||
u16 *e;
|
||||
u16 *pb;
|
||||
u32 m24;
|
||||
u32 mhi;
|
||||
register s32 eight __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (i < n)
|
||||
{
|
||||
c3 = 3;
|
||||
@@ -1129,7 +1129,7 @@ register s32 eight __asm__("$2");
|
||||
y = (*e) + 3;
|
||||
}
|
||||
*((s16 *) (q - 10)) = y;
|
||||
__asm__("" ::: "memory");
|
||||
__asm__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
*((u32 *) ot) = 0x4000000;
|
||||
q[-8] = 0x78;
|
||||
*((u32 *) (q - 0x10)) = 0x64808080;
|
||||
@@ -1140,13 +1140,13 @@ __asm__("" ::: "memory");
|
||||
*((s16 *) (q - 4)) = eight;
|
||||
*((u32 *) ot) = ((*((u32 *) ot)) & mhi) | (D_800AE7BC[*pb].ot[2] & m24);
|
||||
{
|
||||
register u32 *op __asm__("$4");
|
||||
register u32 *op __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
op = D_800AE7BC[*pb].ot;
|
||||
op[2] = (op[2] & mhi) | (((u32) ot) & m24);
|
||||
}
|
||||
q += 0x14;
|
||||
ot += 5;
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */
|
||||
__asm__ volatile("" :: "r"(j)); /* [L2] zero code, +1 ref on j */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1353,7 +1353,7 @@ void func_80141874(void) {
|
||||
extern u16 D_8011511C;
|
||||
extern u16 D_80115116;
|
||||
extern void (*D_8018B8D4[])(void);
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */
|
||||
register void (*fp)(void) __asm__("$2"); /* pin fn-ptr to $v0 → store retires early */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
func_801754A8();
|
||||
D_8011511E = func_80014ED4(0);
|
||||
D_8011511C = func_80015018(0);
|
||||
@@ -1555,7 +1555,7 @@ void func_801424E4(short *param_1) {
|
||||
extern void (*D_8018B8F8[])(void);
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
register unsigned short t __asm__("$3");
|
||||
unsigned short t;
|
||||
|
||||
(*D_8018B8F8[(unsigned short)param_1[1]])();
|
||||
if (*(unsigned short *)param_1 != 0) {
|
||||
@@ -1574,8 +1574,8 @@ void func_801424E4(short *param_1) {
|
||||
iVar2 = *(int *)(param_1 + 0x32);
|
||||
if ((iVar2 != 0) && (*(short *)(iVar2 + 0x36) == param_1[0x7f])) {
|
||||
*(int *)(param_1 + 2) = *(int *)(iVar2 + 4);
|
||||
a = *(unsigned short *)(*(volatile int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a));
|
||||
a = *(unsigned short *)(*(int *)(param_1 + 0x32) + 10);
|
||||
__asm__ __volatile__("" : : "r"(a)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t = (unsigned short)param_1[0x7e];
|
||||
sVar1 = a + t;
|
||||
iVar2 = *(volatile int *)(param_1 + 0x32);
|
||||
@@ -1611,7 +1611,7 @@ extern s32 D_8018B8EC;
|
||||
|
||||
void func_80142608(s32 param_1)
|
||||
{
|
||||
register s32 iVar1 __asm__("$16");
|
||||
s32 iVar1;
|
||||
|
||||
if (*(short *)(param_1 + 0x70) != 0) {
|
||||
iVar1 = ((s32 (*)(void))func_8012C1B8)();
|
||||
@@ -1857,8 +1857,8 @@ extern void func_80142B2C(void *arg0);
|
||||
void func_80142EC0(s32 param_1) {
|
||||
|
||||
extern s32 D_8018BAF8[];
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */
|
||||
register s32 obj __asm__("$17"); /* $s1 */
|
||||
register s32 d __asm__("$16") = param_1; /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 obj __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
s16 sVar2;
|
||||
|
||||
@@ -1900,8 +1900,8 @@ extern unsigned char D_8018BB78[];
|
||||
|
||||
void func_8014305C(int param_1)
|
||||
{
|
||||
register int s0_param __asm__("$16") = param_1;
|
||||
register int s1_copy __asm__("$17");
|
||||
register int s0_param __asm__("$16") = param_1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register int s1_copy __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int iVar2;
|
||||
short sVar1;
|
||||
|
||||
@@ -1950,7 +1950,7 @@ void func_801431E8(s32 param_1) {
|
||||
u16 uVar2;
|
||||
s16 sVar4;
|
||||
|
||||
register s32 d __asm__("$16");
|
||||
register s32 d __asm__("$16"); // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
memcpy(buf, &D_801EDC18, 4);
|
||||
iVar5 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(param_1 + 0x20) = iVar5;
|
||||
@@ -2119,8 +2119,8 @@ extern void func_8012C218(void *a0);
|
||||
void func_80143D28(s32 param_1) {
|
||||
|
||||
extern MatEntry D_8018BE30[];
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */
|
||||
register s32 iVar2 __asm__("$17") = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
register s32 iVar3 __asm__("$18") = *(s32 *)(param_1 + 0x20); /* $s2 */ // !FAKE: pin $18 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2 = *(s32 *)(param_1 + 0x64); /* $s1 */
|
||||
MatEntry *p = &D_8018BE30[*(s16 *)(param_1 + 0x70)];
|
||||
s32 sVar4;
|
||||
s32 iVar1;
|
||||
@@ -2300,8 +2300,8 @@ extern u8 D_8018BE20;
|
||||
void func_8014477C(void *param_1) {
|
||||
s32 v0;
|
||||
s32 v1;
|
||||
register s32 uVar2 __asm__("$2");
|
||||
register s32 addr __asm__("$3");
|
||||
s32 uVar2;
|
||||
s32 addr;
|
||||
s32 gv;
|
||||
s32 fv;
|
||||
|
||||
@@ -2342,9 +2342,9 @@ extern u8 D_8018BE5C;
|
||||
|
||||
void func_80144880(s32 param_1)
|
||||
{
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = param_1; /* $s1 */
|
||||
register s32 b __asm__("$2"); /* $v0 */
|
||||
s32 obj; /* $s0 */
|
||||
s32 self = param_1; /* $s1 */
|
||||
s32 b; /* $v0 */
|
||||
s32 e;
|
||||
|
||||
obj = ((s32 (*)(void))func_8012C194)();
|
||||
|
||||
@@ -1643,8 +1643,8 @@ void func_8015D01C(int param_1) {
|
||||
extern int D_8018CD34;
|
||||
|
||||
int iVar4;
|
||||
register unsigned short uVar1 __asm__("$19");
|
||||
register unsigned short uVar5 __asm__("$17");
|
||||
unsigned short uVar1;
|
||||
register unsigned short uVar5 __asm__("$17"); // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
short sVar2;
|
||||
short sVar3;
|
||||
|
||||
@@ -1796,8 +1796,8 @@ extern s32 D_8018CDA0;
|
||||
void func_8015D380(s32 a0) {
|
||||
s16 out[4];
|
||||
s32 buf[8];
|
||||
register s32 s1 __asm__("$17") = a0;
|
||||
register s32 *s0 __asm__("$16") = buf;
|
||||
s32 s1 = a0;
|
||||
s32 *s0 = buf;
|
||||
((void (*)(void *))func_80013F3C)((void *)s0);
|
||||
((void (*)(void *, s32))func_80012558)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x12));
|
||||
((void (*)(void *, s32))func_800126C4)((void *)s0, *(s16 *)(*(s32 *)(s1 + 0x20) + 0x10));
|
||||
@@ -1948,7 +1948,7 @@ void func_8015D738(void *arg0) {
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 == 0x360) goto block_808;
|
||||
}
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (s1 != 0) {
|
||||
if (*(u16 *)s1 != 0) goto block_7F4;
|
||||
}
|
||||
@@ -2803,7 +2803,7 @@ void func_8015FBE0(s32 *param_1)
|
||||
((void (*)(s32 *, s16))func_80147078)(param_1, 0);
|
||||
((void (*)(s32 *))func_80159B70)(param_1);
|
||||
} else {
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80078EC1 = 0;
|
||||
((void (*)(s32 *, s32))func_80154150)(param_1, 0x20);
|
||||
((void (*)(s32 *, s32))func_80154A74)(param_1, 0x18);
|
||||
@@ -3611,7 +3611,7 @@ void func_80161E08(s32 param_1) {
|
||||
((a2 = func_800291DC(8)) & 0x8000) != 0) {
|
||||
|
||||
if (D_800B5BD8 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65A8)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EE620[0] = p;
|
||||
func_80024054(&D_8018CFDC, &D_801EE62C);
|
||||
func_8001CE28(p, &D_801EE62C);
|
||||
@@ -3622,7 +3622,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C10 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x65E0)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EE620[1] = p;
|
||||
func_80024054(&D_8018CFFC, &D_801EE654);
|
||||
func_8001CE28(p, &D_801EE654);
|
||||
@@ -3633,7 +3633,7 @@ void func_80161E08(s32 param_1) {
|
||||
}
|
||||
|
||||
if (D_800B5C48 == 0) {
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618));
|
||||
__asm__("move %0,%1" : "=r"(p) : "r"(base + 0x6618)); // !FAKE: instruction move — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_801EE620[2] = p;
|
||||
func_800242D0((s16)func_801620C4(), &D_801EE66C, 0x84);
|
||||
func_8001CE68(p, &D_801EE66C);
|
||||
@@ -3689,9 +3689,9 @@ extern u8 D_80078EB1;
|
||||
extern s32 D_8018D010;
|
||||
|
||||
s32 func_801621CC(s32 arg0) {
|
||||
register s32 s0 __asm__("$16") = arg0; /* $s0: arg0, crosses the call */
|
||||
register u8 *s1 __asm__("$17") = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */
|
||||
s32 s0 = arg0; /* $s0: arg0, crosses the call */
|
||||
u8 *s1 = D_80078E78; /* $s1: base, hoisted for the loop */
|
||||
register s32 i __asm__("$5"); /* $a1: counter (pin fixes the i/d swap) */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 a2;
|
||||
s32 d; /* $a0: natural alloc; load via $v0 temp */
|
||||
s32 v, last, hi, lo;
|
||||
@@ -3827,14 +3827,14 @@ s32 func_80162438(s32 _unused0) {
|
||||
extern s16 D_800B5C74;
|
||||
|
||||
u32 uVar2;
|
||||
register u8 *base __asm__("$18");
|
||||
register u8 *item __asm__("$17");
|
||||
u8 *base;
|
||||
u8 *item;
|
||||
|
||||
base = &(*(u8 *)&D_800AF630);
|
||||
uVar2 = func_800291DC(0x12);
|
||||
if ((uVar2 & 0x8000) != 0) {
|
||||
if (D_800B5BD8 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65A8;
|
||||
register u8 *t __asm__("$2") = base + 0x65A8; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EE678[0] = (s32)item;
|
||||
func_80024054(D_8018D040, D_801EE684);
|
||||
@@ -3845,7 +3845,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5BE2 = -D_800AF7BE / 2 + 0x28;
|
||||
}
|
||||
if (D_800B5C10 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x65E0;
|
||||
register u8 *t __asm__("$2") = base + 0x65E0; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EE678[1] = (s32)item;
|
||||
func_80024054(((u8 *)&D_8018D058), D_801EE6AC);
|
||||
@@ -3856,7 +3856,7 @@ s32 func_80162438(s32 _unused0) {
|
||||
D_800B5C1A = -D_800AF7BE / 2 + 0x30;
|
||||
}
|
||||
if (D_800B5C48 == 0) {
|
||||
register u8 *t __asm__("$2") = base + 0x6618;
|
||||
register u8 *t __asm__("$2") = base + 0x6618; // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
item = t;
|
||||
D_801EE678[2] = (s32)item;
|
||||
func_800242D0((s16)func_801626B8(), D_801EE6C8, 0x84);
|
||||
@@ -3931,10 +3931,10 @@ void func_801627E8(void)
|
||||
|
||||
extern s32 D_8011F750; /* canonical: engine_core.h `extern s32 D_8011F750;` (read here as a byte) */
|
||||
extern void (*D_8018D078[])(void); /* word-stride table of dispatch fn pointers */
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750;
|
||||
register u8 *p __asm__("$4") = (u8 *)&D_8011F750; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 idx;
|
||||
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */
|
||||
__asm__ __volatile__("" : "=r"(p) : "0"(p)); /* materialize &D_8011F750 into $a0 (defeat %lo-fold of the lbu) */ // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
idx = *p;
|
||||
if (idx != 0) {
|
||||
idx = idx - 1;
|
||||
@@ -4114,7 +4114,7 @@ void func_80163EC8(s32 param_1) {
|
||||
s32 psVar6;
|
||||
s32 iVar8;
|
||||
s32 iVar7;
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */
|
||||
register s32 uVar5 __asm__("$2"); /* PIN (flagged): uVar5 -> $v0 */ // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 uVar4;
|
||||
u8 uVar3;
|
||||
|
||||
@@ -4380,9 +4380,9 @@ extern u8 D_801EE6DF;
|
||||
|
||||
void func_80164BDC(s32 param_1)
|
||||
{
|
||||
register s32 p1 __asm__("$17"); /* $s1 */
|
||||
register s32 iVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 base __asm__("$18"); /* $s2 */
|
||||
register s32 p1 __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar1; /* $s0 */
|
||||
s32 base; /* $s2 */
|
||||
|
||||
p1 = param_1;
|
||||
iVar1 = ((s32 (*)(void))func_80146578)();
|
||||
@@ -4528,9 +4528,9 @@ extern s32 D_801EE718;
|
||||
|
||||
void func_801651B8(void * param_1)
|
||||
{
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */
|
||||
register s32 iVar2 __asm__("$17"); /* $s1 */
|
||||
register s32 p __asm__("$18"); /* $s2 */
|
||||
register s32 *puVar1 __asm__("$16"); /* $s0 */ // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 iVar2; /* $s1 */
|
||||
s32 p; /* $s2 */
|
||||
|
||||
p = param_1;
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(p, p + 0x2c, p + 0x50);
|
||||
@@ -4539,7 +4539,7 @@ void func_801651B8(void * param_1)
|
||||
do {
|
||||
if (puVar1[3] != 0) {
|
||||
s32 a0v = p;
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v));
|
||||
__asm__ __volatile__("" : "=r"(a0v) : "0"(a0v)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
((s32 (*)(s32, s32, s32))func_80165240)(a0v, (s32)puVar1, (s32)(puVar1 + 2));
|
||||
puVar1[3] = puVar1[3] + -1;
|
||||
}
|
||||
@@ -4870,7 +4870,7 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
unsigned int w9, w7, w, t, w3b;
|
||||
int w3;
|
||||
short sVar10;
|
||||
register unsigned int zr __asm__("$0");
|
||||
register unsigned int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
blk = D_800AE620;
|
||||
i6 = (short)param_1;
|
||||
@@ -4956,7 +4956,6 @@ s32 func_80166690(s32 param_1, s32 param_2)
|
||||
c.c32 = t; c.c22 = t; c.c31 = t; c.c21 = t;
|
||||
}
|
||||
|
||||
__asm__ __volatile__("" :: "r"(iVar3));
|
||||
func_80017758(&c, &blk);
|
||||
w3b = iVar3 - 1;
|
||||
iVar3 = w3b + zr;
|
||||
@@ -5110,18 +5109,18 @@ s32 func_80166F58(s32 param_1, s32 param_2, s32 param_3, s32 param_4)
|
||||
extern s32 D_8011D030;
|
||||
extern unsigned char D_801EE798[];
|
||||
|
||||
register int p2 __asm__("$20"); /* $s4 */
|
||||
register int p3 __asm__("$17"); /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */
|
||||
register int t3 __asm__("$6"); /* a2 */
|
||||
register int p2 __asm__("$20"); /* $s4 */ // !FAKE: pin $20 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int p3; /* $s1 */
|
||||
register int t2 __asm__("$5"); /* a1 */ // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int t3; /* a2 */
|
||||
unsigned short *puVar1;
|
||||
short iVar2;
|
||||
int eq;
|
||||
|
||||
iVar2 = 0;
|
||||
puVar1 = ((unsigned short *)&D_8011D030);
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2);
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3;
|
||||
t2 = ((short)param_2); SHB(t2); p2 = t2; SHB(p2); // !FAKE: launder via SHB — NEEDED DIFFERS; launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
t3 = ((short)param_3); SHB(t3); p3 = t3; // !FAKE: launder via SHB — NEEDED DIFFERS (P36 rung B tus2)
|
||||
eq = (p2 == p3);
|
||||
do {
|
||||
if ((puVar1 != ((unsigned short *)param_1)) &&
|
||||
@@ -5170,17 +5169,17 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
extern s32 D_801269AC;
|
||||
extern u16 D_80126CE0;
|
||||
Fr_801670E4 f;
|
||||
register u8 *p __asm__("$18"); /* $s2 */
|
||||
register s32 ent __asm__("$19"); /* $s3 */
|
||||
u8 *p; /* $s2 */
|
||||
s32 ent; /* $s3 */
|
||||
s16 i;
|
||||
s32 d;
|
||||
s32 node;
|
||||
u16 c;
|
||||
u8 cv;
|
||||
u8 cv2;
|
||||
register s32 gA __asm__("$2");
|
||||
register s32 cxv __asm__("$4");
|
||||
register s32 czv __asm__("$5");
|
||||
register s32 gA __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s32 cxv __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 czv;
|
||||
u8 *vc;
|
||||
u8 *ap;
|
||||
u8 *mp;
|
||||
@@ -5198,12 +5197,12 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f.col[1].b = 0x70;
|
||||
cv = *(u8 *)(ent + 0x12);
|
||||
f.cx = arg1;
|
||||
__asm__ __volatile__("");
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus2)
|
||||
va = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va));
|
||||
__asm__ __volatile__("" : "=r"(va) : "0"(va)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
f.cy = arg2;
|
||||
vb = va;
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb));
|
||||
__asm__ __volatile__("" : "=r"(vb) : "0"(vb)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018D3D8;
|
||||
i = 0;
|
||||
f.col[0].b = 0;
|
||||
@@ -5273,10 +5272,10 @@ s32 func_801670E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
|
||||
if (*(s32 *)(ent + 0x30) > 0) {
|
||||
vc = (u8 *)&f.cx;
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc));
|
||||
__asm__ __volatile__("" : "=r"(vc) : "0"(vc)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
mp = f.m1;
|
||||
ap = mp;
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap));
|
||||
__asm__ __volatile__("" : "=r"(ap) : "0"(ap)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
p = D_8018D3EC;
|
||||
i = 0;
|
||||
d = (s16)f.a8[0] >> 6;
|
||||
@@ -5370,8 +5369,8 @@ s32 func_80167AE0(s32 param_1, s32 param_2, s32 param_3) {
|
||||
struct Fr_80167AE0 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
|
||||
func_80168070(param_1, ((s16 *)param_2), ((s16 *)param_3), fr.matrix);
|
||||
@@ -5650,7 +5649,7 @@ void func_80168828()
|
||||
extern u16 D_8018D4B8[];
|
||||
|
||||
|
||||
register s32 a0v __asm__("$4");
|
||||
register s32 a0v __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 param_1 = a0v;
|
||||
Thing_80168828_80168828 thing;
|
||||
s16 matA[16];
|
||||
@@ -5658,7 +5657,7 @@ void func_80168828()
|
||||
s16 svec[4];
|
||||
u16 *p;
|
||||
short i;
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */
|
||||
register s32 c40 __asm__("$3"); /* $v1: hold the CSE'd 0x40 (else gcc folds to $v0 immediate) */ // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
c40 = 0x40;
|
||||
thing.f04 = 2;
|
||||
@@ -5963,8 +5962,8 @@ void func_8016A290(s32 param_1, void *param_2, void *param_3) {
|
||||
struct Fr_8016A290 fr;
|
||||
u8 *p;
|
||||
s32 i;
|
||||
register s32 t __asm__("$2");
|
||||
register s32 zr __asm__("$0");
|
||||
s32 t;
|
||||
register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 flags;
|
||||
s32 iVar3;
|
||||
|
||||
|
||||
@@ -2528,7 +2528,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u16 *pA = (*(u16 * *)&D_8018005C);
|
||||
u16 *pB = (*(u16 * *)&D_80180058);
|
||||
u16 *pC = (*(u16 * *)&D_80180064);
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 X, Y, cell, Xc, Yc;
|
||||
u16 k, off;
|
||||
int cnt;
|
||||
@@ -2536,7 +2536,7 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
u8 *s0;
|
||||
u16 raw;
|
||||
u32 hib;
|
||||
register int harg __asm__("$4");
|
||||
register int harg __asm__("$4"); // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s32 ret;
|
||||
void *p0C, *p10;
|
||||
u8 *p14, *p18, *p1C;
|
||||
@@ -2547,11 +2547,11 @@ s32 func_80133AB0(s16 flag, s16 x, s16 y, s32 arg3)
|
||||
pC[2] = pA[2] - pB[2];
|
||||
|
||||
X = ((((u16)x + 0x8000) >> 7) & 0x1ff) - map->ox;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Xc) : "r"(X)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((X & 0xffff) < map->w))
|
||||
return 0;
|
||||
Y = ((((u16)y + 0x8000) >> 7) & 0x1ff) - map->oy;
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y));
|
||||
__asm__("addu %0,%1,$zero" : "=r"(Yc) : "r"(Y)); // !FAKE: instruction addu — NEEDED DIFFERS (P36 rung B tus2)
|
||||
if (!((Y & 0xffff) < map->h))
|
||||
return 0;
|
||||
|
||||
@@ -2700,7 +2700,7 @@ s32 func_80133CD4(arg0, cmd, base, arr)
|
||||
s32 h;
|
||||
h = ((s16 *)pb0)[0];
|
||||
s1var = h << 16;
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory");
|
||||
__asm__("lh %0, 2(%2)" : "=r"(h) : "0"(h), "r"(pb0) : "memory"); // !FAKE: instruction lh — NEEDED DIFFERS (P36 rung B tus2)
|
||||
s0var = h << 16;
|
||||
}
|
||||
pb0[2] += q3v;
|
||||
@@ -2884,10 +2884,10 @@ s32 func_801345F8(s32 arg)
|
||||
extern u16 * D_80180058;
|
||||
extern u16 D_80191A20;
|
||||
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg);
|
||||
register u16 *cc __asm__("$4") = D_80180058;
|
||||
register u16 *param_1 __asm__("$5") = ((u16 *)arg); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register u16 *cc __asm__("$4") = D_80180058; // !FAKE: pin $4 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
int c8000 = 0x8000;
|
||||
register int zr __asm__("$0");
|
||||
register int zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u32 c1, c2, uVar6, uVar2, cnt, v14;
|
||||
u16 *ptmp, *puVar4, *puVar7, uVar1;
|
||||
int hi, harg, iVar9, iVar8, uVar3, uVar10, tbl;
|
||||
@@ -3078,8 +3078,8 @@ s32 func_80134C20(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
u16 temp_a1;
|
||||
s32 temp_s4;
|
||||
s32 c = arg0;
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c));
|
||||
__asm__ __volatile__("" : : "r"(arg0));
|
||||
__asm__ __volatile__("" : "=r"(c) : "0"(c)); // !FAKE: launder — NEEDED DIFFERS (P36 rung B tus2)
|
||||
__asm__ __volatile__("" : : "r"(arg0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
temp_s4 = arg2 + (M2C_FIELD(((void *)arg1), s16 *, 2) * 8);
|
||||
temp_s1 = *(s32 *)(arg3 + (M2C_FIELD(((void *)arg1), s16 *, 4) * 4));
|
||||
@@ -3230,22 +3230,22 @@ int func_80135168(u16 arg0, u16 *p1, u16 *p2)
|
||||
extern u8 D_80180058;
|
||||
extern u8 D_8018005C;
|
||||
extern u8 D_80180064;
|
||||
register s16 *pb0 __asm__("$8");
|
||||
register s16 *pac __asm__("$6");
|
||||
register s16 *pb8 __asm__("$7");
|
||||
register s16 *pb0 __asm__("$8"); // !FAKE: pin $8 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pac __asm__("$6"); // !FAKE: pin $6 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
register s16 *pb8 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2)
|
||||
u16 *pb4;
|
||||
u16 a, b;
|
||||
int a1v, a2v, d94;
|
||||
|
||||
pb0 = (*(s16 * *)&D_8018005C);
|
||||
__asm__ __volatile__("" : : "r"(pb0));
|
||||
__asm__ __volatile__("" : : "r"(pb0)); // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus2)
|
||||
|
||||
a = p2[0]; pac = (*(s16 * *)&D_80180058); pb0[0] = a; b = p1[0]; pb8 = (*(s16 * *)&D_80180064); pac[0] = b; pb8[0] = a - b;
|
||||
a = p2[1]; pb0[1] = a; b = p1[1]; pac[1] = b; pb8[1] = a - b;
|
||||
a = p2[2]; pb0[2] = a; b = p1[2]; pac[2] = b; pb8[2] = a - b;
|
||||
|
||||
a1v = pac[0]; a2v = pac[2]; d94 = D_80191A10;
|
||||
__asm__ __volatile__("" ::: "memory");
|
||||
__asm__ __volatile__("" ::: "memory"); // !FAKE: barrier memory — NEEDED DIFFERS (P36 rung B tus2)
|
||||
D_80191A20 = 0;
|
||||
if (func_80134A74(arg0, a1v, a2v, d94)) {
|
||||
pb4 = (*(u16 * *)&D_80180060);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user