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

Reply via email to