* [PATCH v1 1/3] perf bench: Avoid NDEBUG warning
@ 2023-03-30 18:38 Ian Rogers
2023-03-30 18:38 ` [PATCH v1 2/3] perf block-range: Move debug code behind ifndef NDEBUG Ian Rogers
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Ian Rogers @ 2023-03-30 18:38 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Ian Rogers, Adrian Hunter, Sean Christopherson, Paolo Bonzini,
linux-perf-users, linux-kernel
With NDEBUG set the asserts are compiled out. This yields
"unused-but-set-variable" variables. Move these variables behind
NDEBUG to avoid the warning.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/bench/find-bit-bench.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/tools/perf/bench/find-bit-bench.c b/tools/perf/bench/find-bit-bench.c
index d103c3136983..7e25b0e413f6 100644
--- a/tools/perf/bench/find-bit-bench.c
+++ b/tools/perf/bench/find-bit-bench.c
@@ -61,7 +61,6 @@ static int do_for_each_set_bit(unsigned int num_bits)
double time_average, time_stddev;
unsigned int bit, i, j;
unsigned int set_bits, skip;
- unsigned int old;
init_stats(&fb_time_stats);
init_stats(&tb_time_stats);
@@ -73,7 +72,10 @@ static int do_for_each_set_bit(unsigned int num_bits)
__set_bit(i, to_test);
for (i = 0; i < outer_iterations; i++) {
- old = accumulator;
+#ifndef NDEBUG
+ unsigned int old = accumulator;
+#endif
+
gettimeofday(&start, NULL);
for (j = 0; j < inner_iterations; j++) {
for_each_set_bit(bit, to_test, num_bits)
@@ -85,7 +87,9 @@ static int do_for_each_set_bit(unsigned int num_bits)
runtime_us = diff.tv_sec * USEC_PER_SEC + diff.tv_usec;
update_stats(&fb_time_stats, runtime_us);
+#ifndef NDEBUG
old = accumulator;
+#endif
gettimeofday(&start, NULL);
for (j = 0; j < inner_iterations; j++) {
for (bit = 0; bit < num_bits; bit++) {
--
2.40.0.348.gf938b09366-goog
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH v1 2/3] perf block-range: Move debug code behind ifndef NDEBUG
2023-03-30 18:38 [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Ian Rogers
@ 2023-03-30 18:38 ` Ian Rogers
2023-03-30 18:38 ` [PATCH v1 3/3] perf build: Conditionally define NDEBUG Ian Rogers
2023-03-30 21:11 ` [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Arnaldo Carvalho de Melo
2 siblings, 0 replies; 4+ messages in thread
From: Ian Rogers @ 2023-03-30 18:38 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Ian Rogers, Adrian Hunter, Sean Christopherson, Paolo Bonzini,
linux-perf-users, linux-kernel
Make good on a comment and avoid a unused-but-set-variable warning.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/block-range.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/tools/perf/util/block-range.c b/tools/perf/util/block-range.c
index 1be432657501..680e92774d0c 100644
--- a/tools/perf/util/block-range.c
+++ b/tools/perf/util/block-range.c
@@ -11,11 +11,7 @@ struct {
static void block_range__debug(void)
{
- /*
- * XXX still paranoid for now; see if we can make this depend on
- * DEBUG=1 builds.
- */
-#if 1
+#ifndef NDEBUG
struct rb_node *rb;
u64 old = 0; /* NULL isn't executable */
--
2.40.0.348.gf938b09366-goog
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH v1 3/3] perf build: Conditionally define NDEBUG
2023-03-30 18:38 [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Ian Rogers
2023-03-30 18:38 ` [PATCH v1 2/3] perf block-range: Move debug code behind ifndef NDEBUG Ian Rogers
@ 2023-03-30 18:38 ` Ian Rogers
2023-03-30 21:11 ` [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Arnaldo Carvalho de Melo
2 siblings, 0 replies; 4+ messages in thread
From: Ian Rogers @ 2023-03-30 18:38 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Ian Rogers, Adrian Hunter, Sean Christopherson, Paolo Bonzini,
linux-perf-users, linux-kernel
When a build is done without DEBUG=1 then define NDEBUG. This will
compile out asserts and other debug code.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Makefile.config | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
index 3066d0c318c3..236d763181c5 100644
--- a/tools/perf/Makefile.config
+++ b/tools/perf/Makefile.config
@@ -228,6 +228,7 @@ ifndef DEBUG
endif
ifeq ($(DEBUG),0)
+CORE_CFLAGS += -DNDEBUG=1
ifeq ($(CC_NO_CLANG), 0)
CORE_CFLAGS += -O3
else
--
2.40.0.348.gf938b09366-goog
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v1 1/3] perf bench: Avoid NDEBUG warning
2023-03-30 18:38 [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Ian Rogers
2023-03-30 18:38 ` [PATCH v1 2/3] perf block-range: Move debug code behind ifndef NDEBUG Ian Rogers
2023-03-30 18:38 ` [PATCH v1 3/3] perf build: Conditionally define NDEBUG Ian Rogers
@ 2023-03-30 21:11 ` Arnaldo Carvalho de Melo
2 siblings, 0 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-03-30 21:11 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Adrian Hunter, Sean Christopherson,
Paolo Bonzini, linux-perf-users, linux-kernel
Em Thu, Mar 30, 2023 at 11:38:25AM -0700, Ian Rogers escreveu:
> With NDEBUG set the asserts are compiled out. This yields
> "unused-but-set-variable" variables. Move these variables behind
> NDEBUG to avoid the warning.
Thanks, applied.
- Arnaldo
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
> tools/perf/bench/find-bit-bench.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/bench/find-bit-bench.c b/tools/perf/bench/find-bit-bench.c
> index d103c3136983..7e25b0e413f6 100644
> --- a/tools/perf/bench/find-bit-bench.c
> +++ b/tools/perf/bench/find-bit-bench.c
> @@ -61,7 +61,6 @@ static int do_for_each_set_bit(unsigned int num_bits)
> double time_average, time_stddev;
> unsigned int bit, i, j;
> unsigned int set_bits, skip;
> - unsigned int old;
>
> init_stats(&fb_time_stats);
> init_stats(&tb_time_stats);
> @@ -73,7 +72,10 @@ static int do_for_each_set_bit(unsigned int num_bits)
> __set_bit(i, to_test);
>
> for (i = 0; i < outer_iterations; i++) {
> - old = accumulator;
> +#ifndef NDEBUG
> + unsigned int old = accumulator;
> +#endif
> +
> gettimeofday(&start, NULL);
> for (j = 0; j < inner_iterations; j++) {
> for_each_set_bit(bit, to_test, num_bits)
> @@ -85,7 +87,9 @@ static int do_for_each_set_bit(unsigned int num_bits)
> runtime_us = diff.tv_sec * USEC_PER_SEC + diff.tv_usec;
> update_stats(&fb_time_stats, runtime_us);
>
> +#ifndef NDEBUG
> old = accumulator;
> +#endif
> gettimeofday(&start, NULL);
> for (j = 0; j < inner_iterations; j++) {
> for (bit = 0; bit < num_bits; bit++) {
> --
> 2.40.0.348.gf938b09366-goog
>
--
- Arnaldo
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-03-30 21:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-30 18:38 [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Ian Rogers
2023-03-30 18:38 ` [PATCH v1 2/3] perf block-range: Move debug code behind ifndef NDEBUG Ian Rogers
2023-03-30 18:38 ` [PATCH v1 3/3] perf build: Conditionally define NDEBUG Ian Rogers
2023-03-30 21:11 ` [PATCH v1 1/3] perf bench: Avoid NDEBUG warning Arnaldo Carvalho de Melo
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.