~rabbits/uxnlin

618844149d0193a3cfc3498c1ce2abcfce6923a4 — neauoire 3 months ago 35bce01
Added static byte ari
1 files changed, 8 insertions(+), 5 deletions(-)

M src/uxnlin.tal
M src/uxnlin.tal => src/uxnlin.tal +8 -5
@@ 96,7 96,6 @@ JMP2r
		&no-inc

	( 2 elements )

	;rules2/end ;rules2
	&loop2
		( a ) DUP2 ;token/last ;scmp-wild JSR2 STH ;scap JSR2 INC2


@@ 108,7 107,6 @@ JMP2r
	POP2 POP2

	( 3 elements )

	;rules3/end ;rules3
	&loop3
		( a ) DUP2 ;token/last2 ;scmp-wild JSR2 STH ;scap JSR2 INC2


@@ 120,16 118,21 @@ JMP2r
		INC2 INC2 GTH2k ,&loop3 JCN
	POP2 POP2

	( static arithmetic sequence )

	( short static arithmetic sequence: #1234 #0001 ADD2 )
	;token ;is-arithmetic JSR2 #00 EQU ,&no-ari JCN
	;token/last ;is-static JSR2 #00 EQU ,&no-ari JCN
	;token/last2 ;is-static JSR2 #00 EQU ,&no-ari JCN
		;static ;print-warn2 JSR2
		&no-ari

	( literal duplicates )
	( byte static arithmetic sequence: #1201 ADD )
	;token ;is-arithmetic JSR2 #00 EQU ,&no-ari2 JCN
	;token ;slen JSR2 #0003 NEQ2 ,&no-ari2 JCN
	;token/last ;is-litshort JSR2 #00 EQU ,&no-ari2 JCN
		;static ;print-warn2 JSR2
		&no-ari2

	( literal duplicates: #1234 #1234 )
	;token ;is-static JSR2 #00 EQU ,&no-lit JCN
	;token ;token/last ;scmp JSR2 #00 EQU ,&no-lit JCN
		;static-dup ;print-warn2 JSR2