diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-02-01 00:15:02 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-02-01 00:15:02 +0100 |
commit | 0b268440b9d557f64cba6f7db644a6536fa2b158 (patch) | |
tree | f6c6af38e836b929851e6d77330aa0aba4455daa /sys/src/cmd/6l | |
parent | 029a8087a35bf8fcc3f6e5418af6ae996d640364 (diff) |
6l: eleminate NOP X0 instructions (from eriks 6l-nop-x0 patch)
erik found that -N left NOPs in that 6l couldn't ignore.
add Xn to the NOP table.
bonanza; cat > fp.c
#include <u.h>
#include <libc.h>
#include <stdio.h>
void
main(void)
{
double g;
g = -0.;
print("%g\n", g);
printf("%g\n", g);
exits("");
}
bonanza; 6c -N -FVTw fp.c
bonanza; 6l -o 6.fp fp.6
main: doasm: notfound from=6f to=34 (939) NOP ,X0
main: doasm: notfound from=6f to=34 (939) NOP ,X0
main: doasm: notfound from=6f to=34 (939) NOP ,X0
Diffstat (limited to 'sys/src/cmd/6l')
-rw-r--r-- | sys/src/cmd/6l/optab.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/src/cmd/6l/optab.c b/sys/src/cmd/6l/optab.c index 379f00aa2..133bb1d2f 100644 --- a/sys/src/cmd/6l/optab.c +++ b/sys/src/cmd/6l/optab.c @@ -15,8 +15,10 @@ uchar ynop[] = Ynone, Ynone, Zpseudo,1, Ynone, Yml, Zpseudo,1, Ynone, Yrf, Zpseudo,1, + Ynone, Yxr, Zpseudo,1, Yml, Ynone, Zpseudo,1, Yrf, Ynone, Zpseudo,1, + Yxr, Ynone, Zpseudo,1, 0 }; uchar yxorb[] = |