* [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).