Open zbanks opened 2 years ago
PPC Resources & Info:
MarioRun.s
: gist.github.comcamera.s
: gist.github.com.text1
, from Tharo in Discord:[...] the doldisasm script will name the sections numerically based on the "section headers" in the dol, the proper section names correspond to those numerical names like so:
.init = .text0 .text = .text1 extab = .data0 extabindex = .data1 .ctors = .data2 .dtors = .data3 .rodata = .data4 .data = .data5 .bss = .bss .sdata = .data6 .sbss = .bss .sdata2 = .data7 .sbss2 = .bss
(bss is all the same, because the dol only states where the first bss region starts, and there is no section header entries for the bss sections, so projects using doldisasm usually have to split that out manually, so the bss sections are likely to always be named correctly else the project disassembly probably doesn't build matching yet)
re psq_st and psq_l, in the decompme discord: https://discord.com/channels/897066363951128586/897077740476448768/931259634185027605
This issue is just used to track progress on implementing common PPC instructions using github's checklist feature. This is a list of instructions used in SMS sorted by popularity (with their associated count).
lwz
(118317)addi
(113645)stw
(83449)li
(65901)bl
(58090)lfs
(46314)stfs
(28358)beq
(24540)lis
(22538)b
(22268)mr
(20079)bne
(19009)stb
(15124)mtlr
(15073)cmplwi
(13605)blr
(13176)lbz
(12208)cmpwi
(11851)fmuls
(10326)stwu
(9580)mflr
(9289)lfd
(9093)fsubs
(7925)add
(7697)slwi
(6244)bge
(6223)blrl
(5793)sth
(5679)clrlwi.
(5630)stfd
(5143)fadds
(5022)fcmpo
(4692)ble
(4658)extsb.
(4604)lhz
(4294)fmr
(3818)or.
(3803)rlwinm
(3503)cmpw
(3272)clrlwi
(3189)blt
(3178)xoris
(3171)fmadds
(2823)rlwinm.
(2768)cmplw
(2690)lha
(2316)lwzx
(2144)subf
(2110)mulli
(1770)ori
(1736)fctiwz
(1710)extsh.
(1531)cror
(1512)or
(1251)addis
(1238)stmw
(1226)lmw
(1223)stwx
(1198)srwi
(1094)lfsx
(996)fdivs
(939)bgt
(932)crclr
(880)psq_l
(870)fneg
(836)extsh
(765)ps_add
(710)ps_sub
(710)mtctr
(680)fmul
(669)fmsubs
(661)srawi
(605)fnmsubs
(604)bdnz
(593)fcmpu
(586)psq_st
(586)mullw
(570)sraw
(567)rlwimi
(450)oris
(416)extsb
(412)lbzx
(403)subfic
(368)addic.
(350)fabs
(321)neg
(307)lhzx
(286)and
(278)frsp
(271)slw
(264)cntlzw
(262)frsqrte
(254)ps_mul
(249)subfe
(249)mtspr
(245)psq_stu
(240)mulhw
(227)xor
(227)ps_msub
(213)lwzu
(205)stbx
(197)stfsx
(196)sthx
(188)addze
(186)fnmsub
(177)ps_madd
(173)mfspr
(172)addic
(156)srw
(143)ps_merge00
(138)bctr
(134)andi.
(133)ps_nmsub
(133)beqlr
(132)subf.
(127)ps_merge10
(119)ps_merge11
(119)mulhwu
(112)and.
(109)nor
(105)subfc
(103)lfsu
(101)divw
(99)lbzu
(98)stfsu
(82)eqv
(81)adde
(72)bgelr
(70)xori
(67)nop
(64)divwu
(62)stbu
(61)ps_muls0
(60)addc
(59)lhax
(57)bnelr
(55)mfmsr
(54)andc
(53)ps_sum0
(40)ps_merge01
(39)neg.
(38)ps_madds0
(38)ps_madds1
(38)rfi
(35)sync
(35)mfcr
(31)rlwnm
(30)lhzu
(28)mtmsr
(27)blelr
(23)bltlr
(22)isync
(22)fsub
(19)add.
(17)mfsr
(16)mtsr
(16)subfc.
(16)fmadd
(14)fres
(14)dcbz
(13)mtdbatu
(13)bgtlr
(12)mtibatu
(12)fnmadds
(11)subfze
(11)sthu
(10)crset
(9)mtcrf
(9)mtdbatl
(9)fadd
(8)mtibatl
(8)fdiv
(7)lhau
(7)addze.
(6)mtxer
(6)ps_sum1
(6)andis.
(5)mftb
(5)psq_lu
(5)dcbst
(4)icbi
(4)mfctr
(4)mfdar
(4)mfdbatl
(4)mfdbatu
(4)mfibatl
(4)mfibatu
(4)mfxer
(4)subfe.
(4)dcbf
(3)dcbi
(3)fsel
(3)mfdsisr
(3)mffs
(3)mftbu
(3)mtdar
(3)mtdsisr
(3)ps_muls1
(3)ps_neg
(3)sc
(3)srawi.
(3)beq+
(2)fmsub
(2)ps_cmpo0
(2)ps_nmadd
(2)psq_lx
(2)andc.
(1)bdz
(1)bla
(1)ble+
(1)dcbt
(1)dcbz_l
(1)lfdx
(1)mfpvr
(1)mtfsb1
(1)mtfsf
(1)mtictc
(1)mttbl
(1)mttbu
(1)mullw.
(1)rotlwi
(1)xor.
(1)Generated with:
Edit: This issue was used for tracking progress on the
ppc2cpp
branch, but that branch has now been merged.