evocation/describe-data.sed
Irene Knapp 48de43f9ed
implement all the remaining Forth words that need flatassembler versions
wow!!!!!

the next step is implementing the Forth lexer. wow!

Force-Push: yes
Change-Id: If847c1d7b3949f7d449279e0783021484f96e6a8
2026-04-13 19:31:59 -07:00

49 lines
1,006 B
Sed

# ./quine | sed -f describe-data.sed > data.txt
:start
/0000000008/!d
/^0000000008/bmain
bstart
:main
n
s/_/-/g
s/\<roll3\>/3roll/g
s/\<unroll3\>/3unroll/g
s/\<dup2\>/2dup/g
s/\<drop2\>/2drop/g
s/^zbranch\>/0branch/g
s/\([^"]\)\<zbranch\>/\10branch/g
s/\<eq\>/=/g
s/\<ne\>/!=/g
s/\<gt\>/>/g
s/\<lt\>/</g
s/\<ge\>/>=/g
s/\<le\>/<=/g
s/\([^a-z]\)-unsigned\>/\1unsigned/g
s/\<divmod\>\([^-]\)/\/%\1/g
s/\<mul\>\([^-]\)/*\1/g
s/\<sub\>\([^-]\)/-\1/g
s/\<add\>\([^-]\)/+\1/g
s/\<\([er][acdb]x\)\>/:\1/g
s/\<\([er]\?\([sb]p\|[sd]i\)\)\>/:\1/g
s/\<\([acdb][lhx]\)\>/:\1/g
s/\<\(r[89]\|r1[0-5]\)\>/:\1/g
s/\([^-]\)\<cc-/\1:cc-/g
s/^cc-/:cc-/g
s/\<fetch\(8\|16\|32\|64\)\>/\1@/g
s/\<store\(8\|16\|32\|64\)\>/\1!/g
s/\<addstore\>/+!/g
s/\<substore\>/-!/g
s/\<fetch-value-stack\>/value@/g
s/\<store-value-stack\>/value!/g
s/\<fetch-control-stack\>/control@/g
s/\<store-control-stack\>/control!/g
s/\<fetch-entry-flags\>/entry-flags@/g
s/\<store-entry-flags\>/entry-flags!/g
s/\<fetch\>/@/g
s/\<store\>/!/g
bmain