Esempio n. 1
0
def _get_polly_builders():
    return [
        {'name': "polly-i386-linux",
         'slavenames':["raghesh1"],
         'builddir':"polly-i386-linux",
         'factory': PollyBuilder.getPollyBuildFactory()}
       ]
Esempio n. 2
0
def _get_polly_builders():
    return [
        {'name': "polly-amd64-linux",
         'slavenames':["grosser1"],
         'builddir':"polly-amd64-linux",
         'factory': PollyBuilder.getPollyBuildFactory()},

        {'name': "perf-x86_64-penryn-O3-polly",
         'slavenames':["pollyperf6"],
         'builddir':"perf-x86_64-penryn-O3-polly",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-O3-polly')},
        {'name': "perf-x86_64-penryn-O3-polly-codegen-isl",
         'slavenames':["pollyperf7"],
         'builddir':"pollyperf-O3-polly-codegen-isl",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--mllvm=-polly-code-generator=isl'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-codegen-isl')},
        {'name': "perf-x86_64-penryn-O3-polly-scev",
         'slavenames':["pollyperf10"],
         'builddir':"perf-x86_64-penryn-O3-polly-scev",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--mllvm=-polly-codegen-scev'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-scev')},
        {'name': "perf-x86_64-penryn-O3-polly-scev-codegen-isl",
         'slavenames':["pollyperf11"],
         'builddir':"perf-x86_64-penryn-O3-polly-svev-codegen-isl",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--mllvm=-polly-code-generator=isl', '--mllvm=-polly-codegen-scev'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-polly-scev-codegen-isl')},
        {'name': "perf-x86_64-penryn-O3-polly-detect",
         'slavenames':["pollyperf14"],
         'builddir':"perf-x86_64-penryn-O3-polly-detect",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--mllvm=-polly-code-generator=none', '--mllvm=-polly-optimizer=none', '--mllvm=-polly-run-dce=false'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-detect')}
       ]
Esempio n. 3
0
def getAOSPBuildFactory(
    device,                # Target device for AOSP build
    build_clang=False,     # Flag to control building Clang for AOSP target build
    extra_cmake_args=[],   # Extra args for the LLVM cmake command
                           # This flag is ignored if build_clang is False
    timeout=None,          # Maximum CPU time in seconds, umlimited if 'None'
    target_clang=None,     # Path to the Clang used for AOSP target build
                           # Set target_clang to None to use AOSP's default Clang
                           # This flag is ignored if build_clang is True
    target_flags=None,     # Extra C/CXX flags for AOSP target build
    jobs=None,             # Number of concurrent jobs
    extra_make_args=None,  # Extra args for the make command
    env={},                # Environmen variables for all steps
    clean=False,           # Flag to control whether AOSP repo is cleaned
    sync=False,            # Flag to control whether AOSP repo is synced
    patch=None):           # Name of the patch to apply to AOSP source
    f = buildbot.process.factory.BuildFactory()
    clang_dir = target_clang

    # Build Clang for AOSP target build
    if build_clang:
        f = PollyBuilder.getPollyBuildFactory(clean=True,
                                              install=True,
                                              make='ninja',
                                              jobs=jobs,
                                              extraCmakeArgs=extra_cmake_args)
        clang_dir = 'llvm.inst/bin'

    # Restore AOSP repo to a clean state
    if clean:
        f.addStep(ShellCommand(name="clean-repo",
                               command=['repo', 'forall', '-c',
                                        'git reset --hard; git clean -fdx'],
                               haltOnFailure=False,
                               description=["clean repo"],
                               workdir=".",
                               env=env))

    # Sync AOSP repo
    if sync:
        f.addStep(ShellCommand(name="sync-repo",
                               command=['repo', 'sync', '-c', '--no-tags'],
                               haltOnFailure=False,
                               description=["sync repo"],
                               workdir=".",
                               env=env))

    # Patch AOSP build system to allow switching Clang for target build
    if patch:
        f.addStep(ShellCommand(name="patch-aosp",
                               command=['patch', '-p1', '-i',
                                        'patches/%s.patch' % patch],
                               haltOnFailure=True,
                               description=["patch aosp"],
                               workdir=".",
                               env=env))

    # Delete existing output dir
    f.addStep(ShellCommand(name="delete-out-dir",
                           command=['rm', '-rf', 'out'],
                           haltOnFailure=False,
                           description=["delete out dir"],
                           workdir=".",
                           env=env))

    # Build AOSP
    f.addStep(ShellCommand(name="build-aosp",
                           command=getAOSPBuildCommand(device=device,
                                                       timeout=timeout,
                                                       target_clang=clang_dir,
                                                       target_flags=target_flags,
                                                       jobs=jobs,
                                                       extra_make_args=extra_make_args),
                           haltOnFailure=True,
                           description=["build aosp"],
                           workdir=".",
                           env=env))
    return f
Esempio n. 4
0
def _get_clang_builders():

    return [
        {'name': "clang-atom-d525-fedora-rel",
         'slavenames':["atom1-buildbot"],
         'builddir':"clang-atom-d525-fedora-rel",
         'factory' : ClangBuilder.getClangBuildFactory(stage1_config='Release+Asserts')},

#        {'name': "clang-x86_64-ubuntu",
#         'slavenames':["arxan_raphael"],
#         'builddir':"clang-x86_64-ubuntu",
#         'factory' : ClangBuilder.getClangBuildFactory(extra_configure_args=['--enable-shared'])},

        {'name': "clang-native-arm-cortex-a9",
         'slavenames':["as-bldslv1", "as-bldslv2", "as-bldslv3"],
         'builddir':"clang-native-arm-cortex-a9",
         'factory' : ClangBuilder.getClangBuildFactory(
                     stage1_config='Release+Asserts',
                     clean=False,
                     env = { 'CXXFLAGS' : '-Wno-psabi', 'CFLAGS' : '-Wno-psabi'},
                     extra_configure_args=['--build=armv7l-unknown-linux-gnueabihf',
                                           '--host=armv7l-unknown-linux-gnueabihf',
                                           '--target=armv7l-unknown-linux-gnueabihf',
                                           '--with-cpu=cortex-a9',
                                           '--with-fpu=neon',
                                           '--with-float=hard',
                                           '--enable-targets=arm'])},

        {'name': "clang-native-arm-cortex-a15",
         'slavenames':["linaro-chrome-01"],
         'builddir':"clang-native-arm-cortex-a15",
         'factory' : ClangBuilder.getClangBuildFactory(
                     stage1_config='Release+Asserts',
                     clean=True,
                     test=True,
                     extra_configure_args=[ '--with-cpu=cortex-a15',
                                            '--with-fpu=neon',
                                            '--with-float=hard',
                                            '--enable-targets=arm'])},

        {'name': "clang-native-arm-cortex-a15-self-host",
         'slavenames':["linaro-chrome-02"],
         'builddir':"clang-native-arm-cortex-a15-self-host",
         'factory' : ClangBuilder.getClangBuildFactory(
                     stage1_config='Release+Asserts',
                     stage2_config='Release+Asserts',
                     useTwoStage=True,
                     clean=False,
                     test=True,
                     extra_configure_args=[ '--with-cpu=cortex-a15',
                                            '--with-fpu=neon',
                                            '--with-float=hard',
                                            '--enable-targets=arm'])},

        {'name' : "clang-native-arm-lnt",
         'slavenames':["linaro-chrome-03"],
         'builddir':"clang-native-arm-lnt",
         'factory' : LNTBuilder.getLNTFactory(triple='armv7l-unknown-linux-gnueabihf',
                                              nt_flags=['--cflag', '-mcpu=cortex-a15', '-j2'],
                                              jobs=2, use_pty_in_tests=True, clean=False,
                                              testerName='LNT-TestOnly-O3', run_cxx_tests=True)},

        {'name': "clang-native-mingw32-win7",
         'slavenames':["as-bldslv7"],
         'builddir':"clang-native-mingw32-win7",
         'factory' : ClangBuilder.getClangBuildFactory(triple='i686-pc-mingw32',
                                                       useTwoStage=True, test=False,
                                                       stage1_config='Release+Asserts',
                                                       stage2_config='Release+Asserts')},

        {'name' : "clang-ppc64-elf-linux",
         'slavenames' :["chinook-clangslave1"],
         'builddir' :"clang-ppc64-1",
         'factory' : LNTBuilder.getLNTFactory(triple='ppc64-elf-linux1',
                                              nt_flags=['--multisample=3','--cflag','-mcpu=native'],
                                              jobs=2,  use_pty_in_tests=True,
                                              testerName='O3-plain', run_cxx_tests=True)},

        {'name' : "clang-ppc64-elf-linux2",
         'slavenames' :["chinook-clangslave2"],
         'builddir' :"clang-ppc64-2",
         'factory' : ClangBuilder.getClangBuildFactory(triple='ppc64-elf-linux',
                                                       useTwoStage=True, test=True,
                                                       checkout_compiler_rt=True,
                                                       stage1_config='Release+Asserts',
                                                       stage2_config='Release+Asserts')},

         {'name': "clang-x86_64-linux-vg",
          'slavenames':["osu8"],
          'builddir':"clang-x86_64-linux-vg",
          'factory': ClangBuilder.getClangBuildFactory(valgrind=True)},

         {'name' : "clang-x86_64-linux-selfhost-rel",
          'slavenames' : ["osu8"],
          'builddir' : "clang-x86_64-linux-selfhost-rel",
          'factory' : ClangBuilder.getClangBuildFactory(triple='x86_64-pc-linux-gnu',
                                               useTwoStage=True,
                                               stage1_config='Release+Asserts',
                                               stage2_config='Release+Asserts')},

         {'name' : "clang-x86_64-linux-fnt",
          'slavenames' : ['osu8'],
          'builddir' : "clang-x86_64-linux-fnt",
          'factory' : NightlytestBuilder.getFastNightlyTestBuildFactory(triple='x86_64-pc-linux-gnu',
                                                               stage1_config='Release+Asserts',
                                                               test=False,
                                                               xfails=clang_x86_64_linux_xfails)},

         {'name': "clang-mergefunc-x86_64-freebsd",
          'slavenames':["as-bldslv5"],
         'builddir':"clang-mergefunc-x86_64-freebsd",
         'factory' : NightlytestBuilder.getFastNightlyTestBuildFactory(triple='x86_64-unknown-freebsd10.0',
                                                               stage1_config='Release+Asserts',
                                                               merge_functions=True,
                                                               make='gmake',
                                                               test=False,
                                                               env={'CC'  : '/usr/local/bin/gcc49',
                                                                    'CXX' : '/usr/local/bin/g++49'},
                                                               xfails=clang_x86_64_freebsd_xfails)},

        # Clang cross builders.
        {'name' : "clang-x86_64-darwin13-cross-mingw32",
         'slavenames' :["as-bldslv9"],
         'builddir' :"clang-x86_64-darwin13-cross-mingw32",
         'factory' : ClangBuilder.getClangBuildFactory(outOfDir=True, use_pty_in_tests=True,
                                                       test=False,
                                                       env = { 'CC' : 'clang',
                                                               'CXX' : 'clang++',
                                                               'CXXFLAGS' : '-stdlib=libc++'},
                                                       extra_configure_args=['--build=x86_64-apple-darwin13',
                                                                             '--host=x86_64-apple-darwin13',
                                                                             '--target=i686-pc-mingw32'])},

        {'name' : "clang-x86_64-darwin13-cross-arm",
         'slavenames' :["as-bldslv9"],
         'builddir' :"clang-x86_64-darwin13-cross-arm",
         'factory' : ClangBuilder.getClangBuildFactory(outOfDir=True, use_pty_in_tests=True,
                                                       env = { 'CC' : 'clang',
                                                               'CXX' : 'clang++',
                                                               'CXXFLAGS' : '-stdlib=libc++'},
                                                       test=False,
                                                       extra_configure_args=['--build=x86_64-apple-darwin13',
                                                                             '--host=x86_64-apple-darwin13',
                                                                             '--target=arm-eabi',
                                                                             '--enable-targets=arm'])},

        {'name' : "clang-x86_64-ubuntu-gdb-75",
         'slavenames' :["hpproliant1"],
         'builddir' :"clang-x86_64-ubuntu-gdb-75",
         'factory' : ClangBuilder.getClangBuildFactory(stage1_config='Release+Asserts', run_modern_gdb=True, clean=False)},

        {'name' : "clang-hexagon-elf",
         'slavenames' :["hexagon-build-03"],
         'builddir' :"clang-hexagon-elf",
         'factory' : ClangBuilder.getClangBuildFactory(
                     triple='x86_64-linux-gnu',
                     stage1_config='Release+Asserts',
                     extra_configure_args=['--enable-shared',
                                           '--target=hexagon-unknown-elf',
                                           '--enable-targets=hexagon'])},

        {'name' : "clang-aarch64-lnt",
         'slavenames' :["aarch64-qemu-lnt"],
         'builddir' :"clang-aarch64-lnt",
         'factory' : LNTBuilder.getLNTFactory(triple='aarch64-linux-gnu',
                                              nt_flags=['--llvm-arch=AArch64', '-j4'],
                                              package_cache="http://webkit.inf.u-szeged.hu/llvm/",
                                              jobs=4, use_pty_in_tests=True, clean=False,
                                              testerName='LNT-TestOnly-AArch64', run_cxx_tests=True)},
        {'name': "perf-x86_64-penryn-O3",
         'slavenames':["pollyperf2", "pollyperf3", "pollyperf4", "pollyperf5", "pollyperf15"],
         'builddir':"perf-x86_64-penryn-O3",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-O3')},
        ]
Esempio n. 5
0
        {'name': "perf-x86_64-penryn-O3-polly-detect",
         'slavenames':["pollyperf14"],
         'builddir':"perf-x86_64-penryn-O3-polly-detect",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--mllvm=-polly-code-generator=none', '--mllvm=-polly-optimizer=none', '--mllvm=-polly-run-dce=false'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://llvm.org/perf/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-detect')}
       ]

# Offline.
{'name': "polly-intel32-linux",
 'slavenames':["botether"],
 'builddir':"polly-intel32-linux",
 'factory': PollyBuilder.getPollyBuildFactory()},

# LLDB builders.
def _get_lldb_builders():

#   gcc_m32_latest_env = gcc_latest_env.copy()
#   gcc_m32_latest_env['CC'] += ' -m32'
#   gcc_m32_latest_env['CXX'] += ' -m32'
#
    return [
        {'name': "lldb-x86_64-debian-clang",
         'slavenames': ["gribozavr1"],
         'builddir': "lldb-x86_64-clang",
         'factory': LLDBBuilder.getLLDBBuildFactory(triple=None, # use default
                                                    extra_configure_args=['--enable-cxx11', '--enable-optimized', '--enable-assertions'],
                                                    env={'PATH':'/home/llvmbb/bin/clang-latest/bin:/home/llvmbb/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games'})},
Esempio n. 6
0
def getAOSPBuildFactory(
    device,  # Target device for AOSP build
    build_clang=False,  # Flag to control building Clang for AOSP target build
    extra_cmake_args=[],  # Extra args for the LLVM cmake command
    # This flag is ignored if build_clang is False
    timeout=None,  # Maximum CPU time in seconds, umlimited if 'None'
    target_clang=None,  # Path to the Clang used for AOSP target build
    # Set target_clang to None to use AOSP's default Clang
    # This flag is ignored if build_clang is True
    target_flags=None,  # Extra C/CXX flags for AOSP target build
    jobs=None,  # Number of concurrent jobs
    extra_make_args=None,  # Extra args for the make command
    env={},  # Environmen variables for all steps
    clean=False,  # Flag to control whether AOSP repo is cleaned
    sync=False,  # Flag to control whether AOSP repo is synced
    patch=None):  # Name of the patch to apply to AOSP source
    f = buildbot.process.factory.BuildFactory()
    clang_dir = target_clang

    # Build Clang for AOSP target build
    if build_clang:
        f = PollyBuilder.getPollyBuildFactory(clean=True,
                                              install=True,
                                              make='ninja',
                                              jobs=jobs,
                                              env=env,
                                              extraCmakeArgs=extra_cmake_args)
        clang_dir = 'llvm.inst/bin'

    # Restore AOSP repo to a clean state
    if clean:
        f.addStep(
            ShellCommand(name="clean-repo",
                         command=[
                             'repo', 'forall', '-c',
                             'git reset --hard; git clean -fdx'
                         ],
                         haltOnFailure=False,
                         description=["clean repo"],
                         workdir=".",
                         env=env))

    # Sync AOSP repo
    if sync:
        f.addStep(
            ShellCommand(name="sync-repo",
                         command=['repo', 'sync', '-c', '--no-tags'],
                         haltOnFailure=False,
                         description=["sync repo"],
                         workdir=".",
                         env=env))

    # Patch AOSP build system to allow switching Clang for target build
    if patch:
        f.addStep(
            ShellCommand(
                name="patch-aosp",
                command=['patch', '-p1', '-i',
                         'patches/%s.patch' % patch],
                haltOnFailure=True,
                description=["patch aosp"],
                workdir=".",
                env=env))

    # Delete existing output dir
    f.addStep(
        ShellCommand(name="delete-out-dir",
                     command=['rm', '-rf', 'out'],
                     haltOnFailure=False,
                     description=["delete out dir"],
                     workdir=".",
                     env=env))

    # Build AOSP
    f.addStep(
        ShellCommand(name="build-aosp",
                     command=getAOSPBuildCommand(
                         device=device,
                         timeout=timeout,
                         target_clang=clang_dir,
                         target_flags=target_flags,
                         jobs=jobs,
                         extra_make_args=extra_make_args),
                     haltOnFailure=True,
                     description=["build aosp"],
                     workdir=".",
                     env=env))
    return f
Esempio n. 7
0
def get_builders():
    return [
        {'name': "polly-amd64-linux",
         'slavenames':["parkas1", "parkas2", "parkas3", "gcc10", "gcc14", "gcc16", "gcc20"],
         'builddir':"polly-amd64-linux",
         'category' : "polly",
         'factory': PollyBuilder.getPollyBuildFactory()},

        {'name': "perf-x86_64-penryn-O3-polly-fast",
         'slavenames':["parkas1", "parkas2", "parkas3"],
         'builddir': "perf-x86_64-penryn-O3-polly-fast",
         'category' : "polly",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=1', '--mllvm=-polly', '-j16' ],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://gcc45.fsffrance.org:8383/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-fast')},

        {'name': "perf-x86_64-penryn-O3-polly-parallel-fast",
         'slavenames':["parkas1", "parkas2", "parkas3"],
         'builddir': "perf-x86_64-penryn-O3-polly-parallel-fast",
         'category' : "polly",
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=1', '--mllvm=-polly', '--mllvm=-polly-parallel', '-j16', '--cflag=-lgomp' ],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://gcc45.fsffrance.org:8383/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-parallel-fast')},

        {'name': "perf-x86_64-penryn-O3-polly-detect-only",
         'slavenames':["parkas1", "parkas2", "parkas3"],
         'builddir':"perf-x86_64-penryn-O3-polly-detect-only",
         'category' : "polly",
         'properties' : {'lnt_jobs': 1},
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--mllvm=-polly-code-generator=none', '--mllvm=-polly-optimizer=none', '--mllvm=-polly-run-dce=false', '--rerun'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://gcc45.fsffrance.org:8383/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-detect-only')},

        {'name': "perf-x86_64-penryn-O3-polly-detect-and-dependences-only",
         'slavenames':["parkas1", "parkas2", "parkas3"],
         'builddir':"perf-x86_64-penryn-O3-polly-detect-and-dependences-only",
         'category' : "polly",
         'properties' : {'lnt_jobs': 1},
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10',
                                                              '--mllvm=-polly',
                                                              '--mllvm=-polly-optimizer=none',
                                                              '--mllvm=-polly-code-generator=none',
                                                              '--rerun'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://gcc45.fsffrance.org:8383/submitRun',
                                                    testerName='x86_64-penryn-O3-polly-detect-and-dependences-only')},

        {'name': "perf-x86_64-penryn-O3-polly",
         'slavenames':["parkas1", "parkas2", "parkas3"],
         'builddir':"perf-x86_64-penryn-O3-polly",
         'category' : "polly",
         'properties' : {'lnt_jobs': 1},
         'factory': PollyBuilder.getPollyLNTFactory(triple="x86_64-pc-linux-gnu",
                                                    nt_flags=['--multisample=10', '--mllvm=-polly', '--rerun'],
                                                    reportBuildslave=False,
                                                    package_cache="http://parkas1.inria.fr/packages",
                                                    submitURL='http://gcc45.fsffrance.org:8383/submitRun',
                                                    testerName='x86_64-penryn-O3-polly')}
    ]