diff mbox

[COMMITTED] benchtests: Mark output variables as used

Message ID 20151117111424.GA27135@linaro-laptop.intra.reserved-bit.com
State New
Headers show

Commit Message

Siddhesh Poyarekar Nov. 17, 2015, 11:14 a.m. UTC
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 mbox

Patch

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))