~rabbits/uxnlin

8e8ebc204a11636468e1417d9e164dbb2f68ca4f — Devine Lu Linvega 2 months ago bd0ba8f
Added warnings count to report
1 files changed, 19 insertions(+), 7 deletions(-)

M src/uxnlin.tal
M src/uxnlin.tal => src/uxnlin.tal +19 -7
@@ 8,7 8,7 @@
	@src $40
	@token $30 &last $30 &last2 $30
	@scope $20
	@stats &lines $2 &tokens $2
	@stats &lines $2 &tokens $2 &warnings $2

(
@|vectors )


@@ 214,6 214,7 @@ JMP2r

@print-warn ( str* -- )

	.stats/warnings LDZ2k INC2 ROT STZ2
	LIT "- #18 DEOk DEO #2018 DEO
	;token ;pstr JSR2 #2018 DEO
	LIT "" #18 DEO ;pstr JSR2 LIT "" #18 DEO


@@ 223,6 224,7 @@ JMP2

@print-warn2 ( str* -- )

	.stats/warnings LDZ2k INC2 ROT STZ2
	LIT "- #18 DEOk DEO #2018 DEO
	;token/last ;pstr JSR2 #2018 DEO
	;token ;pstr JSR2 #2018 DEO


@@ 233,6 235,7 @@ JMP2

@print-warn3 ( str* -- )

	.stats/warnings LDZ2k INC2 ROT STZ2
	LIT "- #18 DEOk DEO #2018 DEO
	;token/last2 ;pstr JSR2 #2018 DEO
	;token/last ;pstr JSR2 #2018 DEO


@@ 257,6 260,8 @@ JMP2r
	;dict/with-txt ;pstr JSR2 #2018 DEO
	.stats/tokens LDZ2 ;pdec JSR2 #2018 DEO
	;dict/tokens-txt ;pstr JSR2 LIT ", #18 DEO #2018 DEO
	.stats/warnings LDZ2 ;pdec JSR2 #2018 DEO
	;dict/warnings-txt ;pstr JSR2
	.stats/lines LDZ2 ;pdec JSR2 #2018 DEO
	;dict/lines-txt ;pstr JSR2 LIT ". #18 DEO #0a18 DEO



@@ 355,6 360,7 @@ JMP2r
	&tokens-txt "tokens $1
	&lines-txt "lines $1
	&default-scope "@on-reset $1
	&warnings-txt "warnings 20 "on 20 $1

(
@|hints )


@@ 369,6 375,7 @@ JMP2r
@eagerstack "Eager-stack $1 ( arithmetic performed before stashing )
@tokenlen "Token-length $1 ( token is longer than 24 characters )
@combine "Combine $1 ( sequences of two literal bytes )
@uncalled "Uncalled $1 ( using JSR when could be calling )

@inc "INC $1 @inc2 "INC2 $1
@inc-twice "INC 20 "INC $1


@@ 439,7 446,6 @@ JMP2r
@ldaksth "LDAk 20 "STH $1
@inc2ora "INC2 20 "ORA $1


(
@|rules )



@@ 497,10 503,6 @@ JMP2r
	"AND   $1 "JMP    $1 =unsafe
	"ORA   $1 "JMP    $1 =unsafe
	"EOR   $1 "JMP    $1 =unsafe
	";__   $1 "STH2   $1 =unstashed
	".__   $1 "STH    $1 =unstashed
	"#__   $1 "STH    $1 =unstashed
	"#____ $1 "STH2   $1 =unstashed
	"LDZ $1 "STH $1 =latestack
	"LDZ2 $1 "STH2 $1 =latestack
	"DEIk $1 "STH $1 =latestack


@@ 527,7 529,6 @@ JMP2r
	"STH2 $1 "GTHr $1 =eagerstack
	"STH2 $1 "LTHr $1 =eagerstack
	"STH2 $1 "LDAr $1 =eagerstack
	"#__   $1 "#__    $1 =combine
	"DUP   $1 "DUP    $1 =keep
	"DUP2  $1 "DUP2   $1 =keep
	"DUP   $1 "INC    $1 =keep


@@ 610,6 611,17 @@ JMP2r
	"STH2k $1 "LDAr $1 =ldaksth
	"#ff $1 "NEQ $1 =inc
	"DUP2 $1 "NIP $1 =dup
	"#__   $1 "#__    $1 =combine
	";__   $1 "STH2   $1 =unstashed
	".__   $1 "STH    $1 =unstashed
	"#__   $1 "STH    $1 =unstashed
	"#____ $1 "STH2   $1 =unstashed
( 	";__ $1 "JMP2 $1 =uncalled
	",__ $1 "JMP $1 =uncalled
	";__ $1 "JCN2 $1 =uncalled
	",__ $1 "JCN $1 =uncalled
	";__ $1 "JSR2 $1 =uncalled
	",__ $1 "JSR $1 =uncalled )

&end