📄 32bytes_9cycle_osd.txt
字号:
.global _osd
;.global _MyFun
; A4 --> pIn0
; B4 --> pMask
; A6 --> nlongth
;_MyFun:
; mvk .s1 0x3,a1
; mvk .s1 0x2,a2
; and .l1 a1,a2,a1
; cmpeq4 .s1 a2,a1,a2
; xpnd4 .m1 a1,a1
_osd:
; mvkl .s1 0x7c3839b0,a4
; mvkh .s1 0x7c3839b0,a4
; mvkl .s2 0x7c383800,b4
; mvkh .s2 0x7c383800,b4
lddw .d2 *b4++,a29:a28
|| MV .S1 A6,a1
|| mv .L2 b4,b5
lddw .d1 *a4++,a31:a30
|| lddw .d2 *b4++,b29:b28 ;++++1
|| zero .l1 a9
|| mv .s1 a4,a5
; lddw .d2 *b4++,b29:b28
;|| lddw .d1 *a4++,b31:b30
lddw .d1 *a4++,b31:b30 ;++++1
|| SHR .S1 A1,5,A1
SUB .S1 A1,2,A1
lddw .d2 *b4++,a21:a20
lddw .d1 *a4++,a23:a22
lddw .d2 *b4++,b21:b20
lddw .d1 *a4++,b23:b22
;Get a29,a28 (mask64_1)
cmpeq4 .s1 a9,a29,a27 ;+++++0
;Get a31,a30 (src64_1);Get b29,b28(mask64_2)
xpnd4 .m1 a27,a25 ;+++++0
|| cmpeq4 .s1 a9,a28,a26 ;+++++0
|| cmpeq4 .s2x a9,b29,b27 ;+++++1
LOOP:
xpnd4 .m1 a26,a24 ;+++++0
|| xpnd4 .m2 b27,b25 ;+++++1
|| cmpeq4 .s2 a9,b28,b26 ;+++++1
|| cmpeq4 .s1 a9,a21,a19 ;+++++4
;Get b31,b30 (src64_2)
and .l1 a25,a31,a31 ;+++++0
|| xpnd4 .m2 b26,b24 ;+++++1
|| xpnd4 .m1 a19,a17 ;+++++4
|| cmpeq4 .s1 a9,a20,a18 ;+++++5
and .s1 a24,a30,a30 ;+++++0
|| and .l2 b25,b31,b31 ;+++++1
|| xpnd4 .m1 a18,a16 ;+++++5
|| cmpeq4 .s2 a9,b21,b19 ;+++++6
or .l1 a29,a31,a31 ;+++++0
|| and .d2 b24,b30,b30 ;+++++1
|| or .l2 b29,b31,b31 ;+++++1
|| and .s1 a17,a23,a23 ;+++++4
|| xpnd4 .m2 b19,b17 ;+++++6
|| cmpeq4 .s2 a9,b20,b18 ;+++++7
or .l1 a28,a30,a30
|| or .l2 b28,b30,b30 ;+++++1
|| or .s1 a21,a23,a23 ;+++++4
|| and .d1 a16,a22,a22 ;+++++5
|| xpnd4 .m2 b18,b16 ;+++++7
|| lddw .d2 *b4++,a29:a28 ;loop+1
stdw .d1 a31:a30,*a5++
|| or .l1 a20,a22,a22 ;+++++5
|| and .l2 b17,b23,b23 ;+++++6
lddw .d1 *a4++,a31:a30 ;loop+2
lddw .d2 *b4++,b29:b28 ;loop+3
stdw .d1t2 b31:b30,*a5++ ;+++++1
|| or .l2 b21,b23,b23 ;+++++6
|| and .s2 b16,b22,b22 ;+++++7
|| BDEC .S1 LOOP, A1 ;JUMP
lddw .d1 *a4++,b31:b30 ;loop+4
|| lddw .d2 *b4++,a21:a20 ;loop+5
|| or .l2 b20,b22,b22 ;+++++7
|| cmpeq4 .s1 a9,a29,a27 ;+++++0
stdw .d1 a23:a22,*a5++ ;+++++5
|| lddw .d2 *b4++,b21:b20 ;loop+7
stdw .d1 b23:b22,*a5++ ;+++++7
lddw .d1 *a4++,a23:a22 ;loop+6
|| xpnd4 .m1 a27,a25
|| cmpeq4 .s1 a9,a28,a26
|| cmpeq4 .s2x a9,b29,b27 ;+++++1
lddw .d1 *a4++,b23:b22 ;loop+8
b .s2 b3
nop 5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -