Ciro Santilli has uploaded this change for review. (
https://gem5-review.googlesource.com/c/public/gem5/+/27313 )
Change subject: tests: move chdir-print test to the new framework
......................................................................
tests: move chdir-print test to the new framework
Change-Id: I4425d27940d6ae3853b15571466459857903018d
---
D tests/test-progs/chdir-print/Makefile
D tests/test-progs/chdir-print/README.txt
D tests/test-progs/chdir-print/chdir-print.c
A tests/test-progs/chdir_print.c
R tests/test-progs/stack_print.c
5 files changed, 153 insertions(+), 165 deletions(-)
diff --git a/tests/test-progs/chdir-print/Makefile
b/tests/test-progs/chdir-print/Makefile
deleted file mode 100644
index 6a357d5..0000000
--- a/tests/test-progs/chdir-print/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-
-CPP := g++
-
-TEST_OBJS := chdir-print.o
-TEST_PROGS := $(TEST_OBJS:.o=)
-
-# ==== Rules
==================================================================
-
-.PHONY: default clean
-
-default: $(TEST_PROGS)
-
-clean:
- $(RM) $(TEST_OBJS) $(TEST_PROGS)
-
-$(TEST_PROGS): $(TEST_OBJS)
- $(CPP) -static -o $@ $@.o
-
-%.o: %.c Makefile
- $(CPP) -c -o $@ $*.c -msse3
diff --git a/tests/test-progs/chdir-print/README.txt
b/tests/test-progs/chdir-print/README.txt
deleted file mode 100644
index b1e9213..0000000
--- a/tests/test-progs/chdir-print/README.txt
+++ /dev/null
@@ -1,67 +0,0 @@
-# example test compile and run parameters
-# Note: the absolute path to the chdir-print binary should be specified
-# in the run command even if running from the same folder. This is needed
-# because chdir is executed before triggering a clone for the file read,
-# and the cloned process won't be able to find the executable if a relative
-# path is provided.
-
-# compile examples
-scons --default=X86 ./build/X86/gem5.opt PROTOCOL=MOESI_hammer
-scons --default=X86 ./build/X86/gem5.opt PROTOCOL=MESI_Three_Level
-
-# run parameters
-<GEM5_ROOT>/build/X86/gem5.opt <GEM5_ROOT>/configs/example/se.py -c
<GEM5_ROOT>/tests/test-progs/chdir-print/chdir-print -n2 --ruby
-
-
-# example successful output for MESI_Three_Level:
-
-<...>
-
-**** REAL SIMULATION ****
-info: Entering event queue @ 0. Starting simulation...
-warn: Replacement policy updates recently became the responsibility of
SLICC state machines. Make sure to setMRU() near callbacks in .sm files!
-cwd:
/proj/research_simu/users/jalsop/gem5-mem_dif_debug/tests/test-progs/chdir-print/
-cwd: /proc
-
-<...>
-
-processor : 0
-vendor_id : Generic
-cpu family : 0
-model : 0
-model name : Generic
-stepping : 0
-cpu MHz : 2000
-cache size: : 2048K
-physical id : 0
-siblings : 2
-core id : 0
-cpu cores : 2
-fpu : yes
-fpu exception : yes
-cpuid level : 1
-wp : yes
-flags : fpu
-cache alignment : 64
-
-processor : 1
-vendor_id : Generic
-cpu family : 0
-model : 0
-model name : Generic
-stepping : 0
-cpu MHz : 2000
-cache size: : 2048K
-physical id : 0
-siblings : 2
-core id : 1
-cpu cores : 2
-fpu : yes
-fpu exception : yes
-cpuid level : 1
-wp : yes
-flags : fpu
-cache alignment : 64
-
-SUCCESS
-Exiting @ tick 2694923000 because exiting with last active thread context
diff --git a/tests/test-progs/chdir-print/chdir-print.c
b/tests/test-progs/chdir-print/chdir-print.c
deleted file mode 100644
index 71747b6..0000000
--- a/tests/test-progs/chdir-print/chdir-print.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (c) 2011-2015 Advanced Micro Devices, Inc.
- * All rights reserved.
- *
- * For use for simulation and test purposes only
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
met:
- *
- * 1. Redistributions of source code must retain the above copyright
notice,
- * this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
notice,
- * this list of conditions and the following disclaimer in the
documentation
- * and/or other materials provided with the distribution.
- *
- * 3. Neither the name of the copyright holder nor the names of its
- * contributors may be used to endorse or promote products derived from
this
- * software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <linux/limits.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-const int BUFFER_SIZE = 64;
-
-// Tests the functionality of RegisterFilesystem
-int main(void)
-{
- char *cwd = getcwd(NULL, PATH_MAX);
- printf("cwd: %s\n", cwd);
- free(cwd);
-
- chdir("/proc");
-
- cwd = getcwd(NULL, PATH_MAX);
- printf("cwd: %s\n", cwd);
- free(cwd);
-
- FILE *fp;
- char buffer[BUFFER_SIZE];
-
- bool found_procline = false;
- fp = popen("cat cpuinfo", "r");
- if (fp != NULL) {
- while (fgets(buffer, BUFFER_SIZE, fp) != NULL) {
- printf("%s", buffer);
- if (strstr(buffer, "processor")) {
- found_procline = true;
- }
- }
- pclose(fp);
- }
-
- if (found_procline) {
- printf("SUCCESS\n");
- return EXIT_SUCCESS;
- }
-
- printf("FAILURE\n");
- return EXIT_FAILURE;
-}
diff --git a/tests/test-progs/chdir_print.c b/tests/test-progs/chdir_print.c
new file mode 100644
index 0000000..bed844e
--- /dev/null
+++ b/tests/test-progs/chdir_print.c
@@ -0,0 +1,152 @@
+/*
+ * Copyright (c) 2011-2015 Advanced Micro Devices, Inc.
+ * All rights reserved.
+ *
+ * For use for simulation and test purposes only
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
notice,
+ * this list of conditions and the following disclaimer in the
documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of the copyright holder nor the names of its
+ * contributors may be used to endorse or promote products derived from
this
+ * software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * # example test compile and run parameters
+ * # Note: the absolute path to the chdir-print binary should be specified
+ * # in the run command even if running from the same folder. This is
needed
+ * # because chdir is executed before triggering a clone for the file read,
+ * # and the cloned process won't be able to find the executable if a
relative
+ * # path is provided.
+ *
+ * # compile examples
+ * scons --default=X86 ./build/X86/gem5.opt PROTOCOL=MOESI_hammer
+ * scons --default=X86 ./build/X86/gem5.opt PROTOCOL=MESI_Three_Level
+ *
+ * # run parameters
+ * <GEM5_ROOT>/build/X86/gem5.opt <GEM5_ROOT>/configs/example/se.py -c \
+ * <GEM5_ROOT>/tests/test-progs/chdir-print/chdir-print -n2 --ruby
+ *
+ *
+ * # example successful output for MESI_Three_Level:
+ *
+ * <...>
+ *
+ * **** REAL SIMULATION ****
+ * info: Entering event queue @ 0. Starting simulation...
+ * warn: Replacement policy updates recently became the responsibility of
+ * SLICC state machines. Make sure to setMRU() near callbacks in .sm
files!
+ * cwd: /proj/research_simu/users/jalsop/gem5-mem_dif_debug/tests/
+ * test-progs/chdir-print/
+ * cwd: /proc
+ *
+ * <...>
+ *
+ * processor : 0
+ * vendor_id : Generic
+ * cpu family : 0
+ * model : 0
+ * model name : Generic
+ * stepping : 0
+ * cpu MHz : 2000
+ * cache size: : 2048K
+ * physical id : 0
+ * siblings : 2
+ * core id : 0
+ * cpu cores : 2
+ * fpu : yes
+ * fpu exception : yes
+ * cpuid level : 1
+ * wp : yes
+ * flags : fpu
+ * cache alignment : 64
+ *
+ * processor : 1
+ * vendor_id : Generic
+ * cpu family : 0
+ * model : 0
+ * model name : Generic
+ * stepping : 0
+ * cpu MHz : 2000
+ * cache size: : 2048K
+ * physical id : 0
+ * siblings : 2
+ * core id : 1
+ * cpu cores : 2
+ * fpu : yes
+ * fpu exception : yes
+ * cpuid level : 1
+ * wp : yes
+ * flags : fpu
+ * cache alignment : 64
+ *
+ * SUCCESS
+ * Exiting @ tick 2694923000 because exiting with last active thread
context
+ */
+
+#include <assert.h>
+#include <linux/limits.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+const int BUFFER_SIZE = 64;
+
+// Tests the functionality of RegisterFilesystem
+int main(void)
+{
+ char *cwd = getcwd(NULL, PATH_MAX);
+ printf("cwd: %s\n", cwd);
+ free(cwd);
+
+ assert(!chdir("/proc"));
+
+ cwd = getcwd(NULL, PATH_MAX);
+ printf("cwd: %s\n", cwd);
+ free(cwd);
+
+ FILE *fp;
+ char buffer[BUFFER_SIZE];
+
+ bool found_procline = false;
+ fp = popen("cat cpuinfo", "r");
+ if (fp != NULL) {
+ while (fgets(buffer, BUFFER_SIZE, fp) != NULL) {
+ printf("%s", buffer);
+ if (strstr(buffer, "processor")) {
+ found_procline = true;
+ }
+ }
+ pclose(fp);
+ }
+
+ if (found_procline) {
+ printf("SUCCESS\n");
+ return EXIT_SUCCESS;
+ }
+
+ printf("FAILURE\n");
+ return EXIT_FAILURE;
+}
diff --git a/tests/test-progs/stack-print.c b/tests/test-progs/stack_print.c
similarity index 98%
rename from tests/test-progs/stack-print.c
rename to tests/test-progs/stack_print.c
index 2df0605..ff431bf 100644
--- a/tests/test-progs/stack-print.c
+++ b/tests/test-progs/stack_print.c
@@ -159,7 +159,7 @@
printf("\n");
return 0;
}
- printf("%p: %s: [%lx]\n", (void *)auxv, type, auxv->a_un.a_val);
+ printf("%p: %s: [%jx]\n", (void *)auxv, type,
(uintmax_t)auxv->a_un.a_val);
}
}
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27313
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I4425d27940d6ae3853b15571466459857903018d
Gerrit-Change-Number: 27313
Gerrit-PatchSet: 1
Gerrit-Owner: Ciro Santilli <ciro.santi...@arm.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev