aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh.poyarekar@linaro.org>2015-11-17 16:01:15 +0530
committerSiddhesh Poyarekar <siddhesh.poyarekar@linaro.org>2015-11-17 16:01:15 +0530
commit4916acd87b22351c9d77babf5be71fb8c53d67bd (patch)
tree71b5f474bef73b9ad10b676ab9a4d90abc8658a2
parentb43e85786f6a6954c3d750aa2914b6ceecade378 (diff)
downloadglibc-4916acd87b22351c9d77babf5be71fb8c53d67bd.zip
glibc-4916acd87b22351c9d77babf5be71fb8c53d67bd.tar.gz
glibc-4916acd87b22351c9d77babf5be71fb8c53d67bd.tar.bz2
benchtests: Mark output variables as used
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.
-rw-r--r--ChangeLog5
-rwxr-xr-xbenchtests/scripts/bench.py2
2 files changed, 6 insertions, 1 deletions
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))