looks like it works now

This commit is contained in:
Ulf Möller 2000-12-05 05:39:43 +00:00
parent b50118ca3e
commit 0c34556cbd

View File

@ -4,6 +4,7 @@ package x86unix;
$label="L000"; $label="L000";
$const=""; $const="";
$constl=0;
$align=($main'aout)?"4":"16"; $align=($main'aout)?"4":"16";
$under=($main'aout)?"_":""; $under=($main'aout)?"_":"";
@ -484,8 +485,8 @@ sub main'putx
&main'push($_[0]); &main'push($_[0]);
&main'push('$Lstring' . ++$constl); &main'push('$Lstring' . ++$constl);
&main'call('printf'); &main'call('printf');
$stack-=8;
&main'add("esp",8); &main'add("esp",8);
$stack-=8;
&popvars(); &popvars();
$const .= "Lstring$constl:\n\t.string \"\%X\"\n"; $const .= "Lstring$constl:\n\t.string \"\%X\"\n";
@ -497,10 +498,9 @@ sub main'printf
&pushvars(); &pushvars();
for ($i = @_ - 1; $i >= 0; $i--) for ($i = @_ - 1; $i >= 0; $i--)
{ {
$constl++;
if ($i == 0) # change this to support %s format strings if ($i == 0) # change this to support %s format strings
{ {
&main'push('$Lstring' . $constl); &main'push('$Lstring' . ++$constl);
$const .= "Lstring$constl:\n\t.string \"@_[$i]\"\n"; $const .= "Lstring$constl:\n\t.string \"@_[$i]\"\n";
} }
else else
@ -517,8 +517,8 @@ sub main'printf
} }
&main'call('printf'); &main'call('printf');
$stack-=4*@_; $stack-=4*@_;
&popvars();
&main'add("esp",4*@_); &main'add("esp",4*@_);
&popvars();
} }
sub pushvars sub pushvars