Ciro Santilli has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/34476 )

Change subject: tests: cleanup all SE tests previously moved to gem5-resources
......................................................................

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
---
D tests/test-progs/chdir-print/Makefile
D tests/test-progs/chdir-print/README.txt
D tests/test-progs/chdir-print/chdir-print.c
D tests/test-progs/hello/.gitignore
D tests/test-progs/hello/bin/arm/linux/hello
D tests/test-progs/hello/bin/riscv/linux/hello
D tests/test-progs/hello/bin/x86/linux/hello
D tests/test-progs/hello/bin/x86/linux/hello32
D tests/test-progs/hello/src/Makefile.arm
D tests/test-progs/hello/src/Makefile.mips
D tests/test-progs/hello/src/Makefile.x86
D tests/test-progs/hello/src/hello.c
D tests/test-progs/mwait/Makefile
D tests/test-progs/mwait/mwait.c
D tests/test-progs/page-access-wrap/Makefile
D tests/test-progs/page-access-wrap/page-access-wrap.cpp
D tests/test-progs/stack-print/bin/x86/linux/stack-print
D tests/test-progs/stack-print/src/stack-print.c
D tests/test-progs/threads/bin/x86/linux/threads
D tests/test-progs/threads/src/Makefile
D tests/test-progs/threads/src/threads.cpp
21 files changed, 0 insertions(+), 724 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 $@  [email protected]
-
-%.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/hello/.gitignore b/tests/test-progs/hello/.gitignore
deleted file mode 100644
index 48c31c3..0000000
--- a/tests/test-progs/hello/.gitignore
+++ /dev/null
@@ -1,10 +0,0 @@
-bin/arm/linux/hello32-static
-bin/arm/linux/hello64-static
-
-bin/x86/linux/hello32-static
-bin/x86/linux/hello64-static
-bin/x86/linux/hello64-dynamic
-
-src/dockcross*
-src/*-dynamic
-src/*-static
diff --git a/tests/test-progs/hello/bin/arm/linux/hello b/tests/test-progs/hello/bin/arm/linux/hello
deleted file mode 100755
index 831ea7e..0000000
--- a/tests/test-progs/hello/bin/arm/linux/hello
+++ /dev/null
Binary files differ
diff --git a/tests/test-progs/hello/bin/riscv/linux/hello b/tests/test-progs/hello/bin/riscv/linux/hello
deleted file mode 100755
index b26d16c..0000000
--- a/tests/test-progs/hello/bin/riscv/linux/hello
+++ /dev/null
Binary files differ
diff --git a/tests/test-progs/hello/bin/x86/linux/hello b/tests/test-progs/hello/bin/x86/linux/hello
deleted file mode 100755
index a3ec8dc..0000000
--- a/tests/test-progs/hello/bin/x86/linux/hello
+++ /dev/null
Binary files differ
diff --git a/tests/test-progs/hello/bin/x86/linux/hello32 b/tests/test-progs/hello/bin/x86/linux/hello32
deleted file mode 100755
index 072773d..0000000
--- a/tests/test-progs/hello/bin/x86/linux/hello32
+++ /dev/null
Binary files differ
diff --git a/tests/test-progs/hello/src/Makefile.arm b/tests/test-progs/hello/src/Makefile.arm
deleted file mode 100644
index 4a18483..0000000
--- a/tests/test-progs/hello/src/Makefile.arm
+++ /dev/null
@@ -1,18 +0,0 @@
-all: hello64-static hello32-static
-
-hello64-static: hello.c dockcross-arm64
-       ./dockcross-arm64 bash -c '$$CC hello.c -o hello64-static -static'
-
-hello32-static: hello.c dockcross-armv7
-       ./dockcross-armv7 bash -c '$$CC hello.c -o hello32-static -static'
-
-dockcross-arm64:
-       docker run --rm dockcross/linux-arm64 > ./dockcross-arm64
-       chmod +x ./dockcross-arm64
-
-dockcross-armv7:
-       docker run --rm dockcross/linux-armv7 > ./dockcross-armv7
-       chmod +x ./dockcross-armv7
-
-clean:
-       rm -f dockcross* hello64-static hello32-static
diff --git a/tests/test-progs/hello/src/Makefile.mips b/tests/test-progs/hello/src/Makefile.mips
deleted file mode 100644
index 675c8d1..0000000
--- a/tests/test-progs/hello/src/Makefile.mips
+++ /dev/null
@@ -1,11 +0,0 @@
-all: hello
-
-hello: hello.c dockcross-mips
-       ./dockcross-mips bash -c '$$CC hello.c -o hello -static'
-
-dockcross-mips:
-       docker run --rm dockcross/linux-mips > ./dockcross-mips
-       chmod +x ./dockcross-mips
-
-clean:
-       rm -f dockcross* hello
diff --git a/tests/test-progs/hello/src/Makefile.x86 b/tests/test-progs/hello/src/Makefile.x86
deleted file mode 100644
index 70d89b0..0000000
--- a/tests/test-progs/hello/src/Makefile.x86
+++ /dev/null
@@ -1,21 +0,0 @@
-all: hello64-static hello64-dynamic hello32-static
-
-hello64-static: hello.c dockcross-x64
-       ./dockcross-x64 bash -c '$$CC hello.c -o hello64-static -static'
-
-hello64-dynamic: hello.c dockcross-x64
-       ./dockcross-x64 bash -c '$$CC hello.c -o hello64-dynamic'
-
-hello32-static: hello.c dockcross-x86
-       ./dockcross-x86 bash -c '$$CC hello.c -o hello32-static -static'
-
-dockcross-x64:
-       docker run --rm dockcross/linux-x64 > ./dockcross-x64
-       chmod +x ./dockcross-x64
-
-dockcross-x86:
-       docker run --rm dockcross/linux-x86 > ./dockcross-x86
-       chmod +x ./dockcross-x86
-
-clean:
-       rm -f dockcross-* hello64-static hello64-dynamic hello32-static
diff --git a/tests/test-progs/hello/src/hello.c b/tests/test-progs/hello/src/hello.c
deleted file mode 100644
index 9bf4ed5..0000000
--- a/tests/test-progs/hello/src/hello.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (c) 2006 The Regents of The University of Michigan
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * 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;
- * neither the name of the copyright holders 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
- * OWNER 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 <stdio.h>
-
-int main(int argc, char* argv[])
-{
-    printf("Hello world!\n");
-    return 0;
-}
-
diff --git a/tests/test-progs/mwait/Makefile b/tests/test-progs/mwait/Makefile
deleted file mode 100644
index 6b88811..0000000
--- 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 $@  [email protected] 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 e1b2035..0000000
--- a/tests/test-progs/mwait/mwait.c
+++ /dev/null
@@ -1,73 +0,0 @@
-// author: Marc Orr
-
-#include <pthread.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#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 41e7a18..0000000
--- 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 $@  [email protected]
-
-%.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 6e536aa..0000000
--- 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 <sys/mman.h>
-
-#include <cstdint>
-#include <cstdio>
-#include <cstdlib>
-#include <ctime>
-
-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<uint8_t*>(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<uint32_t*>(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 e40dc48..0000000
--- a/tests/test-progs/stack-print/bin/x86/linux/stack-print
+++ /dev/null
Binary files 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 9fbf962..0000000
--- 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 <elf.h>
-#include <stdio.h>
-
-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);
-    }
-}
-
diff --git a/tests/test-progs/threads/bin/x86/linux/threads b/tests/test-progs/threads/bin/x86/linux/threads
deleted file mode 100755
index 8354fd6..0000000
--- a/tests/test-progs/threads/bin/x86/linux/threads
+++ /dev/null
Binary files differ
diff --git a/tests/test-progs/threads/src/Makefile b/tests/test-progs/threads/src/Makefile
deleted file mode 100644
index e5abfd0..0000000
--- a/tests/test-progs/threads/src/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-
-../bin/x86/linux/threads: threads.cpp
-       g++ -o ../bin/x86/linux/threads threads.cpp -pthread -std=c++11
diff --git a/tests/test-progs/threads/src/threads.cpp b/tests/test-progs/threads/src/threads.cpp
deleted file mode 100644
index b844e77..0000000
--- a/tests/test-progs/threads/src/threads.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright (c) 2017 Jason Lowe-Power
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions are
-* met: redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer;
-* 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;
-* neither the name of the copyright holders 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
-* OWNER 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 <iostream>
-#include <thread>
-
-using namespace std;
-
-/*
- * c = a + b
- */
-void array_add(int *a, int *b, int *c, int tid, int threads, int num_values)
-{
-    for (int i = tid; i < num_values; i += threads) {
-        c[i] = a[i] + b[i];
-    }
-}
-
-
-int main(int argc, char *argv[])
-{
-    unsigned num_values;
-    if (argc == 1) {
-        num_values = 100;
-    } else if (argc == 2) {
-        num_values = atoi(argv[1]);
-        if (num_values <= 0) {
-            cerr << "Usage: " << argv[0] << " [num_values]" << endl;
-            return 1;
-        }
-    } else {
-        cerr << "Usage: " << argv[0] << " [num_values]" << endl;
-        return 1;
-    }
-
-    unsigned cpus = thread::hardware_concurrency();
-
-    cout << "Running on " << cpus << " cores. ";
-    cout << "with " << num_values << " values" << endl;
-
-    int *a, *b, *c;
-    a = new int[num_values];
-    b = new int[num_values];
-    c = new int[num_values];
-
-    if (!(a && b && c)) {
-        cerr << "Allocation error!" << endl;
-        return 2;
-    }
-
-    for (int i = 0; i < num_values; i++) {
-        a[i] = i;
-        b[i] = num_values - i;
-        c[i] = 0;
-    }
-
-    thread **threads = new thread*[cpus];
-
-    // NOTE: -1 is required for this to work in SE mode.
-    for (int i = 0; i < cpus - 1; i++) {
-        threads[i] = new thread(array_add, a, b, c, i, cpus, num_values);
-    }
-    // Execute the last thread with this thread context to appease SE mode
-    array_add(a, b, c, cpus - 1, cpus, num_values);
-
-    cout << "Waiting for other threads to complete" << endl;
-
-    for (int i = 0; i < cpus - 1; i++) {
-        threads[i]->join();
-    }
-
-    delete[] threads;
-
-    cout << "Validating..." << flush;
-
-    int num_valid = 0;
-    for (int i = 0; i < num_values; i++) {
-        if (c[i] == num_values) {
-            num_valid++;
-        } else {
-            cerr << "c[" << i << "] is wrong.";
-            cerr << " Expected " << num_values;
-            cerr << " Got " << c[i] << "." << endl;
-        }
-    }
-
-    if (num_valid == num_values) {
-        cout << "Success!" << endl;
-        return 0;
-    } else {
-        return 2;
-    }
-}

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/34476
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: I72ad104c9311c2f81af49458bdd44e24a6bafc0a
Gerrit-Change-Number: 34476
Gerrit-PatchSet: 1
Gerrit-Owner: Ciro Santilli <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to