Esempio n. 1
0
    'tflm', 'libpoly', 'poly', 'pbm', 'bpolyglot', 'bpolybench', 'vvm'
]
ce_no_native_components = [
    'bgu', 'bjs', 'blli', 'bgraalvm-native-clang', 'bgraalvm-native-clang++',
    'bgraalvm-native-ld', 'bgraalvm-native-binutil', 'bnative-image',
    'bpolyglot', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'ins', 'insight', 'js',
    'lsp', 'nfi', 'ni', 'nil', 'njs', 'polynative', 'pro', 'rgx', 'sdk',
    'llrc', 'llrn', 'llrl', 'snative-image-agent',
    'snative-image-diagnostics-agent', 'spolyglot', 'svm', 'svml', 'tfl',
    'tflm', 'libpoly', 'poly', 'vvm'
]

mx_sdk_vm.register_vm_config('ce', [
    'insight', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'ins', 'js', 'lg', 'libpoly',
    'lsp', 'nfi', 'njs', 'poly', 'bpolyglot', 'polynative', 'pro', 'rgx',
    'sdk', 'svm', 'tfl', 'tflm', 'vvm'
],
                             _suite,
                             env_file='ce-win')
mx_sdk_vm.register_vm_config('ce', ce_components, _suite)
mx_sdk_vm.register_vm_config('ce',
                             ce_complete_components,
                             _suite,
                             dist_name='ce-complete')
mx_sdk_vm.register_vm_config('ce-python', ce_python_components, _suite)
mx_sdk_vm.register_vm_config('ce-no_native', ce_no_native_components, _suite)
mx_sdk_vm.register_vm_config('libgraal', [
    'bgu', 'cmp', 'dis', 'gu', 'gvm', 'lg', 'nfi', 'poly', 'polynative', 'sdk',
    'svm', 'svml', 'tfl', 'tflm', 'bpolyglot'
], _suite)
mx_sdk_vm.register_vm_config(
Esempio n. 2
0
        ],
        polyglot_lib_build_args=[
            "-H:+ReportExceptionStackTraces",
            "-H:JNIConfigurationResources=svmnodejs.jniconfig,svmnodejs_jdkspecific.jniconfig",
            "-H:ReflectionConfigurationResources=svmnodejs.reflectconfig",
        ],
        polyglot_lib_jar_dependencies=["graal-nodejs:TRUFFLENODE"],
        has_polyglot_lib_entrypoints=True,
        installable=False,
    ))

# pylint: disable=line-too-long
# GraalVM configs to build without the Graal compiler
mx_sdk_vm.register_vm_config('node1', [
    'js', 'libpoly', 'llp', 'nfi', 'njs', 'poly', 'rgx', 'sdk', 'stage1', 'tfl'
],
                             _suite,
                             env_file=False)
mx_sdk_vm.register_vm_config('node', [
    'bjs', 'bpolyglot', 'js', 'libpoly', 'llp', 'nfi', 'njs', 'poly', 'rgx',
    'sdk', 'spolyglot', 'tfl'
],
                             _suite,
                             env_file=False)
# GraalVM configs to build with the Graal compiler
mx_sdk_vm.register_vm_config('node1-ce', [
    'cmp', 'js', 'libpoly', 'llp', 'nfi', 'njs', 'poly', 'rgx', 'sdk',
    'stage1', 'tfl'
],
                             _suite,
                             env_file=False)
Esempio n. 3
0
        ],
    ))

# Register new commands which can be used from the commandline with mx
mx.update_commands(
    _suite, {
        'espresso': [_run_espresso_launcher, '[args]'],
        'espresso-standalone': [_run_espresso_standalone, '[args]'],
        'espresso-java': [_run_espresso_java, '[args]'],
        'espresso-meta': [_run_espresso_meta, '[args]'],
    })

# Build configs
# pylint: disable=bad-whitespace
mx_sdk_vm.register_vm_config('espresso-jvm',
                             ['java', 'ejvm', 'elau', 'nfi', 'sdk', 'tfl'],
                             _suite,
                             env_file='jvm')
mx_sdk_vm.register_vm_config(
    'espresso-jvm-ce', ['java', 'ejvm', 'elau', 'nfi', 'sdk', 'tfl', 'cmp'],
    _suite,
    env_file='jvm-ce')
mx_sdk_vm.register_vm_config(
    'espresso-jvm-ee',
    ['java', 'ejvm', 'elau', 'nfi', 'sdk', 'tfl', 'cmp', 'cmpee'],
    _suite,
    env_file='jvm-ee')
mx_sdk_vm.register_vm_config(
    'espresso-native-ce',
    ['java', 'ejvm', 'elau', 'nfi', 'sdk', 'tfl', 'cmp', 'svm', 'tflm'],
    _suite,
    env_file='native-ce')
Esempio n. 4
0
    'rgx', 'sdk', 'slg', 'svm', 'svml', 'tfl', 'tflm', 'libpoly', 'poly',
    'bpolyglot', 'vvm'
]
ce_no_native_components = [
    'bgu', 'bjs', 'blli', 'bgraalvm-native-clang', 'bgraalvm-native-clang++',
    'bgraalvm-native-ld', 'bgraalvm-native-binutil', 'bnative-image',
    'bpolyglot', 'cmp', 'cov', 'gu', 'gvm', 'ins', 'ats', 'js', 'lsp', 'nfi',
    'ni', 'nil', 'njs', 'polynative', 'pro', 'rgx', 'sdk', 'slg',
    'snative-image-agent', 'spolyglot', 'svm', 'svml', 'tfl', 'tflm',
    'libpoly', 'poly', 'vvm'
]

mx_sdk_vm.register_vm_config('ce', [
    'ats', 'cmp', 'cov', 'gu', 'gvm', 'ins', 'js', 'lg', 'libpoly', 'lsp',
    'nfi', 'njs', 'poly', 'bpolyglot', 'polynative', 'pro', 'rgx', 'sdk',
    'svm', 'tfl', 'tflm', 'vvm'
],
                             _suite,
                             env_file='ce-win')
mx_sdk_vm.register_vm_config('ce', ce_components, _suite)
mx_sdk_vm.register_vm_config('ce',
                             ce_complete_components,
                             _suite,
                             dist_name='ce-complete')
mx_sdk_vm.register_vm_config('ce-python', ce_python_components, _suite)
mx_sdk_vm.register_vm_config('ce-no_native', ce_no_native_components, _suite)
mx_sdk_vm.register_vm_config('libgraal', [
    'bgu', 'cmp', 'gu', 'gvm', 'lg', 'nfi', 'poly', 'polynative', 'sdk', 'svm',
    'svml', 'tfl', 'tflm', 'bpolyglot'
], _suite)
mx_sdk_vm.register_vm_config(
Esempio n. 5
0
polybench_benchmark_methods = ["_run"]


# pylint: disable=line-too-long
ce_components = ['bpolyglot', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lg', 'libpoly', 'lsp', 'nfi-libffi', 'nfi', 'poly', 'polynative', 'pro', 'rgx', 'sdk', 'spolyglot', 'tfl', 'tflm']
ce_win_complete_components = ['bnative-image-configure', 'bpolyglot', 'cmp', 'cov', 'dap', 'ejvm', 'gu', 'gvm', 'gwa', 'icu4j', 'ins', 'insight', 'insightheap', 'java', 'js', 'lg', 'libpoly', 'lsp', 'nfi-libffi', 'nfi', 'ni', 'nic', 'nil', 'njs', 'poly', 'polynative', 'pro', 'rgx', 'sdk', 'spolyglot', 'svm', 'svmnfi', 'svmsl', 'tfl', 'tflm', 'vvm']
ce_aarch64_complete_components = ce_win_complete_components + ['llp', 'llrc', 'llrl', 'llrn', 'rby', 'rbyl', 'svml']
ce_complete_components = ce_aarch64_complete_components + ['ellvm', 'pyn', 'R', 'bRMain', 'pynl']
ce_darwin_aarch64_complete_components = ['bgraalpython', 'bnative-image-configure', 'bpolyglot', 'cmp', 'cov', 'dap', 'ejvm', 'gu', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'java', 'js', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrn', 'lsp', 'nfi', 'nfi-libffi', 'ni', 'nic', 'nil', 'poly', 'polynative', 'pro', 'pyn', 'pynl', 'rby', 'rbyl', 'rgx', 'sdk', 'spolyglot', 'svm', 'svmnfi', 'svmsl', 'tfl', 'tflm', 'vvm']
ce_ruby_components = ['cmp', 'cov', 'dap', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lg', 'llp', 'llrc', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'pro', 'rby', 'rbyl', 'rgx', 'sdk', 'tfl', 'tflm']
ce_python_components = ['bgraalvm-native-binutil', 'bgraalvm-native-clang', 'bgraalvm-native-clang++', 'bgraalvm-native-ld', 'bgu', 'blli', 'bpolybench', 'bpolyglot', 'cmp', 'cov', 'dap', 'dis', 'gu', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'pbm', 'pmh', 'poly', 'polynative', 'pro', 'pyn', 'pynl', 'rgx', 'sdk', 'spolyglot', 'tfl', 'tflm']
ce_fastr_components = ['R', 'bRMain', 'bgraalvm-native-binutil', 'bgraalvm-native-clang', 'bgraalvm-native-clang++', 'bgraalvm-native-ld', 'bgu', 'blli', 'bpolyglot', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lg', 'libpoly', 'llp', 'llrc', 'llrl', 'llrn', 'lsp', 'nfi-libffi', 'nfi', 'poly', 'polynative', 'pro', 'rgx', 'sdk', 'spolyglot', 'tfl', 'tflm']
ce_no_native_components = ['bgu', 'bpolyglot', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'icu4j', 'ins', 'insight', 'insightheap', 'lsp', 'nfi-libffi', 'nfi', 'polynative', 'pro', 'rgx', 'sdk', 'spolyglot', 'tfl', 'tflm', 'libpoly', 'poly']

mx_sdk_vm.register_vm_config('ce', ['insight', 'insightheap', 'cmp', 'cov', 'dap', 'gu', 'gvm', 'icu4j', 'ins', 'lg', 'libpoly', 'lsp', 'nfi-libffi', 'nfi', 'poly', 'bpolyglot', 'polynative', 'pro', 'rgx', 'sdk', 'spolyglot', 'tfl', 'tflm'], _suite, env_file='ce-win')
mx_sdk_vm.register_vm_config('ce', ce_components, _suite, env_file='ce-aarch64')
mx_sdk_vm.register_vm_config('ce', ce_components, _suite, env_file='ce-darwin')
# GR-34811: `ce-darwin-aarch64` can be removed once svml builds
mx_sdk_vm.register_vm_config('ce', [x for x in ce_components if x != 'svml'], _suite, env_file='ce-darwin-aarch64')
mx_sdk_vm.register_vm_config('ce', ce_components, _suite)
mx_sdk_vm.register_vm_config('ce', ce_components + ['js', 'njs'], _suite, dist_name='ce', env_file='ce-nodejs')
mx_sdk_vm.register_vm_config('ce', ce_ruby_components, _suite, dist_name='ce-ruby', env_file='ce-ruby')
mx_sdk_vm.register_vm_config('ce', ce_win_complete_components, _suite, dist_name='ce-win-complete')
mx_sdk_vm.register_vm_config('ce', ce_aarch64_complete_components, _suite, dist_name='ce-aarch64-complete')
mx_sdk_vm.register_vm_config('ce', ce_darwin_aarch64_complete_components, _suite, dist_name='ce-darwin-aarch64-complete')
mx_sdk_vm.register_vm_config('ce', ce_complete_components, _suite, dist_name='ce-complete')
mx_sdk_vm.register_vm_config('ce', ce_complete_components, _suite, dist_name='ce-complete', env_file='ce-darwin-complete')
mx_sdk_vm.register_vm_config('ce-python', ce_python_components, _suite)
mx_sdk_vm.register_vm_config('ce-fastr', ce_fastr_components, _suite)
mx_sdk_vm.register_vm_config('ce-no_native', ce_no_native_components, _suite)
Esempio n. 6
0
        ('trace-cache-executed', [], 130),
    ]:
        if mx.suite('js-benchmarks', fatalIfMissing=False):
            import mx_js_benchmarks
            mx_js_benchmarks.add_vm(GraalJsVm(config_name, options), _suite,
                                    priority)
        mx_benchmark.js_vm_registry.add_vm(GraalJsVm(config_name, options),
                                           _suite, priority)


class JMHDistGraalJsBenchmarkSuite(JMHDistBenchmarkSuite):
    def name(self):
        return "js-interop-jmh"

    def group(self):
        return "Graal"

    def subgroup(self):
        return "graal-js"


add_bm_suite(JMHDistGraalJsBenchmarkSuite())

mx_sdk_vm.register_vm_config('ce', [
    'cmp', 'icu4j', 'js', 'nfi', 'rgx', 'sdk', 'svm', 'svmnfi', 'tfl', 'tflm'
], _suite)
mx_sdk_vm.register_vm_config('ee', [
    'cmp', 'cmpee', 'icu4j', 'js', 'nfi', 'rgx', 'sdk', 'svm', 'svmee',
    'svmeegc', 'svmnfi', 'tfl', 'tflm'
], _suite)
Esempio n. 7
0
    dependencies=['Java on Truffle'],
    truffle_jars=[],
    launcher_configs=[
        mx_sdk_vm.LanguageLauncherConfig(
            destination='bin/<exe:espresso>',
            jar_distributions=['espresso:ESPRESSO_LAUNCHER'],
            main_class='com.oracle.truffle.espresso.launcher.EspressoLauncher',
            build_args=[],
            language='java',
        )
    ],
))


# Register new commands which can be used from the commandline with mx
mx.update_commands(_suite, {
    'espresso': [_run_espresso_launcher, '[args]'],
    'espresso-standalone': [_run_espresso_standalone, '[args]'],
    'java-truffle': [_run_java_truffle, '[args]'],
    'espresso-meta': [_run_espresso_meta, '[args]'],
})

# Build configs
# pylint: disable=bad-whitespace
tools = ['cov', 'dap', 'ins', 'insight', 'insightheap', 'lsp', 'pro', 'vvm']
mx_sdk_vm.register_vm_config('espresso-jvm',       ['java', 'ejvm', 'libpoly', 'nfi', 'sdk', 'tfl', 'cmp'                                           , 'elau'                                             ] + tools, _suite, env_file='jvm')
mx_sdk_vm.register_vm_config('espresso-jvm-ce',    ['java', 'ejvm', 'libpoly', 'nfi', 'sdk', 'tfl', 'cmp'         , 'svm', 'svmnfi'         , 'tflm', 'elau', 'lg', 'bespresso', 'sespresso', 'spolyglot'] + tools, _suite, env_file='jvm-ce')
mx_sdk_vm.register_vm_config('espresso-jvm-ee',    ['java', 'ejvm', 'libpoly', 'nfi', 'sdk', 'tfl', 'cmp', 'cmpee', 'svm', 'svmnfi', 'svmee', 'tflm', 'elau', 'lg', 'bespresso', 'sespresso', 'spolyglot'] + tools, _suite, env_file='jvm-ee')
mx_sdk_vm.register_vm_config('espresso-native-ce', ['java', 'ejvm', 'libpoly', 'nfi', 'sdk', 'tfl', 'cmp'         , 'svm', 'svmnfi'         , 'tflm'                                        , 'spolyglot'] + tools, _suite, env_file='native-ce')
mx_sdk_vm.register_vm_config('espresso-native-ee', ['java', 'ejvm', 'libpoly', 'nfi', 'sdk', 'tfl', 'cmp', 'cmpee', 'svm', 'svmnfi', 'svmee', 'tflm'                                        , 'spolyglot'] + tools, _suite, env_file='native-ee')
Esempio n. 8
0
def register_espresso_envs(suite):
    # pylint: disable=bad-whitespace
    # pylint: disable=line-too-long
    tools = ['cov', 'dap', 'ins', 'insight', 'insightheap', 'lsp', 'pro']
    if LLVM_JAVA_HOME:
        mx_sdk_vm.register_vm_config(
            'espresso-jvm',
            [
                'java', 'ejvm', 'ellvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk',
                'tfl', 'cmp', 'llrc', 'llrn', 'elau'
            ] + tools,
            suite,
            env_file='jvm-llvm')
        mx_sdk_vm.register_vm_config(
            'espresso-jvm-ce',
            [
                'java', 'ejvm', 'ellvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk',
                'tfl', 'cmp', 'llrc', 'llrn', 'svm', 'svmnfi', 'svmsl', 'tflm',
                'elau', 'lg', 'bespresso', 'sjavavm', 'spolyglot',
                'bgraalvm-native-clang', 'bgraalvm-native-ld',
                'bgraalvm-native-binutil', 'bgraalvm-native-clang++'
            ] + tools,
            suite,
            env_file='jvm-ce-llvm')
        mx_sdk_vm.register_vm_config(
            'espresso-jvm-ee',
            [
                'java', 'ejvm', 'ellvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk',
                'tfl', 'cmp', 'llrc', 'llrn', 'cmpee', 'svm', 'svmnfi',
                'svmee', 'svmsl', 'tflllm', 'tflm', 'elau', 'lg', 'bespresso',
                'sjavavm', 'spolyglot', 'bgraalvm-native-clang',
                'bgraalvm-native-ld', 'bgraalvm-native-binutil',
                'bgraalvm-native-clang++'
            ] + tools,
            suite,
            env_file='jvm-ee-llvm')
        mx_sdk_vm.register_vm_config(
            'espresso-native-ce',
            [
                'java', 'ejvm', 'ellvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk',
                'tfl', 'cmp', 'llrc', 'llrn', 'svm', 'svmnfi', 'svmsl', 'tflm',
                'spolyglot', 'bgraalvm-native-clang', 'bgraalvm-native-ld',
                'bgraalvm-native-binutil', 'bgraalvm-native-clang++'
            ] + tools,
            suite,
            env_file='native-ce-llvm')
        mx_sdk_vm.register_vm_config(
            'espresso-native-ee',
            [
                'java', 'ejvm', 'ellvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk',
                'tfl', 'cmp', 'llrc', 'llrn', 'cmpee', 'svm', 'svmnfi',
                'svmsl', 'svmee', 'tflllm', 'tflm', 'spolyglot',
                'bgraalvm-native-clang', 'bgraalvm-native-ld',
                'bgraalvm-native-binutil', 'bgraalvm-native-clang++'
            ] + tools,
            suite,
            env_file='native-ee-llvm')
    else:
        mx_sdk_vm.register_vm_config(
            'espresso-jvm',
            [
                'java', 'ejvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk', 'tfl',
                'cmp', 'elau'
            ] + tools,
            suite,
            env_file='jvm')
        mx_sdk_vm.register_vm_config(
            'espresso-jvm-ce',
            [
                'java', 'ejvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk', 'tfl',
                'cmp', 'svm', 'svmnfi', 'svmsl', 'tflm', 'elau', 'lg',
                'bespresso', 'sjavavm', 'spolyglot'
            ] + tools,
            suite,
            env_file='jvm-ce')
        mx_sdk_vm.register_vm_config(
            'espresso-jvm-ee',
            [
                'java', 'ejvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk', 'tfl',
                'cmp', 'cmpee', 'svm', 'svmnfi', 'svmsl', 'svmee', 'tflllm',
                'tflm', 'elau', 'lg', 'bespresso', 'sjavavm', 'spolyglot'
            ] + tools,
            suite,
            env_file='jvm-ee')
        mx_sdk_vm.register_vm_config(
            'espresso-native-ce',
            [
                'java', 'ejvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk', 'tfl',
                'cmp', 'svm', 'svmnfi', 'svmsl', 'tflm', 'spolyglot'
            ] + tools,
            suite,
            env_file='native-ce')
        mx_sdk_vm.register_vm_config(
            'espresso-native-ee',
            [
                'java', 'ejvm', 'libpoly', 'nfi-libffi', 'nfi', 'sdk', 'tfl',
                'cmp', 'cmpee', 'svm', 'svmnfi', 'svmsl', 'svmee', 'tflllm',
                'tflm', 'spolyglot'
            ] + tools,
            suite,
            env_file='native-ee')
Esempio n. 9
0
                                           True)  # Flip default to `True`
        self._remote_compress = kw_args.pop('remoteCompress', True)
        if self._local_compress and not self._remote_compress:
            mx.abort(
                "Incompatible local/remote compression settings: local compression requires remote compression"
            )
        super(mx.LayoutZIPDistribution,
              self).__init__(*args, compress=self._local_compress, **kw_args)

    mx.LayoutZIPDistribution.__init__ = patched_init


_enable_local_compression()

mx_sdk_vm.register_vm_config('trufflesqueak',
                             ['nfi', 'nfi-libffi', 'sdk', 'st', 'tfl'],
                             _SUITE,
                             env_file='trufflesqueak-jvm')
mx_sdk_vm.register_vm_config(
    'trufflesqueak-svm',
    ['cmp', 'nfi', 'nfi-libffi', 'sdk', 'st', 'svm', 'svmnfi', 'tfl', 'tflm'],
    _SUITE,
    env_file='trufflesqueak-svm')

mx_sdk.register_graalvm_component(
    mx_sdk.GraalVmLanguage(
        suite=_SUITE,
        name='TruffleSqueak',
        short_name='st',
        dir_name=LANGUAGE_ID,
        license_files=[],  # already included in `TRUFFLESQUEAK_HOME`.
        third_party_license_files=[],