This patch allows 0-9 in the opcode name (for atan2 and log10 etc...). It also uses the pack_type hash for the pack instead of the real_type.
Index: assemble.pl =================================================================== RCS file: /home/perlcvs/parrot/assemble.pl,v retrieving revision 1.11 diff -u -r1.11 assemble.pl --- assemble.pl 2001/09/13 13:42:41 1.11 +++ assemble.pl 2001/09/13 14:37:43 @@ -31,7 +31,7 @@ open GUTS, "interp_guts.h"; my %opcodes; while (<GUTS>) { - next unless /\tx\[(\d+)\] = ([a-z_]+);/; + next unless /\tx\[(\d+)\] = ([a-z0-9_]+);/; $opcodes{$2}{CODE} = $1; } close GUTS; @@ -127,7 +127,7 @@ foreach (0..$#args) { my($rtype)=$opcodes{$opcode}{RTYPES}[$_]; - my($type)=$opcodes{$opcode}{TYPES}[$_]; + my($type)=$pack_type{$opcodes{$opcode}{TYPES}[$_]}; if($rtype eq "I" || $rtype eq "N" || $rtype eq "P" || $rtype eq "S") { # its a register argument