[Wisp-cvs] wisp/users/dig tran.py,1.41,1.42
Status: Alpha
Brought to you by:
digg
From: <di...@us...> - 2003-04-22 13:45:19
|
Update of /cvsroot/wisp/wisp/users/dig In directory sc8-pr-cvs1:/tmp/cvs-serv30761 Modified Files: tran.py Log Message: minor cleanup Index: tran.py =================================================================== RCS file: /cvsroot/wisp/wisp/users/dig/tran.py,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- tran.py 22 Apr 2003 13:21:47 -0000 1.41 +++ tran.py 22 Apr 2003 13:45:13 -0000 1.42 @@ -230,22 +230,6 @@ res += '- ' + `-this.scalar` return res -def b_comma (n): - if isinstance(n, Integer_Literal): cursect.emit_byte(long(n) % 0x100) - elif isinstance(n, Symbol_Literal): cursect.emit_byte_sum([str(n)]) - else: raise 'Literal expected', n -def w_comma (n): - if isinstance(n, Integer_Literal): cursect.emit_wyde(long(n) % 0x10000) - elif isinstance(n, Symbol_Literal): cursect.emit_wyde_sum([str(n)]) - else: raise 'Literal expected', n -def t_comma (n): - if isinstance(n, Integer_Literal): cursect.emit_tetra(long(n) % 0x100000000L) - elif isinstance(n, Symbol_Literal): cursect.emit_tetra_sum([str(n)]) - else: raise 'Literal expected', n -def dollar_minus_tetra_comma (n): - if isinstance(n, Symbol_Literal): - cursect.emit_tetra_sum([str(n)], relative = 1) - else: raise 'Symbol expected', n def label (name): cursect.place_symbol('&' + name) def dot_bss (): @@ -412,7 +396,6 @@ MA_ARGC = 007 MA_PREFIX = 010 Meaning = { - '$-t, sym': ('builtin', dollar_minus_tetra_comma, 1), '+ const const': ('builtin', plus, 2), '- const const': ('builtin', minus, 2), '.bss': ('builtin', dot_bss, 0), @@ -423,7 +406,6 @@ ':regs': ('builtin', colon_regs, 0 | MA_PREFIX), 'align int': ('builtin', align, 1), 'any': ('simple', Class_Marker('any')), - 'b, lit': ('builtin', b_comma, 1), 'const': ('simple', Class_Marker('const')), 'drop any': ('builtin', drop, 1), 'dup any': ('builtin', dup, 1), @@ -438,9 +420,28 @@ 'sum': ('simple', Class_Marker('sum')), 'swap any any': ('builtin', swap, 2), 'sym': ('simple', Class_Marker('sym')), - 't, lit': ('builtin', t_comma, 1), - 'w, lit': ('builtin', w_comma, 1), } + +# Emitters +def byte_comma_int (n): cursect.emit_byte(long(n) % 0x100L) +Meaning['b, int'] = 'builtin', byte_comma_int, 1 +def byte_comma_sym (a): cursect.emit_byte_sum([str(a)]) +Meaning['b, sym'] = 'builtin', byte_comma_sym, 1 + +def wyde_comma_int (n): cursect.emit_wyde(long(n) % 0x10000L) +Meaning['w, int'] = 'builtin', wyde_comma_int, 1 +def wyde_comma_sym (a): cursect.emit_wyde_sum([str(a)]) +Meaning['w, sym'] = 'builtin', wyde_comma_sym, 1 + +def tetra_comma_int (n): cursect.emit_tetra(long(n) % 0x100000000L) +Meaning['t, int'] = 'builtin', tetra_comma_int, 1 +def tetra_comma_sym (a): cursect.emit_tetra_sum([str(a)]) +Meaning['t, sym'] = 'builtin', tetra_comma_sym, 1 + +def dollar_minus_tetra_comma_sym (n): + cursect.emit_tetra_sum([str(n)], relative = 1) +Meaning['$-t, sym'] = 'builtin', dollar_minus_tetra_comma_sym, 1 + current_recordee = None current_register_family = 0 State = state_outer |