summaryrefslogtreecommitdiff
path: root/src/cmd/cc
diff options
context:
space:
mode:
authorKai Backman <kaib@golang.org>2009-11-06 13:50:58 -0800
committerKai Backman <kaib@golang.org>2009-11-06 13:50:58 -0800
commit584f96a50b80cc5ab388bbbf8242003c89163b9d (patch)
tree6fb9e86d6a08c31138b1bb0f0d0766db9c28bc79 /src/cmd/cc
parent425be4642cd380b0cdccde93ff21b88bdb72e028 (diff)
downloadgolang-584f96a50b80cc5ab388bbbf8242003c89163b9d.tar.gz
with rsc: argsize rounding to 8 smashes stack data on 32bit machines.
R=rsc http://go/go-review/1024011
Diffstat (limited to 'src/cmd/cc')
-rw-r--r--src/cmd/cc/pgen.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/cmd/cc/pgen.c b/src/cmd/cc/pgen.c
index 9a7a3e7e1..d430ec91b 100644
--- a/src/cmd/cc/pgen.c
+++ b/src/cmd/cc/pgen.c
@@ -52,7 +52,11 @@ argsize(void)
}
//print(" %d %T\n", s, t);
}
- return (s+7) & ~7;
+ if(thechar == '6')
+ s = (s+7) & ~7;
+ else
+ s = (s+3) & ~3;
+ return s;
}
void