From b185de82a4e2b8982e5a6c211a436b749a9735c4 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Thu, 7 Jun 2012 12:05:34 -0400 Subject: [PATCH] cmd/gc: limit data disassembly to -SS This makes -S useful again. R=ken2 CC=golang-dev https://golang.org/cl/6302054 --- src/cmd/5g/gobj.c | 3 ++- src/cmd/6g/gobj.c | 3 ++- src/cmd/8g/gobj.c | 3 ++- src/cmd/gc/doc.go | 4 +++- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/cmd/5g/gobj.c b/src/cmd/5g/gobj.c index b562ba888b..2763e7b167 100644 --- a/src/cmd/5g/gobj.c +++ b/src/cmd/5g/gobj.c @@ -198,7 +198,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/gobj.c b/src/cmd/6g/gobj.c index 80de2f750b..8c9208374a 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/8g/gobj.c b/src/cmd/8g/gobj.c index d8c8f5ab9f..da0055cd9b 100644 --- a/src/cmd/8g/gobj.c +++ b/src/cmd/8g/gobj.c @@ -242,7 +242,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/gc/doc.go b/src/cmd/gc/doc.go index 163d3862c3..8d8f8967b7 100644 --- a/src/cmd/gc/doc.go +++ b/src/cmd/gc/doc.go @@ -47,7 +47,9 @@ Flags: -N disable optimizations -S - write assembly language text to standard output + write assembly language text to standard output (code only) + -SS + write assembly language text to standard output (code and data) -u disallow importing packages not marked as safe -V -- 2.48.1