From: Ciro Santilli Date: Mon, 14 Sep 2020 15:57:50 +0000 (+0100) Subject: tests: cleanup all SE tests previously moved to gem5-resources X-Git-Tag: develop-gem5-snapshot~738 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6bc2111c9674d0c8db22f6a6adcc00e49625aabd;p=gem5.git tests: cleanup all SE tests previously moved to gem5-resources The move was done at: https://gem5-review.googlesource.com/c/public/gem5-resources/+/32074 All files keep exact same name, or are obvious renames like underscore to -. threads/ is the only non obvious and remaps to src/simple/std_thread.cpp Only m5-exit is left because it does squashfs generation which wasn't yet moved. Change-Id: I72ad104c9311c2f81af49458bdd44e24a6bafc0a Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/34476 Reviewed-by: Bobby R. Bruce Maintainer: Bobby R. Bruce Tested-by: kokoro --- diff --git a/tests/test-progs/chdir-print/Makefile b/tests/test-progs/chdir-print/Makefile deleted file mode 100644 index 6a357d504..000000000 --- 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 b1e921307..000000000 --- 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 -/build/X86/gem5.opt /configs/example/se.py -c /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 71747b62b..000000000 --- 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 -#include -#include -#include -#include - -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/mwait/Makefile b/tests/test-progs/mwait/Makefile deleted file mode 100644 index 6b888118d..000000000 --- a/tests/test-progs/mwait/Makefile +++ /dev/null @@ -1,20 +0,0 @@ - -CPP := g++ - -TEST_OBJS := mwait.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 pthread.o - -%.o: %.c Makefile - $(CPP) -c -o $@ $*.c -msse3 diff --git a/tests/test-progs/mwait/mwait.c b/tests/test-progs/mwait/mwait.c deleted file mode 100644 index e1b203545..000000000 --- a/tests/test-progs/mwait/mwait.c +++ /dev/null @@ -1,73 +0,0 @@ -// author: Marc Orr - -#include -#include -#include - -#define NUM_TRIES 1000 - -// Make sure that flags and wait sit in different cache lines -volatile int flags[10]; -volatile int wait[10]; - -pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; - -void *DoWork1(void *threadid) -{ - flags[0] = flags[0] + 1; - wait[0] = 0; - pthread_exit(0); -} - -void *DoWork2(void *threadid) -{ - pthread_mutex_lock (&mutex); - flags[0] = flags[0] + 1; - pthread_mutex_unlock (&mutex); - pthread_exit(0); -} - -//////////////////////////////////////////////////////////////////////////////// -// Program main -//////////////////////////////////////////////////////////////////////////////// -int main( int argc, char** argv) -{ - // stuff for thread - pthread_t threads[1]; - - // initialize global variables - flags[0] = 0; - wait[0] = 1; - - // monitor (via gcc intrinsic) - __builtin_ia32_monitor ((void *)&flags, 0, 0); - - // invalidate flags in this cpu's cache - pthread_create(&threads[0], NULL, DoWork1, NULL); - while (wait[0]); - - // launch thread to invalidate address being monitored - pthread_create(&threads[0], NULL, DoWork2, NULL); - - // wait for other thread to modify flags - int mwait_cnt = 0; - do { - pthread_mutex_lock (&mutex); - if (flags[0] != 2) { - pthread_mutex_unlock (&mutex); - __builtin_ia32_mwait(0, 0); - } else { - pthread_mutex_unlock (&mutex); - } - mwait_cnt++; - } while (flags[0] != 2 && mwait_cnt < NUM_TRIES); - - // test may hang if mwait is not working - if (flags[0]==2) { - printf("mwait regression PASSED, flags[0] = %d\n", flags[0]); - } else { - printf("mwait regression FAILED, flags[0] = %d\n", flags[0]); - } - - return 0; -} diff --git a/tests/test-progs/page-access-wrap/Makefile b/tests/test-progs/page-access-wrap/Makefile deleted file mode 100644 index 41e7a1819..000000000 --- a/tests/test-progs/page-access-wrap/Makefile +++ /dev/null @@ -1,20 +0,0 @@ - -CPP := g++ - -TEST_OBJS := page-access-wrap.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/page-access-wrap/page-access-wrap.cpp b/tests/test-progs/page-access-wrap/page-access-wrap.cpp deleted file mode 100644 index 6e536aab0..000000000 --- a/tests/test-progs/page-access-wrap/page-access-wrap.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2019 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 - -#include -#include -#include -#include - -int main(void) -{ - uint64_t page_size = 0x1000; - uint64_t num_pages = 0x10000; - uint64_t length = page_size * num_pages; - - void *raw = mmap(NULL, length, PROT_WRITE, MAP_ANON|MAP_PRIVATE, -1, 0); - uint8_t *mem = reinterpret_cast(raw); - - srand(0xABCD); - - uint64_t last_byte = page_size - 1; - uint64_t page_boundaries = num_pages - 1; - - for (int i = 0; i < 2000; i++) { - uint64_t random_boundary = rand() % page_boundaries; - uint64_t boundary_offset = random_boundary * page_size; - uint64_t boundary_last_byte = boundary_offset + last_byte; - uint32_t *poke = reinterpret_cast(mem + boundary_last_byte); - printf("%p\n", poke); - uint32_t value = *poke; - } - - return 0; -} diff --git a/tests/test-progs/stack-print/bin/x86/linux/stack-print b/tests/test-progs/stack-print/bin/x86/linux/stack-print deleted file mode 100755 index e40dc481c..000000000 Binary files a/tests/test-progs/stack-print/bin/x86/linux/stack-print and /dev/null differ diff --git a/tests/test-progs/stack-print/src/stack-print.c b/tests/test-progs/stack-print/src/stack-print.c deleted file mode 100644 index 9fbf962bc..000000000 --- a/tests/test-progs/stack-print/src/stack-print.c +++ /dev/null @@ -1,165 +0,0 @@ -/* - * Copyright (c) 2017 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. - * - * Author: Brandon Potter - */ - -#include -#include - -int main(int argc, char **argv, char **envp) -{ - int i; - - printf("%p: argc: [%d]\n", &argc, argc); - printf("\n"); - - for (i = 0; i < argc; i++) - printf("%p: argv[%d]: [%s]\n", &argv[i], i, argv[i]); - printf("\n"); - - i = 0; - while (envp[i] != NULL) { - printf("%p: envp[%d]: [%s]\n", &envp[i], i, envp[i]); - i++; - } - printf("\n"); - - Elf64_auxv_t *auxv = (Elf64_auxv_t*)&envp[--i]; - while (auxv++) { - char *type; - switch(auxv->a_type) { - case AT_IGNORE: - type = "AT_IGNORE"; - break; - case AT_EXECFD: - type = "AT_EXECFD"; - break; - case AT_PHDR: - type = "AT_PHDR"; - break; - case AT_PHENT: - type = "AT_PHENT"; - break; - case AT_PHNUM: - type = "AT_PHNUM"; - break; - case AT_PAGESZ: - type = "AT_PAGESZ"; - break; - case AT_BASE: - type = "AT_BASE"; - break; - case AT_FLAGS: - type = "AT_FLAGS"; - break; - case AT_ENTRY: - type = "AT_ENTRY"; - break; - case AT_NOTELF: - type = "AT_NOTELF"; - break; - case AT_UID: - type = "AT_UID"; - break; - case AT_EUID: - type = "AT_EUID"; - break; - case AT_GID: - type = "AT_GID"; - break; - case AT_EGID: - type = "AT_EGID"; - break; - case AT_CLKTCK: - type = "AT_CLKTCK"; - break; - case AT_PLATFORM: - type = "AT_PLATFORM"; - break; - case AT_HWCAP: - type = "AT_HWCAP"; - break; - case AT_FPUCW: - type = "AT_FPUCW"; - break; - case AT_DCACHEBSIZE: - type = "AT_DCACHEBSIZE"; - break; - case AT_ICACHEBSIZE: - type = "AT_ICACHEBSIZE"; - break; - case AT_UCACHEBSIZE: - type = "AT_UCACHEBSIZE"; - break; - case AT_IGNOREPPC: - type = "AT_IGNOREPPC"; - break; - case AT_SECURE: - type = "AT_SECURE"; - break; - case AT_BASE_PLATFORM: - type = "AT_BASE_PLATFORM"; - break; - case AT_RANDOM: - type = "AT_RANDOM"; - break; - case AT_EXECFN: - type = "AT_EXECFN"; - break; - case AT_SYSINFO: - type = "AT_SYSINFO"; - break; - case AT_SYSINFO_EHDR: - type = "AT_SYSINFO_EHDR"; - break; - case AT_L1I_CACHESHAPE: - type = "AT_L1I_CACHESHAPE"; - break; - case AT_L1D_CACHESHAPE: - type = "AT_L1D_CACHESHAPE"; - break; - case AT_L2_CACHESHAPE: - type = "AT_L2_CACHESHAPE"; - break; - case AT_L3_CACHESHAPE: - type = "AT_L3_CACHESHAPE"; - break; - case AT_NULL: - default: - printf("\n"); - return 0; - } - printf("%p: %s: [%lx]\n", auxv, type, auxv->a_un.a_val); - } -} -