From: Stan Shebs Date: Wed, 9 May 2018 18:26:35 +0000 (-0700) Subject: Forestall optimization-out of a buffer. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40513af8adceabbfbfd7c64631c0fb6e57373c23;p=thirdparty%2Fglibc.git Forestall optimization-out of a buffer. --- diff --git a/string/tst-xbzero-opt.c b/string/tst-xbzero-opt.c index cf7041f37a1..e9c411b2ef5 100644 --- a/string/tst-xbzero-opt.c +++ b/string/tst-xbzero-opt.c @@ -110,11 +110,17 @@ prepare_test_buffer (unsigned char *buf) abort (); } +/* Use a volatile global to ensure that aggressive compilers don't + decide that the test buffer is unused and evaporate it. */ + +volatile unsigned char *vol_glob; + static void setup_no_clear (void) { unsigned char buf[TEST_BUFFER_SIZE]; prepare_test_buffer (buf); + vol_glob = buf; } static void @@ -123,6 +129,7 @@ setup_ordinary_clear (void) unsigned char buf[TEST_BUFFER_SIZE]; prepare_test_buffer (buf); memset (buf, 0, TEST_BUFFER_SIZE); + vol_glob = buf; } static void