From 0b268440b9d557f64cba6f7db644a6536fa2b158 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Fri, 1 Feb 2013 00:15:02 +0100 Subject: 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 #include #include 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 --- sys/src/cmd/6l/optab.c | 2 ++ 1 file changed, 2 insertions(+) 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[] = -- cgit v1.2.3