test: Fix unittest cprintftime's build.
This test, which measures the performance of cprintf vs. sprintf, was missing a couple of includes which were needed for the alarm() and signal() functions, as well as the SIGALRM constant. Also, it was using %#x to print the value of a pointer which gcc complained about when compiling sprintf. This is fixed by changing that format specifier to %p, the specifier to use when printing pointers. Apparently either the implicit conversion to an integer value (which %#x expects) or the size of the type it was converted to weren't good enough for gcc any more. Change-Id: I8eca3479bef2c2fa79f8ef4881bb3ff35d7c54ca Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/33897 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Maintainer: Jason Lowe-Power <power.jg@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
@@ -26,6 +26,9 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <unistd.h>
|
||||
|
||||
#include <csignal>
|
||||
#include <iostream>
|
||||
#include <list>
|
||||
#include <sstream>
|
||||
@@ -62,7 +65,7 @@ main()
|
||||
while (!stop) {
|
||||
stringstream result;
|
||||
ccprintf(result,
|
||||
"this is a %s of %d iterations %3.2f %#x\n",
|
||||
"this is a %s of %d iterations %3.2f %p\n",
|
||||
"test", iterations, 51.934, &result);
|
||||
|
||||
iterations += 1;
|
||||
@@ -75,7 +78,7 @@ main()
|
||||
while (!stop) {
|
||||
char result[1024];
|
||||
sprintf(result,
|
||||
"this is a %s of %d iterations %3.2f %#x\n",
|
||||
"this is a %s of %d iterations %3.2f %p\n",
|
||||
"test", iterations, 51.934, &result);
|
||||
|
||||
iterations += 1;
|
||||
|
||||
Reference in New Issue
Block a user