diff --git a/buildbot/osuosl/master/config/builders.py b/buildbot/osuosl/master/config/builders.py --- a/buildbot/osuosl/master/config/builders.py +++ b/buildbot/osuosl/master/config/builders.py @@ -921,13 +921,13 @@ "-DLLVM_TARGET_ARCH=arm-linux-gnueabi", "-DLLVM_ENABLE_ASSERTIONS=True", "-DLLVM_ENABLE_LIBCXX:BOOL=ON", - "-DPOLLY_ENABLE_GPGPU_CODEGEN=OFF", # Auto-enabled in getPollyBuildFactory + "-DPOLLY_ENABLE_GPGPU_CODEGEN=OFF", "-DCMAKE_C_COMPILER:FILEPATH=/local/clang+llvm-12.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang", "-DCMAKE_CXX_COMPILER:FILEPATH=/local/clang+llvm-12.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang++"])}, {'name' : "polly-x86_64-linux", 'tags' : ["polly"], - 'workernames' : ["polly-x86_64-fdcserver", "polly-x86_64-gce1"], + 'workernames' : ["polly-x86_64-gce1"], 'builddir': "polly-x86_64-linux", 'factory' : PollyBuilder.getPollyBuildFactory( clean=False, @@ -935,15 +935,156 @@ make='ninja', extraCmakeArgs=[ "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DBUILD_SHARED_LIBS=ON", + "-DLLVM_ENABLE_ASSERTIONS=True", + "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", + "-DCLANG_ENABLE_ARCMT=OFF", + "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON" + ])}, + + {'name' : "polly-x86_64-linux-plugin", + 'tags' : ["polly"], + 'workernames' : ["polly-x86_64-gce1"], + 'builddir': "polly-x86_64-linux", + 'factory' : PollyBuilder.getPollyBuildFactory( + clean=False, + install=False, + make='ninja', + extraCmakeArgs=[ + "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DLLVM_ENABLE_ASSERTIONS=True", + "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", + "-DCLANG_ENABLE_ARCMT=OFF", + "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DLLVM_POLLY_LINK_INTO_TOOLS=OFF", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=OFF" # Not all required symbols available in opt executable + ])}, + + {'name' : "polly-x86_64-linux-noassert", + 'tags' : ["polly"], + 'workernames' : ["polly-x86_64-gce1"], + 'builddir': "polly-x86_64-linux", + 'factory' : PollyBuilder.getPollyBuildFactory( + clean=False, + install=False, + make='ninja', + extraCmakeArgs=[ + "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DLLVM_ENABLE_ASSERTIONS=False", + "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", + "-DCLANG_ENABLE_ARCMT=OFF", + "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON" + ])}, + + {'name' : "polly-x86_64-linux-shared", + 'tags' : ["polly"], + 'workernames' : ["polly-x86_64-gce2"], + 'builddir': "polly-x86_64-linux", + 'factory' : PollyBuilder.getPollyBuildFactory( + clean=False, + install=False, + make='ninja', + extraCmakeArgs=[ + "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DLLVM_ENABLE_ASSERTIONS=True", + "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", + "-DCLANG_ENABLE_ARCMT=OFF", + "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DBUILD_SHARED_LIBS=ON", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON" + ])}, + + {'name' : "polly-x86_64-linux-shared-plugin", + 'tags' : ["polly"], + 'workernames' : ["polly-x86_64-gce2"], + 'builddir': "polly-x86_64-linux", + 'factory' : PollyBuilder.getPollyBuildFactory( + clean=False, + install=False, + make='ninja', + extraCmakeArgs=[ + "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", "-DLLVM_ENABLE_ASSERTIONS=True", "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", "-DCLANG_ENABLE_ARCMT=OFF", "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DBUILD_SHARED_LIBS=ON", + "-DLLVM_POLLY_LINK_INTO_TOOLS=OFF", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON" + ])}, + + {'name' : "polly-x86_64-linux-shlib", + 'tags' : ["polly"], + 'workernames' : ["polly-x86_64-gce2"], + 'builddir': "polly-x86_64-linux", + 'factory' : PollyBuilder.getPollyBuildFactory( + clean=False, + install=False, + make='ninja', + extraCmakeArgs=[ + "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DLLVM_ENABLE_ASSERTIONS=True", + "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", + "-DCLANG_ENABLE_ARCMT=OFF", + "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DLLVM_BUILD_LLVM_DYLIB=ON", + "-DLLVM_LINK_LLVM_DYLIB=ON", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON" + ])}, + + {'name' : "polly-x86_64-linux-shlib-plugin", + 'tags' : ["polly"], + 'workernames' : ["polly-x86_64-gce2"], + 'builddir': "polly-x86_64-linux", + 'factory' : PollyBuilder.getPollyBuildFactory( + clean=False, + install=False, + make='ninja', + extraCmakeArgs=[ + "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DLLVM_ENABLE_ASSERTIONS=True", + "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", + "-DCLANG_ENABLE_ARCMT=OFF", + "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF", + "-DLLVM_ENABLE_LLD=ON", + "-DLLVM_BUILD_LLVM_DYLIB=ON", + "-DLLVM_LINK_LLVM_DYLIB=ON", + "-DLLVM_POLLY_LINK_INTO_TOOLS=OFF", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON" ])}, {'name' : "polly-x86_64-linux-test-suite", 'tags' : ["polly"], - 'workernames' : ["polly-x86_64-fdcserver", "polly-x86_64-gce2"], + 'workernames' : ["polly-x86_64-fdcserver", "minipc-1050ti-linux"], 'builddir': "polly-x86_64-linux-test-suite", 'factory' : PollyBuilder.getPollyBuildFactory( clean=False, @@ -951,13 +1092,22 @@ make='ninja', extraCmakeArgs=[ "-G", "Ninja", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", "-DLLVM_ENABLE_ASSERTIONS=True", "-DLLVM_TARGETS_TO_BUILD='X86;NVPTX'", "-DCLANG_ENABLE_ARCMT=OFF", "-DCLANG_ENABLE_STATIC_ANALYZER=OFF", + "-DCLANG_ENABLE_OBJC_REWRITER=OFF" ], testsuite=True, - extraTestsuiteCmakeArgs=["-G", "Ninja"] + extraTestsuiteCmakeArgs=[ + "-G", "Ninja", + "-DTEST_SUITE_COLLECT_COMPILE_TIME=OFF", + "-DTEST_SUITE_COLLECT_STATS=OFF", + "-DTEST_SUITE_COLLECT_CODE_SIZE=OFF", + WithProperties("-DTEST_SUITE_EXTERNALS_DIR=%(builddir)s/../../test-suite-externals"), + ] )}, # AOSP builders. @@ -975,7 +1125,7 @@ "-DLLVM_TARGET_ARCH=arm-linux-androideabi", "-DLLVM_ENABLE_ASSERTIONS=True", "-DLLVM_ENABLE_LIBCXX:BOOL=ON", - "-DPOLLY_ENABLE_GPGPU_CODEGEN=OFF", # Auto-enabled in getPollyBuildFactory (used indirectly) + "-DPOLLY_ENABLE_GPGPU_CODEGEN=OFF", "-DCMAKE_C_COMPILER:FILEPATH=/local/clang+llvm-12.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang", "-DCMAKE_CXX_COMPILER:FILEPATH=/local/clang+llvm-12.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang++"], timeout=240, @@ -1005,6 +1155,7 @@ "-DLLVM_REVERSE_ITERATION:BOOL=ON", "-DLLVM_ENABLE_ASSERTIONS=True", "-DLLVM_ENABLE_LIBCXX:BOOL=ON", + "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON", "-DCMAKE_C_COMPILER:FILEPATH=/local/clang+llvm-12.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang", "-DCMAKE_CXX_COMPILER:FILEPATH=/local/clang+llvm-12.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang++"])}, diff --git a/zorg/buildbot/builders/PollyBuilder.py b/zorg/buildbot/builders/PollyBuilder.py --- a/zorg/buildbot/builders/PollyBuilder.py +++ b/zorg/buildbot/builders/PollyBuilder.py @@ -44,9 +44,6 @@ merged_env.update(env) # Overwrite pre-set items with the given ones, so user can set anything. depends_on_projects = ['llvm','clang','polly'] - if testsuite: - # XRay tests in test-suite require compiler-rt - depends_on_projects += ['compiler-rt'] cleanBuildRequestedByProperty = lambda step: step.build.getProperty("clean", False) cleanBuildRequested = lambda step: clean or step.build.getProperty("clean", default=step.build.getProperty("clean_obj")) @@ -77,7 +74,6 @@ cmakeCommand = ["cmake", "../%s/llvm" % llvm_srcdir, "-DCMAKE_COLOR_MAKEFILE=OFF", "-DPOLLY_TEST_DISABLE_BAR=ON", - "-DPOLLY_ENABLE_GPGPU_CODEGEN=ON", "-DCMAKE_BUILD_TYPE=Release", "-DLLVM_POLLY_LINK_INTO_TOOLS=ON", "-DLLVM_ENABLE_PROJECTS=%s" % ";".join(f.depends_on_projects), @@ -87,7 +83,10 @@ haltOnFailure=False, description=["cmake configure"], workdir=llvm_objdir, - env=merged_env)) + env=merged_env, + logfiles={ + 'CMakeCache.txt' : llvm_objdir + '/CMakeCache.txt', + })) # Build f.addStep(WarningCountingShellCommand(name="build", @@ -154,14 +153,13 @@ haltOnFailure=False, warnOnFailure=True)) - # -Wno-unused-command-line-argument is needed because linking will not uses the "-mllvm -polly" argument. + # -Wno-unused-command-line-argument is needed because linking will not use the "-mllvm -polly" argument. f.addStep(ShellCommand(name='test-suite_cmake-configure', description=["Test-Suite: cmake"], command=["cmake", '-B', testsuite_builddir, '-S', testsuite_srcdir, "-DCMAKE_BUILD_TYPE=Release", - "-DTEST_SUITE_COLLECT_STATS=ON", "-DTEST_SUITE_EXTRA_C_FLAGS=-Wno-unused-command-line-argument -mllvm -polly", - "-DTEST_SUITE_EXTRA_CXX_FLAGS=-mllvm -polly", + "-DTEST_SUITE_EXTRA_CXX_FLAGS=-Wno-unused-command-line-argument -mllvm -polly", "-DTEST_SUITE_LIT_FLAGS=-vv;-o;report.json", WithProperties("-DCMAKE_C_COMPILER=" + clangexe), WithProperties("-DCMAKE_CXX_COMPILER=" + clangxxexe), @@ -170,7 +168,10 @@ ] + extraTestsuiteCmakeArgs, haltOnFailure=True, workdir='.', - env=merged_env)) + env=merged_env, + logfiles={ + 'CMakeCache.txt' : testsuite_builddir + '/CMakeCache.txt', + })) f.addStep(WarningCountingShellCommand(name='test-suite_build', description=["Test-Suite: build"], @@ -183,7 +184,7 @@ f.addStep(LitTestCommand(name='test-suite_run', description=['Test-Suite: run'], - command=[WithProperties(litexe), '-vv', '-o', 'report.json', '.'], + command=[WithProperties(litexe), '-vv', '-s', '-o', 'report.json', '.'], haltOnFailure=True, workdir=testsuite_builddir, logfiles={