提交 cc74659f 编写于 作者: U Ulf Möller

PERLASM - the wierdest programming language since Intercal.

add debug output facilities.
上级 90e7ce36
......@@ -3,6 +3,7 @@
package x86unix;
$label="L000";
$const="";
$align=($main'aout)?"4":"16";
$under=($main'aout)?"_":"";
......@@ -341,9 +342,13 @@ sub main'function_end
popl %ebx
popl %ebp
ret
.${func}_end:
EOF
push(@out,$tmp);
push(@out,$const);
$const="";
push(@out,".${func}_end:\n");
if ($main'cpp)
{ push(@out,"\tSIZE($func,.${func}_end-$func)\n"); }
elsif ($main'gaswin)
......@@ -459,3 +464,24 @@ sub main'data_word
{
push(@out,"\t.long $_[0]\n");
}
sub main'puts
{
$constl++;
&main'push('$Lstring' . $constl);
&main'call('puts');
&main'add("esp",4);
$const .= "Lstring$constl:\n\t.string \"@_[0]\"\n";
}
sub main'putx
{
$constl++;
&main'push($_[0]);
&main'push('$Lstring' . $constl);
&main'call('printf');
&main'add("esp",8);
$const .= "Lstring$constl:\n\t.string \"\%X\"\n";
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册