summaryrefslogtreecommitdiff
path: root/src/cmd/6g
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/6g')
-rw-r--r--src/cmd/6g/gobj.c3
-rw-r--r--src/cmd/6g/reg.c4
2 files changed, 4 insertions, 3 deletions
diff --git a/src/cmd/6g/gobj.c b/src/cmd/6g/gobj.c
index 80de2f750..8c9208374 100644
--- a/src/cmd/6g/gobj.c
+++ b/src/cmd/6g/gobj.c
@@ -244,7 +244,8 @@ dumpfuncs(void)
if(isblank(pl->name))
continue;
- if(debug['S']) {
+ // -S prints code; -SS prints code and data
+ if(debug['S'] && (pl->name || debug['S']>1)) {
s = S;
if(pl->name != N)
s = pl->name->sym;
diff --git a/src/cmd/6g/reg.c b/src/cmd/6g/reg.c
index bed9f8da6..049c63f17 100644
--- a/src/cmd/6g/reg.c
+++ b/src/cmd/6g/reg.c
@@ -780,8 +780,8 @@ brk:
p->to.branch = p->to.branch->link;
}
- if(r1 != R) {
- r1->link = freer;
+ if(lastr != R) {
+ lastr->link = freer;
freer = firstr;
}