This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[COMMITTED] benchtests: Mark output variables as used
- From: Siddhesh Poyarekar <siddhesh dot poyarekar at linaro dot org>
- To: libc-alpha at sourceware dot org
- Date: Tue, 17 Nov 2015 16:44:24 +0530
- Subject: [COMMITTED] benchtests: Mark output variables as used
- Authentication-results: sourceware.org; auth=none
Prevent function calls that don't return anything from being optimized
out by the compiler by marking its input variables as used.
This prevents the sincos function call from being optimized out in the
benchmark.
Siddhesh
---
ChangeLog | 5 +++++
benchtests/scripts/bench.py | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/ChangeLog b/ChangeLog
index dd5a2b5..2d53b2b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-17 Siddhesh Poyarekar <siddhesh.poyarekar@linaro.org>
+
+ * benchtests/scripts/bench.py (_print_arg_data): Mark output variables
+ as used.
+
2015-11-16 Florian Weimer <fweimer@redhat.com>
* math/test-signgam-finite-c99.c (_Mlong_double_): Undefine.
diff --git a/benchtests/scripts/bench.py b/benchtests/scripts/bench.py
index ee856db..7752c8a 100755
--- a/benchtests/scripts/bench.py
+++ b/benchtests/scripts/bench.py
@@ -164,7 +164,7 @@ def _print_arg_data(func, directives, all_vals):
if pos == -1:
die('Output argument must be a pointer type')
- outargs.append('static %s out%d;' % (arg[1:pos], i))
+ outargs.append('static %s out%d __attribute__((used));' % (arg[1:pos], i))
func_args.append(' &out%d' % i)
else:
arg_struct.append(' %s volatile arg%d;' % (arg, i))
--
2.4.3