diff options
author | Andrey Churbanov <Andrey.Churbanov@intel.com> | 2015-04-29 14:36:38 +0000 |
---|---|---|
committer | Andrey Churbanov <Andrey.Churbanov@intel.com> | 2015-04-29 14:36:38 +0000 |
commit | a951e210872adb18dbca7eb8b0832bd3a6fde416 (patch) | |
tree | 5971fd073129498a25703fc149a08c4c00164529 | |
parent | dfddebcfb9fa9d756518015fd31cddcc9eb1459e (diff) | |
download | bcm5719-llvm-a951e210872adb18dbca7eb8b0832bd3a6fde416.tar.gz bcm5719-llvm-a951e210872adb18dbca7eb8b0832bd3a6fde416.zip |
UH OpenMP testsuite update
llvm-svn: 236105
-rw-r--r-- | openmp/runtime/Makefile | 28 | ||||
-rwxr-xr-x | openmp/runtime/tools/check-openmp-test.pl | 18 | ||||
-rwxr-xr-x | openmp/runtime/tools/check-openmp.pl | 18 | ||||
-rw-r--r-- | openmp/testsuite/LLVM-IR/lit.cfg | 78 | ||||
-rw-r--r-- | openmp/testsuite/LLVM-IR/lit.site.cfg.in | 30 | ||||
-rw-r--r-- | openmp/testsuite/LLVM-IR/lit.tmp | 1 | ||||
-rw-r--r-- | openmp/testsuite/Makefile | 60 | ||||
-rw-r--r-- | openmp/testsuite/README_LLVM_OPENMP | 46 | ||||
-rw-r--r-- | openmp/testsuite/README_OpenMP_Validation_Suite (renamed from openmp/testsuite/README) | 0 | ||||
-rwxr-xr-x | openmp/testsuite/adding_xfails.py | 32 | ||||
-rw-r--r-- | openmp/testsuite/bin/Makefile | 23 | ||||
-rwxr-xr-x | openmp/testsuite/bin/distribute.sh | 125 | ||||
-rw-r--r-- | openmp/testsuite/bin/header | 6 | ||||
-rw-r--r-- | openmp/testsuite/bin/lit.cfg | 78 | ||||
-rw-r--r-- | openmp/testsuite/bin/lit.site.cfg.in | 30 | ||||
-rw-r--r-- | openmp/testsuite/bin/lit.tmp | 1 | ||||
-rw-r--r-- | openmp/testsuite/customtest.txt | 2 | ||||
-rw-r--r-- | openmp/testsuite/omp_testsuite.h | 216 | ||||
-rw-r--r-- | openmp/testsuite/ompts_standaloneProc.c | 2 |
19 files changed, 669 insertions, 125 deletions
diff --git a/openmp/runtime/Makefile b/openmp/runtime/Makefile index 16d71ab6668..64de70fac59 100644 --- a/openmp/runtime/Makefile +++ b/openmp/runtime/Makefile @@ -47,3 +47,31 @@ endif @echo mode=$(mode) @echo jobs=$(jobs) + + +libiomp5_path=$(shell $(omp_root)/tools/check-openmp.pl) +test_path=$(shell $(omp_root)/tools/check-openmp-test.pl) + +# Please do not change this rule. +# ------------------------------- +# Intentionally changing directory into "testsuite" in order to generate output results and errors +# over there and keep this directory clean. +test: omp + @$(Verb) if which llvm-lit &> /dev/null; then \ + if [ -d "$(omp_root)$(SLASH)..$(SLASH)testsuite$(SLASH)LLVM-IR" ] ; then \ + export TESTSUITE_TEMP=$(realpath $(omp_root))$(SLASH)tmp ; \ + export LIBRARY_PATH=$(libiomp5_path):$(LIBRARY_PATH) ; \ + export LD_LIBRARY_PATH=$(libiomp5_path):$(LD_LIBRARY_PATH) ; \ + export DYLD_LIBRARY_PATH=$(libiomp5_path):$(DYLD_LIBRARY_PATH) ; \ + cd $(omp_root)$(SLASH)..$(SLASH)testsuite ; \ + make ctest ; \ + python adding_xfails.py ; \ + llvm-lit -j 1 $(realpath $(omp_root))$(SLASH)..$(SLASH)testsuite$(SLASH)LLVM-IR$(SLASH)$(test_path) -v ; \ + else \ + echo "No test directory" ; exit 1; \ + fi; else echo "No llvm-lit in $(PATH)"; exit 1; fi + +test-clean: + make -C ..$(SLASH)testsuite cleanall + + diff --git a/openmp/runtime/tools/check-openmp-test.pl b/openmp/runtime/tools/check-openmp-test.pl new file mode 100755 index 00000000000..2e64a74053e --- /dev/null +++ b/openmp/runtime/tools/check-openmp-test.pl @@ -0,0 +1,18 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +use FindBin; +use lib "$FindBin::Bin/lib"; + +# LIBOMP modules. +use Build; +use LibOMP; +use Platform ":vars"; +use Uname; +use tools; + +my $root_dir = $ENV{ LIBOMP_WORK }; +print join('', $target_platform, "/"); + diff --git a/openmp/runtime/tools/check-openmp.pl b/openmp/runtime/tools/check-openmp.pl new file mode 100755 index 00000000000..60334d7f026 --- /dev/null +++ b/openmp/runtime/tools/check-openmp.pl @@ -0,0 +1,18 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +use FindBin; +use lib "$FindBin::Bin/lib"; + +# LIBOMP modules. +use Build; +use LibOMP; +use Platform ":vars"; +use Uname; +use tools; + +my $root_dir = $ENV{ LIBOMP_WORK }; +print join('', $root_dir, "/", "exports", "/", $target_platform, "/", "lib"); + diff --git a/openmp/testsuite/LLVM-IR/lit.cfg b/openmp/testsuite/LLVM-IR/lit.cfg new file mode 100644 index 00000000000..195781989e5 --- /dev/null +++ b/openmp/testsuite/LLVM-IR/lit.cfg @@ -0,0 +1,78 @@ +# -*- Python -*- + +# Configuration file for the 'lit' test runner. + +import os +import sys +import re +import platform + +try: + import lit.util + import lit.formats +except ImportError: + pass + +# name: The name of this test suite. +config.name = 'OpenMPValidationSuite' + +# testFormat: The test format to use to interpret tests. +config.test_format = lit.formats.ShTest(execute_external=False) + +# suffixes: A list of file extensions to treat as test files +# Note this can be overridden by lit.local.cfg files +config.suffixes = ['.ll'] + +# test_source_root: The root path where tests are located. +#config.test_source_root = "/home/ichoyjx/install/openmp/testsuite/bin" +#os.path.dirname(__file__) + +# test_exec_root: The root path where tests should be run. +#mpvs_obj_root = getattr(config, 'mpvs_obj_root', None) +#if mpvs_obj_root is not None: +config.test_exec_root = "./" +#os.path.join(mpvs_obj_root, 'src') + +# Discover the 'clang' and 'clangcc' to use. + +import os + +def inferClang(PATH): + # Determine which clang to use. + clang = os.getenv('CLANG') + + # If the user set clang in the environment, definitely use that and don't + # try to validate. + if clang: + return clang + + # Otherwise look in the path. + clang = lit.util.which('clang', PATH) + + if not clang: + lit_config.fatal("couldn't find 'clang' program, try setting " + "CLANG in your environment") + + return clang + +config.clang = inferClang(config.environment['PATH']).replace('\\', '/') +config.substitutions.append( ('%clang', ' ' + config.clang + ' ') ) + +# Propogate some environment variable to test environment. +def addEnv(name): + if name in os.environ: + config.environment[name] = os.environ[name] + +addEnv('HOME') +addEnv('PWD') + + +addEnv('C_INCLUDE_PATH') +addEnv('CPLUS_INCLUDE_PATH') +addEnv('LIBRARY_PATH') +addEnv('LD_LIBRARY_PATH') +addEnv('DYLD_LIBRARY_PATH') + +# Check that the object root is known. +if config.test_exec_root is None: + lit.fatal('test execution root not set!') diff --git a/openmp/testsuite/LLVM-IR/lit.site.cfg.in b/openmp/testsuite/LLVM-IR/lit.site.cfg.in new file mode 100644 index 00000000000..11866d4dd58 --- /dev/null +++ b/openmp/testsuite/LLVM-IR/lit.site.cfg.in @@ -0,0 +1,30 @@ +## Autogenerated by LLVM/Clang configuration. +#config.mpvs_src_root = "/home/ichoyjx/install/openmp/testsuite/bin/c" +config.mpvs_obj_root = "/tmp" +config.llvm_tools_dir = "@LLVM_TOOLS_DIR@" + + +# Needed to check if a hack needs to be applied +config.llvm_version_major = "@LLVM_VERSION_MAJOR@" + +# Compilers +# FIXME: use llvmcc not llvmgcc +config.llvmclang = "clang" + +# Features +config.enable_uclibc = True if @ENABLE_UCLIBC@ == 1 else False +config.enable_posix_runtime = True if @ENABLE_POSIX_RUNTIME@ == 1 else False +config.have_selinux = True if @HAVE_SELINUX@ == 1 else False + +# Current target +config.target_triple = "@TARGET_TRIPLE@" + +# Let the main config do the real work. +try: + lit +except NameError: + # Use lit_config class + lit_config.load_config(config, "@MPVS_SOURCE_DIR@/lit.cfg") +else: + # Use old lit class + lit.load_config(config, "@MPVS_SOURCE_DIR@/lit.cfg") diff --git a/openmp/testsuite/LLVM-IR/lit.tmp b/openmp/testsuite/LLVM-IR/lit.tmp new file mode 100644 index 00000000000..81d30fb0a4e --- /dev/null +++ b/openmp/testsuite/LLVM-IR/lit.tmp @@ -0,0 +1 @@ +../LLVM-IR/lin_32e/ diff --git a/openmp/testsuite/Makefile b/openmp/testsuite/Makefile index 8cd18de742f..cdbc3dc9a2d 100644 --- a/openmp/testsuite/Makefile +++ b/openmp/testsuite/Makefile @@ -34,14 +34,19 @@ # 3. Compiler selection and Flags ######################################################### -# GNU Compiler -CC = gcc -CFLAGS = -fopenmp -lm -O3 -CFLAGS = -fopenmp -lm -O3 +# CLANG Compiler +CC = clang +CFLAGS = -fopenmp -S -emit-llvm FC = gfortran FFLAGS = -fopenmp -lm FFLAGS = -fopenmp -lm -O3 +# GNU Compiler +# CC = gcc +# CFLAGS = -fopenmp -lm -O3 +# FC = gfortran +# FFLAGS = -fopenmp -lm +# FFLAGS = -fopenmp -lm -O3 # Fujitsu Compilers: #CC = fcc @@ -148,6 +153,10 @@ FFLAGS = -fopenmp -lm -O3 #FC = uhf90 #FFLAGS = -mp +# Check path +FILE=LLVM-IR/lit.tmp +CHECK_PATH=`cat $(FILE)` + ######################################################################### help: @@ -170,9 +179,11 @@ help: @echo " cleanlogs" @echo " Remove all *.log files from bin/ directory" @echo " clean" - @echo " Remove all sources and executables from bin/ directory" - @echo " cleanall" - @echo " Remove the entire bin/ directory" + @echo " Clean out and log files" + @echo " distclean" + @echo " Clean arch test directory with clean" + @echo " veryclean" + @echo " Remove the entire bin/c directory with distclean" omp_my_sleep: mkdir -p bin/c @@ -187,6 +198,7 @@ omp_testsuite.h: ompts-c.conf c/* ctest: omp_my_sleep omp_testsuite ./runtest.pl --lang=c testlist-c.txt + cd bin/; make -j ftest: mkdir -p bin/fortran @@ -206,17 +218,37 @@ print_compile_options: @echo "compilation: $(FC) $(FFLAGS)" @$(FC) --version + + +path_to_arch=$(shell ../runtime/tools/check-openmp-test.pl) + cleansrcs: - find bin/ -iname "*.[cf]" -exec rm {} \; + find bin/ -iname "*.[cf]" -exec rm -rf {} \; cleanbins: - find bin/ -perm /a+x -type f -exec rm {} \; + find bin/c -perm /a+x -type f -exec rm -rf {} \; + find ./bin/c -not -name "*.c" -a -not -name "*.ll" -type f -exec rm -rf {} \; cleanouts: - find bin/ -iname "*.out" -exec rm {} \; + find bin/ -iname "*.out" -exec rm -rf {} \; cleanlogs: - find bin/ -iname "*.log" -exec rm {} \; + find bin/ -iname "*.log" -exec rm -rf {} \; + rm -rf ./$(path_to_arch) + +clean: cleanouts cleanlogs cleanbins cleansrcs + +distclean: clean + rm -rf bin/c/* + rm -rf LLVM-IR/$(CHECK_PATH) + +veryclean: distclean + rm -rf bin/c/ + rm -rf bin/fortran/ + -clean: cleansrcs cleanbins +cleanall: + rm -rf ./bin/c/ + rm -rf ./bin/fortran/ + rm -rf ./LLVM-IR/$(path_to_arch) + rm -rf ./$(path_to_arch) + rm -rf ./*.log -cleanall: - rm -rf bin/ diff --git a/openmp/testsuite/README_LLVM_OPENMP b/openmp/testsuite/README_LLVM_OPENMP new file mode 100644 index 00000000000..b90076f6c2a --- /dev/null +++ b/openmp/testsuite/README_LLVM_OPENMP @@ -0,0 +1,46 @@ + ============================================================================ +| To use the OpenMP Validation Suite for testing | +| LLVM OpenMP Implementation | +| High Performance Computing and Tools, | +| University of Houston | +| Jan. 2015 | + ============================================================================ + +Two new files have been added to openmp/runtime: check-openmp.pl and check-openmp-test.pl +Go to /openmp/runtime, run: +make test +make test-clean + +------------------------------------------------------------------------------ +For the OpenMP-LLVM Project, following are the Files and Directories to know about: + + + c Directory containing the templates for the c tests + fortran Directory containing the templates for the Fortran + Makefile Makefile containing options for compilation + README_LLVM_OPENMP README file for to use the OpenMP test-suite + README_OpenMP_Validation_Suite README file on the Validation Suite, templates, etc., + as a basis for testing the LLVM OpenMP implementation. + LLVM_IR Directory containing target-specific IR files + bin/lit files In the lit model, every test must exist inside some test suite. + lit resolves the inputs specified on the command line to + test suites by searching upwards from the input path + until it finds a lit.cfg or lit.site.cfg file. + These files serve as both a marker of test suites and + as configuration files which lit loads in order to + understand how to find and run the tests inside the test suite. + bin/header Header for the tests, calls clang driver for the test, + and executes the resulting executable + bin/Makefile To generate LLVM_IR files + bin/distribute.sh Generates LLVM_IR files, finds the architecture and OS, moves + the generated IR files to the corresponding folder + runtime/tools/check-openmp.pl Retrieving the right path + runtime/tools/ + check-openmp-test.pl Returns the architecture and OS, e.g. lin_32e +------------------------------------------------------------------------------ + +Contact and Support +============================================================================== + +Contact: http://www.cs.uh.edu/~hpctools/ +Email: sunita@cs.uh.edu diff --git a/openmp/testsuite/README b/openmp/testsuite/README_OpenMP_Validation_Suite index 8ca7c61aa06..8ca7c61aa06 100644 --- a/openmp/testsuite/README +++ b/openmp/testsuite/README_OpenMP_Validation_Suite diff --git a/openmp/testsuite/adding_xfails.py b/openmp/testsuite/adding_xfails.py new file mode 100755 index 00000000000..2ad48d93440 --- /dev/null +++ b/openmp/testsuite/adding_xfails.py @@ -0,0 +1,32 @@ + +import os +import commands + +perl = "/usr/bin/perl" +LLVM = "./LLVM-IR/" +temp_filename = "temp" +XFAIL_text = "; XFAIL: *\n" + + +arch_file_list = dict() +arch_file_list['lin_32e'] = ['test_omp_task_final.ll', 'test_omp_task_untied.ll'] + + +arch_script = "../runtime/tools/check-openmp-test.pl" +arch_cmd = perl + " " + arch_script +arch = commands.getoutput(arch_cmd) +arch = arch[:len(arch)-1] + +print "Adding XFAILS ..." + +for f in arch_file_list[arch]: + filename = LLVM + arch + "/" + f + lines = open(filename).readlines() + lines.insert(1, XFAIL_text) + f2 = open(temp_filename, "w") + for l in lines: + f2.write(l) + f2.close() + + os.system("mv " + temp_filename + " " + filename) + diff --git a/openmp/testsuite/bin/Makefile b/openmp/testsuite/bin/Makefile new file mode 100644 index 00000000000..1dbd3baf8b6 --- /dev/null +++ b/openmp/testsuite/bin/Makefile @@ -0,0 +1,23 @@ +CC = clang +CFLAGS = -fopenmp -S -emit-llvm +INCL = +LIBS = + +BIN = +SRC_DIR = ./c +SRC_FILES := $(foreach DIR, $(SRC_DIR), $(wildcard $(SRC_DIR)/*.c)) +OBJS := $(patsubst %.c, %.o, $(SRC_FILES)) +TARGETLIST := $(patsubst %.c, %, $(SRC_FILES)) + +all:$(TARGETLIST) + ./distribute.sh + @ echo all done + +.PHONY: clean + +$(TARGETLIST): $(SRC_FILES) + $(CC) $(CFLAGS) $(LIBS) $(INCL) $@.c -o $@.ll + +clean: + @ rm -rf c/* + @ echo clean bin done diff --git a/openmp/testsuite/bin/distribute.sh b/openmp/testsuite/bin/distribute.sh new file mode 100755 index 00000000000..dbb0f5f007c --- /dev/null +++ b/openmp/testsuite/bin/distribute.sh @@ -0,0 +1,125 @@ +#!/bin/bash + +# add header for .ll files + +# get tmp header +cp header /tmp/tmp.header +echo >> /tmp/tmp.header + +# create temporary test package +mkdir c-$MACHTYPE$OSTYPE +`cp c/*.ll c-$MACHTYPE$OSTYPE/` + +# add new header into .ll files +for file in c-$MACHTYPE$OSTYPE/* +do + cp $file /tmp/tmp.ll.bf + cat /tmp/tmp.header /tmp/tmp.ll.bf > /tmp/tmp.ll + mv /tmp/tmp.ll $file +done + + +# in bin/, target is ../LLVM-IR/ARCH/OS +LEVEL=../LLVM-IR/ +ARCH_PATH=../LLVM-IR/ +OS_PATH=../LLVM-IR/ + +# for linux system, add your arch and os here +declare -a ARCHes=(x86 x86_64 powerpc arm mips darwin) +declare -a OSes=(linux macosx windows darwin) + +declare lowerARCH +declare lowerOS + +# target directory name +declare upperARCH +declare upperOS + +lowerARCH=$(echo "$MACHTYPE" | tr '[:upper:]' '[:lower:]') +lowerOS=$(echo "$OSTYPE" | tr '[:upper:]' '[:lower:]') + +# ARCH +for i in ${ARCHes[@]} +do + result=$(echo "${lowerARCH}" | grep $i) + if [[ "$result" != "" ]] + then + # upperARCH=$i + upperARCH=$(echo "$i" | tr '[:lower:]' '[:upper:]') + fi +done + +if [[ "$upperARCH" == "" ]] +then + echo "Not found ${lowerARCH} in the [${ARCHes[@]}]!" + exit +fi + +# OS +for i in ${OSes[@]} +do + result=$(echo "${lowerOS}" | grep $i) + if [[ "$result" != "" ]] + then + # upperOS=$i + upperOS=$(echo "$i" | tr '[:lower:]' '[:upper:]') + fi +done + +if [[ "$upperOS" == "" ]] +then + echo "Not found ${lowerOS} in the [${OSes[@]}]!" + exit +fi + +# survived, assemble the path +# ARCH_PATH+=$upperARCH/ +# OS_PATH+=$upperARCH/$upperOS/ +ARCH_newFormat=. +if [ $upperARCH = "X86" ]; then + ARCH_newFormat=32 +else + ARCH_newFormat=32e +fi +OS_newFormat=. +if [ $upperOS = "LINUX" ]; then + OS_newFormat=lin +elif [ $upperOS = "MACOSX" ]; then + OS_newFormat=mac +elif [ $upperOS = "WINDOWS" ]; then + OS_newFormat=win +elif [ $upperOS = "DARWIN" ]; then + OS_newFormat=dar +else + OS_newFormat=unknown +fi +OS_PATH+=$OS_newFormat"_"$ARCH_newFormat + +# test and create directory +if [ ! -d "$LEVEL" ]; then + mkdir $LEVEL + mkdir $OS_PATH +else + if [ ! -d "$OS_PATH" ]; then + mkdir $OS_PATH + fi +fi + +# reserve the tmp path to LLVM-IR/ARCH/OS +echo $OS_PATH"/" > lit.tmp + +# OS_ARCH=$OS_newFormat"_"$ARCH_newFormat +# echo -e "if not '$OS_ARCH' in config.root.targets:" > $OS_PATH'/'lit.local.cfg +# echo -e "\tconfig.unsupported = True" >> $OS_PATH'/'lit.local.cfg + +# copy *.ll files to ARCH/OS +`cp lit.* $LEVEL` + +# omit orph test +`rm c-$MACHTYPE$OSTYPE/ctest_*.ll` +`rm c-$MACHTYPE$OSTYPE/orph_ctest_*.ll` +`cp c-$MACHTYPE$OSTYPE/*.ll $OS_PATH` + +# clean +`rm /tmp/tmp.*` +rm -rf c-$MACHTYPE$OSTYPE/ diff --git a/openmp/testsuite/bin/header b/openmp/testsuite/bin/header new file mode 100644 index 00000000000..7cc6c7dea28 --- /dev/null +++ b/openmp/testsuite/bin/header @@ -0,0 +1,6 @@ +; RUN: %clang -liomp5 -lm %s -o %t && %t 2>&1 | FileCheck %s +; CHECK-NOT: Test failed +; CHECK: Directive worked without errors + + + diff --git a/openmp/testsuite/bin/lit.cfg b/openmp/testsuite/bin/lit.cfg new file mode 100644 index 00000000000..195781989e5 --- /dev/null +++ b/openmp/testsuite/bin/lit.cfg @@ -0,0 +1,78 @@ +# -*- Python -*- + +# Configuration file for the 'lit' test runner. + +import os +import sys +import re +import platform + +try: + import lit.util + import lit.formats +except ImportError: + pass + +# name: The name of this test suite. +config.name = 'OpenMPValidationSuite' + +# testFormat: The test format to use to interpret tests. +config.test_format = lit.formats.ShTest(execute_external=False) + +# suffixes: A list of file extensions to treat as test files +# Note this can be overridden by lit.local.cfg files +config.suffixes = ['.ll'] + +# test_source_root: The root path where tests are located. +#config.test_source_root = "/home/ichoyjx/install/openmp/testsuite/bin" +#os.path.dirname(__file__) + +# test_exec_root: The root path where tests should be run. +#mpvs_obj_root = getattr(config, 'mpvs_obj_root', None) +#if mpvs_obj_root is not None: +config.test_exec_root = "./" +#os.path.join(mpvs_obj_root, 'src') + +# Discover the 'clang' and 'clangcc' to use. + +import os + +def inferClang(PATH): + # Determine which clang to use. + clang = os.getenv('CLANG') + + # If the user set clang in the environment, definitely use that and don't + # try to validate. + if clang: + return clang + + # Otherwise look in the path. + clang = lit.util.which('clang', PATH) + + if not clang: + lit_config.fatal("couldn't find 'clang' program, try setting " + "CLANG in your environment") + + return clang + +config.clang = inferClang(config.environment['PATH']).replace('\\', '/') +config.substitutions.append( ('%clang', ' ' + config.clang + ' ') ) + +# Propogate some environment variable to test environment. +def addEnv(name): + if name in os.environ: + config.environment[name] = os.environ[name] + +addEnv('HOME') +addEnv('PWD') + + +addEnv('C_INCLUDE_PATH') +addEnv('CPLUS_INCLUDE_PATH') +addEnv('LIBRARY_PATH') +addEnv('LD_LIBRARY_PATH') +addEnv('DYLD_LIBRARY_PATH') + +# Check that the object root is known. +if config.test_exec_root is None: + lit.fatal('test execution root not set!') diff --git a/openmp/testsuite/bin/lit.site.cfg.in b/openmp/testsuite/bin/lit.site.cfg.in new file mode 100644 index 00000000000..11866d4dd58 --- /dev/null +++ b/openmp/testsuite/bin/lit.site.cfg.in @@ -0,0 +1,30 @@ +## Autogenerated by LLVM/Clang configuration. +#config.mpvs_src_root = "/home/ichoyjx/install/openmp/testsuite/bin/c" +config.mpvs_obj_root = "/tmp" +config.llvm_tools_dir = "@LLVM_TOOLS_DIR@" + + +# Needed to check if a hack needs to be applied +config.llvm_version_major = "@LLVM_VERSION_MAJOR@" + +# Compilers +# FIXME: use llvmcc not llvmgcc +config.llvmclang = "clang" + +# Features +config.enable_uclibc = True if @ENABLE_UCLIBC@ == 1 else False +config.enable_posix_runtime = True if @ENABLE_POSIX_RUNTIME@ == 1 else False +config.have_selinux = True if @HAVE_SELINUX@ == 1 else False + +# Current target +config.target_triple = "@TARGET_TRIPLE@" + +# Let the main config do the real work. +try: + lit +except NameError: + # Use lit_config class + lit_config.load_config(config, "@MPVS_SOURCE_DIR@/lit.cfg") +else: + # Use old lit class + lit.load_config(config, "@MPVS_SOURCE_DIR@/lit.cfg") diff --git a/openmp/testsuite/bin/lit.tmp b/openmp/testsuite/bin/lit.tmp new file mode 100644 index 00000000000..81d30fb0a4e --- /dev/null +++ b/openmp/testsuite/bin/lit.tmp @@ -0,0 +1 @@ +../LLVM-IR/lin_32e/ diff --git a/openmp/testsuite/customtest.txt b/openmp/testsuite/customtest.txt deleted file mode 100644 index 59d05ae9b4d..00000000000 --- a/openmp/testsuite/customtest.txt +++ /dev/null @@ -1,2 +0,0 @@ -# Add custom tests in this list -omp_parallel_copyin diff --git a/openmp/testsuite/omp_testsuite.h b/openmp/testsuite/omp_testsuite.h index 7a1866e6b68..a808d92ee42 100644 --- a/openmp/testsuite/omp_testsuite.h +++ b/openmp/testsuite/omp_testsuite.h @@ -26,139 +26,139 @@ /**********************************************************/ #define NUM_TASKS 25 #define MAX_TASKS_PER_THREAD 5 -int test_omp_nested(FILE * logfile); /* Test for omp_nested */ -int crosstest_omp_nested(FILE * logfile); /* Crosstest for omp_nested */ -int test_omp_nest_lock(FILE * logfile); /* Test for omp_nest_lock */ -int crosstest_omp_nest_lock(FILE * logfile); /* Crosstest for omp_nest_lock */ -int test_omp_task_if(FILE * logfile); /* Test for omp task if */ -int crosstest_omp_task_if(FILE * logfile); /* Crosstest for omp task if */ +int test_omp_parallel_for_ordered(FILE * logfile); /* Test for omp parallel for ordered */ +int crosstest_omp_parallel_for_ordered(FILE * logfile); /* Crosstest for omp parallel for ordered */ +int test_omp_task_imp_firstprivate(FILE * logfile); /* Test for omp task */ +int crosstest_omp_task_imp_firstprivate(FILE * logfile); /* Crosstest for omp task */ +int test_omp_taskwait(FILE * logfile); /* Test for omp taskwait */ +int crosstest_omp_taskwait(FILE * logfile); /* Crosstest for omp taskwait */ +int test_omp_barrier(FILE * logfile); /* Test for omp barrier */ +int crosstest_omp_barrier(FILE * logfile); /* Crosstest for omp barrier */ +int test_omp_parallel_for_if(FILE * logfile); /* Test for omp parallel for if */ +int crosstest_omp_parallel_for_if(FILE * logfile); /* Crosstest for omp parallel for if */ +int test_omp_atomic(FILE * logfile); /* Test for omp atomic */ +int crosstest_omp_atomic(FILE * logfile); /* Crosstest for omp atomic */ +int test_omp_get_num_threads(FILE * logfile); /* Test for omp_get_num_threads */ +int crosstest_omp_get_num_threads(FILE * logfile); /* Crosstest for omp_get_num_threads */ +int test_omp_section_private(FILE * logfile); /* Test for omp section private */ +int crosstest_omp_section_private(FILE * logfile); /* Crosstest for omp section private */ +int test_omp_parallel_if(FILE * logfile); /* Test for omp parallel if */ +int crosstest_omp_parallel_if(FILE * logfile); /* Crosstest for omp parallel if */ +int test_omp_lock(FILE * logfile); /* Test for omp_lock */ +int crosstest_omp_lock(FILE * logfile); /* Crosstest for omp_lock */ int test_omp_parallel_shared(FILE * logfile); /* Test for omp parallel shared */ int crosstest_omp_parallel_shared(FILE * logfile); /* Crosstest for omp parallel shared */ +int test_omp_task_imp_shared(FILE * logfile); /* Test for omp task */ +int crosstest_omp_task_imp_shared(FILE * logfile); /* Crosstest for omp task */ +int test_omp_task_private(FILE * logfile); /* Test for omp task private */ +int crosstest_omp_task_private(FILE * logfile); /* Crosstest for omp task private */ +int test_omp_section_lastprivate(FILE * logfile); /* Test for omp section lastprivate */ +int crosstest_omp_section_lastprivate(FILE * logfile); /* Crosstest for omp section lastprivate */ +int test_omp_parallel_firstprivate(FILE * logfile); /* Test for omp parallel firstprivate */ +int crosstest_omp_parallel_firstprivate(FILE * logfile); /* Crosstest for omp parallel firstprivate */ +int test_omp_for_auto(FILE * logfile); /* Test for omp for auto */ +int crosstest_omp_for_auto(FILE * logfile); /* Crosstest for omp for auto */ +int test_omp_for_schedule_static(FILE * logfile); /* Test for omp for schedule(static) */ +int crosstest_omp_for_schedule_static(FILE * logfile); /* Crosstest for omp for schedule(static) */ +int test_omp_threadprivate_for(FILE * logfile); /* Test for omp threadprivate */ +int crosstest_omp_threadprivate_for(FILE * logfile); /* Crosstest for omp threadprivate */ +int test_omp_task_untied(FILE * logfile); /* Test for omp task untied */ +int crosstest_omp_task_untied(FILE * logfile); /* Crosstest for omp task untied */ +int test_omp_parallel_private(FILE * logfile); /* Test for omp parallel private */ +int crosstest_omp_parallel_private(FILE * logfile); /* Crosstest for omp parallel private */ +int test_omp_single_nowait(FILE * logfile); /* Test for omp single nowait */ +int crosstest_omp_single_nowait(FILE * logfile); /* Crosstest for omp single nowait */ +int test_omp_critical(FILE * logfile); /* Test for omp critical */ +int crosstest_omp_critical(FILE * logfile); /* Crosstest for omp critical */ +int test_omp_get_wtick(FILE * logfile); /* Test for omp_get_wtick */ +int crosstest_omp_get_wtick(FILE * logfile); /* Crosstest for omp_get_wtick */ int test_omp_single(FILE * logfile); /* Test for omp single */ int crosstest_omp_single(FILE * logfile); /* Crosstest for omp single */ int test_omp_parallel_sections_reduction(FILE * logfile); /* Test for omp parallel sections reduction */ int crosstest_omp_parallel_sections_reduction(FILE * logfile); /* Crosstest for omp parallel sections reduction */ -int test_omp_for_schedule_dynamic(FILE * logfile); /* Test for omp for schedule(dynamic) */ -int crosstest_omp_for_schedule_dynamic(FILE * logfile); /* Crosstest for omp for schedule(dynamic) */ +int test_omp_taskyield(FILE * logfile); /* Test for omp taskyield */ +int crosstest_omp_taskyield(FILE * logfile); /* Crosstest for omp taskyield */ int test_has_openmp(FILE * logfile); /* Test for _OPENMP */ int crosstest_has_openmp(FILE * logfile); /* Crosstest for _OPENMP */ -int test_omp_taskwait(FILE * logfile); /* Test for omp taskwait */ -int crosstest_omp_taskwait(FILE * logfile); /* Crosstest for omp taskwait */ int test_omp_parallel_for_lastprivate(FILE * logfile); /* Test for omp parallel for lastprivate */ int crosstest_omp_parallel_for_lastprivate(FILE * logfile); /* Crosstest for omp parallel for lastprivate */ -int test_omp_for_schedule_static_3(FILE * logfile); /* Test for omp for schedule(static) */ -int crosstest_omp_for_schedule_static_3(FILE * logfile); /* Crosstest for omp for schedule(static) */ -int test_omp_critical(FILE * logfile); /* Test for omp critical */ -int crosstest_omp_critical(FILE * logfile); /* Crosstest for omp critical */ int test_omp_parallel_sections_lastprivate(FILE * logfile); /* Test for omp parallel sections lastprivate */ int crosstest_omp_parallel_sections_lastprivate(FILE * logfile); /* Crosstest for omp parallel sections lastprivate */ +int test_omp_for_lastprivate(FILE * logfile); /* Test for omp for lastprivate */ +int crosstest_omp_for_lastprivate(FILE * logfile); /* Crosstest for omp for lastprivate */ +int test_omp_parallel_sections_firstprivate(FILE * logfile); /* Test for omp parallel sections firstprivate */ +int crosstest_omp_parallel_sections_firstprivate(FILE * logfile); /* Crosstest for omp parallel sections firstprivate */ +int test_omp_parallel_for_reduction(FILE * logfile); /* Test for omp parallel for reduction */ +int crosstest_omp_parallel_for_reduction(FILE * logfile); /* Crosstest for omp parallel for reduction */ +int test_omp_test_lock(FILE * logfile); /* Test for omp_test_lock */ +int crosstest_omp_test_lock(FILE * logfile); /* Crosstest for omp_test_lock */ +int test_omp_parallel_for_firstprivate(FILE * logfile); /* Test for omp parallel for firstprivate */ +int crosstest_omp_parallel_for_firstprivate(FILE * logfile); /* Crosstest for omp parallel for firstprivate */ +int test_omp_parallel_sections_private(FILE * logfile); /* Test for omp parallel sections private */ +int crosstest_omp_parallel_sections_private(FILE * logfile); /* Crosstest for omp parallel sections private */ int test_omp_parallel_num_threads(FILE * logfile); /* Test for omp parellel num_threads */ int crosstest_omp_parallel_num_threads(FILE * logfile); /* Crosstest for omp parellel num_threads */ +int test_omp_for_reduction(FILE * logfile); /* Test for omp for reduction */ +int crosstest_omp_for_reduction(FILE * logfile); /* Crosstest for omp for reduction */ +int test_omp_sections_nowait(FILE * logfile); /* Test for omp parallel sections nowait */ +int crosstest_omp_sections_nowait(FILE * logfile); /* Crosstest for omp parallel sections nowait */ +int test_omp_parallel_reduction(FILE * logfile); /* Test for omp parallel reduction */ +int crosstest_omp_parallel_reduction(FILE * logfile); /* Crosstest for omp parallel reduction */ +int test_omp_nested(FILE * logfile); /* Test for omp_nested */ +int crosstest_omp_nested(FILE * logfile); /* Crosstest for omp_nested */ +int test_omp_threadprivate(FILE * logfile); /* Test for omp threadprivate */ +int crosstest_omp_threadprivate(FILE * logfile); /* Crosstest for omp threadprivate */ int test_omp_sections_reduction(FILE * logfile); /* Test for omp sections reduction */ int crosstest_omp_sections_reduction(FILE * logfile); /* Crosstest for omp sections reduction */ -int test_omp_parallel_if(FILE * logfile); /* Test for omp parallel if */ -int crosstest_omp_parallel_if(FILE * logfile); /* Crosstest for omp parallel if */ -int test_omp_task_imp_shared(FILE * logfile); /* Test for omp task */ -int crosstest_omp_task_imp_shared(FILE * logfile); /* Crosstest for omp task */ -int test_omp_section_lastprivate(FILE * logfile); /* Test for omp section lastprivate */ -int crosstest_omp_section_lastprivate(FILE * logfile); /* Crosstest for omp section lastprivate */ -int test_omp_for_collapse(FILE * logfile); /* Test for omp for collapse */ -int crosstest_omp_for_collapse(FILE * logfile); /* Crosstest for omp for collapse */ -int test_omp_parallel_for_firstprivate(FILE * logfile); /* Test for omp parallel for firstprivate */ -int crosstest_omp_parallel_for_firstprivate(FILE * logfile); /* Crosstest for omp parallel for firstprivate */ -int test_omp_parallel_copyin(FILE * logfile); /* Test for omp parallel copyin */ -int crosstest_omp_parallel_copyin(FILE * logfile); /* Crosstest for omp parallel copyin */ -int test_omp_test_nest_lock(FILE * logfile); /* Test for omp_test_nest_lock */ -int crosstest_omp_test_nest_lock(FILE * logfile); /* Crosstest for omp_test_nest_lock */ +int test_omp_for_schedule_guided(FILE * logfile); /* Test for omp for schedule(guided) */ +int crosstest_omp_for_schedule_guided(FILE * logfile); /* Crosstest for omp for schedule(guided) */ +int test_omp_task_final(FILE * logfile); /* Test for omp task final */ +int crosstest_omp_task_final(FILE * logfile); /* Crosstest for omp task final */ +int test_omp_parallel_for_private(FILE * logfile); /* Test for omp parallel for private */ +int crosstest_omp_parallel_for_private(FILE * logfile); /* Crosstest for omp parallel for private */ +int test_omp_flush(FILE * logfile); /* Test for omp flush */ +int crosstest_omp_flush(FILE * logfile); /* Crosstest for omp flush */ +int test_omp_for_private(FILE * logfile); /* Test for omp for private */ +int crosstest_omp_for_private(FILE * logfile); /* Crosstest for omp for private */ int test_omp_for_ordered(FILE * logfile); /* Test for omp for ordered */ int crosstest_omp_for_ordered(FILE * logfile); /* Crosstest for omp for ordered */ -int test_omp_parallel_reduction(FILE * logfile); /* Test for omp parallel reduction */ -int crosstest_omp_parallel_reduction(FILE * logfile); /* Crosstest for omp parallel reduction */ -int test_omp_get_wtick(FILE * logfile); /* Test for omp_get_wtick */ -int crosstest_omp_get_wtick(FILE * logfile); /* Crosstest for omp_get_wtick */ -int test_omp_taskyield(FILE * logfile); /* Test for omp taskyield */ -int crosstest_omp_taskyield(FILE * logfile); /* Crosstest for omp taskyield */ -int test_omp_for_schedule_static(FILE * logfile); /* Test for omp for schedule(static) */ -int crosstest_omp_for_schedule_static(FILE * logfile); /* Crosstest for omp for schedule(static) */ -int test_omp_single_private(FILE * logfile); /* Test for omp singel private */ -int crosstest_omp_single_private(FILE * logfile); /* Crosstest for omp singel private */ -int test_omp_for_firstprivate(FILE * logfile); /* Test for omp for firstprivate */ -int crosstest_omp_for_firstprivate(FILE * logfile); /* Crosstest for omp for firstprivate */ -int test_omp_parallel_for_reduction(FILE * logfile); /* Test for omp parallel for reduction */ -int crosstest_omp_parallel_for_reduction(FILE * logfile); /* Crosstest for omp parallel for reduction */ -int test_omp_parallel_for_if(FILE * logfile); /* Test for omp parallel for if */ -int crosstest_omp_parallel_for_if(FILE * logfile); /* Crosstest for omp parallel for if */ -int test_omp_single_nowait(FILE * logfile); /* Test for omp single nowait */ -int crosstest_omp_single_nowait(FILE * logfile); /* Crosstest for omp single nowait */ -int test_omp_task_firstprivate(FILE * logfile); /* Test for omp task firstprivate */ -int crosstest_omp_task_firstprivate(FILE * logfile); /* Crosstest for omp task firstprivate */ -int test_omp_for_nowait(FILE * logfile); /* Test for omp parallel for nowait */ -int crosstest_omp_for_nowait(FILE * logfile); /* Crosstest for omp parallel for nowait */ -int test_omp_task_private(FILE * logfile); /* Test for omp task private */ -int crosstest_omp_task_private(FILE * logfile); /* Crosstest for omp task private */ -int test_omp_test_lock(FILE * logfile); /* Test for omp_test_lock */ -int crosstest_omp_test_lock(FILE * logfile); /* Crosstest for omp_test_lock */ -int test_omp_get_wtime(FILE * logfile); /* Test for omp_get_wtime */ -int crosstest_omp_get_wtime(FILE * logfile); /* Crosstest for omp_get_wtime */ -int test_omp_task_imp_firstprivate(FILE * logfile); /* Test for omp task */ -int crosstest_omp_task_imp_firstprivate(FILE * logfile); /* Crosstest for omp task */ -int test_omp_atomic(FILE * logfile); /* Test for omp atomic */ -int crosstest_omp_atomic(FILE * logfile); /* Crosstest for omp atomic */ -int test_omp_threadprivate_for(FILE * logfile); /* Test for omp threadprivate */ -int crosstest_omp_threadprivate_for(FILE * logfile); /* Crosstest for omp threadprivate */ int test_omp_single_copyprivate(FILE * logfile); /* Test for omp single copyprivate */ int crosstest_omp_single_copyprivate(FILE * logfile); /* Crosstest for omp single copyprivate */ +int test_omp_task_if(FILE * logfile); /* Test for omp task if */ +int crosstest_omp_task_if(FILE * logfile); /* Crosstest for omp task if */ +int test_omp_section_firstprivate(FILE * logfile); /* Test for omp firstprivate */ +int crosstest_omp_section_firstprivate(FILE * logfile); /* Crosstest for omp firstprivate */ +int test_omp_for_schedule_static_3(FILE * logfile); /* Test for omp for schedule(static) */ +int crosstest_omp_for_schedule_static_3(FILE * logfile); /* Crosstest for omp for schedule(static) */ +int test_omp_task_firstprivate(FILE * logfile); /* Test for omp task firstprivate */ +int crosstest_omp_task_firstprivate(FILE * logfile); /* Crosstest for omp task firstprivate */ +int test_omp_for_collapse(FILE * logfile); /* Test for omp for collapse */ +int crosstest_omp_for_collapse(FILE * logfile); /* Crosstest for omp for collapse */ +int test_omp_in_parallel(FILE * logfile); /* Test for omp_in_parallel */ +int crosstest_omp_in_parallel(FILE * logfile); /* Crosstest for omp_in_parallel */ +int test_omp_for_schedule_dynamic(FILE * logfile); /* Test for omp for schedule(dynamic) */ +int crosstest_omp_for_schedule_dynamic(FILE * logfile); /* Crosstest for omp for schedule(dynamic) */ +int test_omp_for_firstprivate(FILE * logfile); /* Test for omp for firstprivate */ +int crosstest_omp_for_firstprivate(FILE * logfile); /* Crosstest for omp for firstprivate */ int test_omp_master(FILE * logfile); /* Test for omp master */ int crosstest_omp_master(FILE * logfile); /* Crosstest for omp master */ -int test_omp_parallel_firstprivate(FILE * logfile); /* Test for omp parallel firstprivate */ -int crosstest_omp_parallel_firstprivate(FILE * logfile); /* Crosstest for omp parallel firstprivate */ -int test_omp_parallel_for_private(FILE * logfile); /* Test for omp parallel for private */ -int crosstest_omp_parallel_for_private(FILE * logfile); /* Crosstest for omp parallel for private */ +int test_omp_single_private(FILE * logfile); /* Test for omp singel private */ +int crosstest_omp_single_private(FILE * logfile); /* Crosstest for omp singel private */ +int test_omp_task(FILE * logfile); /* Test for omp task */ +int crosstest_omp_task(FILE * logfile); /* Crosstest for omp task */ int test_omp_parallel_default(FILE * logfile); /* Test for omp parallel default */ int crosstest_omp_parallel_default(FILE * logfile); /* Crosstest for omp parallel default */ -int test_omp_parallel_for_ordered(FILE * logfile); /* Test for omp parallel for ordered */ -int crosstest_omp_parallel_for_ordered(FILE * logfile); /* Crosstest for omp parallel for ordered */ -int test_omp_for_lastprivate(FILE * logfile); /* Test for omp for lastprivate */ -int crosstest_omp_for_lastprivate(FILE * logfile); /* Crosstest for omp for lastprivate */ -int test_omp_lock(FILE * logfile); /* Test for omp_lock */ -int crosstest_omp_lock(FILE * logfile); /* Crosstest for omp_lock */ -int test_omp_barrier(FILE * logfile); /* Test for omp barrier */ -int crosstest_omp_barrier(FILE * logfile); /* Crosstest for omp barrier */ -int test_omp_sections_nowait(FILE * logfile); /* Test for omp parallel sections nowait */ -int crosstest_omp_sections_nowait(FILE * logfile); /* Crosstest for omp parallel sections nowait */ +int test_omp_for_nowait(FILE * logfile); /* Test for omp parallel for nowait */ +int crosstest_omp_for_nowait(FILE * logfile); /* Crosstest for omp parallel for nowait */ +int test_omp_test_nest_lock(FILE * logfile); /* Test for omp_test_nest_lock */ +int crosstest_omp_test_nest_lock(FILE * logfile); /* Crosstest for omp_test_nest_lock */ +int test_omp_nest_lock(FILE * logfile); /* Test for omp_nest_lock */ +int crosstest_omp_nest_lock(FILE * logfile); /* Crosstest for omp_nest_lock */ +int test_omp_parallel_copyin(FILE * logfile); /* Test for omp parallel copyin */ +int crosstest_omp_parallel_copyin(FILE * logfile); /* Crosstest for omp parallel copyin */ int test_omp_master_3(FILE * logfile); /* Test for omp master */ int crosstest_omp_master_3(FILE * logfile); /* Crosstest for omp master */ -int test_omp_task_untied(FILE * logfile); /* Test for omp task untied */ -int crosstest_omp_task_untied(FILE * logfile); /* Crosstest for omp task untied */ -int test_omp_task(FILE * logfile); /* Test for omp task */ -int crosstest_omp_task(FILE * logfile); /* Crosstest for omp task */ -int test_omp_in_parallel(FILE * logfile); /* Test for omp_in_parallel */ -int crosstest_omp_in_parallel(FILE * logfile); /* Crosstest for omp_in_parallel */ -int test_omp_parallel_sections_firstprivate(FILE * logfile); /* Test for omp parallel sections firstprivate */ -int crosstest_omp_parallel_sections_firstprivate(FILE * logfile); /* Crosstest for omp parallel sections firstprivate */ -int test_omp_for_auto(FILE * logfile); /* Test for omp for auto */ -int crosstest_omp_for_auto(FILE * logfile); /* Crosstest for omp for auto */ -int test_omp_task_final(FILE * logfile); /* Test for omp task final */ -int crosstest_omp_task_final(FILE * logfile); /* Crosstest for omp task final */ -int test_omp_section_private(FILE * logfile); /* Test for omp section private */ -int crosstest_omp_section_private(FILE * logfile); /* Crosstest for omp section private */ -int test_omp_parallel_sections_private(FILE * logfile); /* Test for omp parallel sections private */ -int crosstest_omp_parallel_sections_private(FILE * logfile); /* Crosstest for omp parallel sections private */ -int test_omp_for_reduction(FILE * logfile); /* Test for omp for reduction */ -int crosstest_omp_for_reduction(FILE * logfile); /* Crosstest for omp for reduction */ -int test_omp_for_private(FILE * logfile); /* Test for omp for private */ -int crosstest_omp_for_private(FILE * logfile); /* Crosstest for omp for private */ -int test_omp_flush(FILE * logfile); /* Test for omp flush */ -int crosstest_omp_flush(FILE * logfile); /* Crosstest for omp flush */ -int test_omp_parallel_private(FILE * logfile); /* Test for omp parallel private */ -int crosstest_omp_parallel_private(FILE * logfile); /* Crosstest for omp parallel private */ -int test_omp_threadprivate(FILE * logfile); /* Test for omp threadprivate */ -int crosstest_omp_threadprivate(FILE * logfile); /* Crosstest for omp threadprivate */ -int test_omp_section_firstprivate(FILE * logfile); /* Test for omp firstprivate */ -int crosstest_omp_section_firstprivate(FILE * logfile); /* Crosstest for omp firstprivate */ -int test_omp_for_schedule_guided(FILE * logfile); /* Test for omp for schedule(guided) */ -int crosstest_omp_for_schedule_guided(FILE * logfile); /* Crosstest for omp for schedule(guided) */ -int test_omp_get_num_threads(FILE * logfile); /* Test for omp_get_num_threads */ -int crosstest_omp_get_num_threads(FILE * logfile); /* Crosstest for omp_get_num_threads */ +int test_omp_get_wtime(FILE * logfile); /* Test for omp_get_wtime */ +int crosstest_omp_get_wtime(FILE * logfile); /* Crosstest for omp_get_wtime */ #endif diff --git a/openmp/testsuite/ompts_standaloneProc.c b/openmp/testsuite/ompts_standaloneProc.c index b03052a51e4..591b59303f2 100644 --- a/openmp/testsuite/ompts_standaloneProc.c +++ b/openmp/testsuite/ompts_standaloneProc.c @@ -5,7 +5,7 @@ int main() int failed=0; /* Number of failed tests */ int success=0; /* number of succeeded tests */ static FILE * logFile; /* pointer onto the logfile */ - static const char * logFileName = "bin/c/<testfunctionname></testfunctionname>.log"; /* name of the logfile */ + static const char * logFileName = "<testfunctionname></testfunctionname>.log"; /* name of the logfile */ /* Open a new Logfile or overwrite the existing one. */ |