Em Wed, May 20, 2015 at 03:07:39PM +0200, Martin LiÅka escreveu:
On 05/19/2015 04:04 PM, Arnaldo Carvalho de Melo wrote:
Em Tue, May 19, 2015 at 03:41:03PM +0200, Martin LiÅka escreveu:
Following patch is fix for wrong DEBUG configuration.
Can you please state, in the changelog, what you think is wrong and how
your proposed change fixes it, so that after reading your intent I can
go and look at the code to see if it matches that?
Ok, that improved things, thanks! A question:
Currently, GCC optimizes -O6 same as -O3 level. Right optimize debugging
experience is given by passing -Og to compiler.
Is this is this -Og available in old gcc versions? When was it
introduced? Do you know?
- Arnaldo
Assign default value for pointers that are identified by compiler as
non-initialized.
Signed-off-by: Martin Liska <mliska@xxxxxxx>
>From b5f2b42b279ab497e92d41e1f4021dd5cb6ae3ce Mon Sep 17 00:00:00 2001
From: mliska <mliska@xxxxxxx>
Date: Thu, 2 Apr 2015 15:24:49 +0200
Subject: [PATCH] perf: fix wrong DEBUG configuration
Currently, GCC optimizes -O6 same as -O3 level. Right optimize debugging
experience is given by passing -Og to compiler.
Assign default value for pointers that are identified by compiler as
non-initialized.
Signed-off-by: Martin Liska <mliska@xxxxxxx>
---
tools/perf/arch/common.c | 2 +-
tools/perf/config/Makefile | 2 +-
tools/perf/util/symbol.c | 2 +-
tools/perf/util/trace-event-parse.c | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/tools/perf/arch/common.c b/tools/perf/arch/common.c
index 49776f1..b7bb42c 100644
--- a/tools/perf/arch/common.c
+++ b/tools/perf/arch/common.c
@@ -61,7 +61,7 @@ const char *const mips_triplets[] = {
static bool lookup_path(char *name)
{
bool found = false;
- char *path, *tmp;
+ char *path, *tmp = NULL;
char buf[PATH_MAX];
char *env = getenv("PATH");
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index e3b3724..ca8d3e3 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -129,7 +129,7 @@ ifndef DEBUG
endif
ifeq ($(DEBUG),0)
- CFLAGS += -O6
+ CFLAGS += -Og
endif
ifdef PARSER_DEBUG
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index 82a31fd..a19fbd4 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -400,7 +400,7 @@ static struct symbol *symbols__find_by_name(struct rb_root *symbols,
const char *name)
{
struct rb_node *n;
- struct symbol_name_rb_node *s;
+ struct symbol_name_rb_node *s = NULL;
if (symbols == NULL)
return NULL;
diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
index 25d6c73..d495741 100644
--- a/tools/perf/util/trace-event-parse.c
+++ b/tools/perf/util/trace-event-parse.c
@@ -173,7 +173,7 @@ void parse_ftrace_printk(struct pevent *pevent,
char *line;
char *next = NULL;
char *addr_str;
- char *fmt;
+ char *fmt = NULL;
line = strtok_r(file, "\n", &next);
while (line) {
--
2.1.4