Skip to content

Commit 8601a25

Browse files
committed
[RISCV] Move rva23 evl builder over to cross-compile and execute under qemu-system setup
This also moves to `prefer-predicate-over-epilogue=predicate-else-scalar-epilogue`. As the buildbot is on staging only and already has some failures, I think it's ok to make both changes at once rather than carefully staging it.
1 parent f80b995 commit 8601a25

File tree

1 file changed

+24
-3
lines changed

1 file changed

+24
-3
lines changed

buildbot/osuosl/master/config/builders.py

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3337,6 +3337,7 @@
33373337
)},
33383338

33393339
## RISC-V RVA23 profile with EVL vectorizer check-all 2-stage
3340+
## (cross-compile and then test under qemu-system).
33403341
{'name' : "clang-riscv-rva23-evl-vec-2stage",
33413342
'workernames' : ["rise-clang-riscv-rva23-evl-vec-2stage"],
33423343
'builddir':"clang-riscv-rva23-evl-vec-2stage",
@@ -3345,6 +3346,8 @@
33453346
useTwoStage=True,
33463347
runTestSuite=False,
33473348
testStage1=False,
3349+
checkout_compiler_rt=False,
3350+
checkout_zorg=True,
33483351
extra_cmake_args=[
33493352
"-DCMAKE_C_COMPILER=clang",
33503353
"-DCMAKE_CXX_COMPILER=clang++",
@@ -3353,9 +3356,27 @@
33533356
"-DCMAKE_C_COMPILER_LAUNCHER=ccache",
33543357
"-DCMAKE_CXX_COMPILER_LAUNCHER=ccache"],
33553358
extra_stage2_cmake_args=[
3356-
"-DLLVM_ENABLE_LLD=True",
3357-
"-DCMAKE_C_FLAGS='-menable-experimental-extensions -march=rva23u64 -mllvm -force-tail-folding-style=data-with-evl -mllvm -prefer-predicate-over-epilogue=predicate-dont-vectorize'",
3358-
"-DCMAKE_CXX_FLAGS='-menable-experimental-extensions -march=rva23u64 -mllvm -force-tail-folding-style=data-with-evl -mllvm -prefer-predicate-over-epilogue=predicate-dont-vectorize'"]
3359+
util.Interpolate("-DLLVM_NATIVE_TOOL_DIR=%(prop:builddir)s/stage1.install/bin"),
3360+
"-DLLVM_BUILD_TESTS=True",
3361+
"-DPython3_EXECUTABLE=/usr/bin/python3",
3362+
util.Interpolate("-DLLVM_EXTERNAL_LIT=%(prop:builddir)s/llvm-zorg/buildbot/riscv-rise/lit-on-qemu")],
3363+
stage2_toolchain_options=[
3364+
"set(CMAKE_SYSTEM_NAME Linux)",
3365+
"set(CMAKE_SYSROOT %(prop:builddir)s/../rvsysroot)",
3366+
"set(CMAKE_C_COMPILER_TARGET riscv64-linux-gnu)",
3367+
"set(CMAKE_CXX_COMPILER_TARGET riscv64-linux-gnu)",
3368+
"set(CMAKE_C_FLAGS_INIT '-march=rva23u64 -mllvm -force-tail-folding-style=data-with-evl -mllvm -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue'",
3369+
"set(CMAKE_CXX_FLAGS_INIT '-march=rva23u64 -mllvm -force-tail-folding-style=data-with-evl -mllvm -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue'",
3370+
"set(CMAKE_LINKER_TYPE LLD)",
3371+
"set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)",
3372+
"set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)",
3373+
"set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)",
3374+
"set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)"],
3375+
env={
3376+
"BB_IMG_DIR": util.Interpolate("%(prop:builddir)s/.."),
3377+
"BB_QEMU_CPU": "zba=true,zbb=true,zbc=false,zbs=true,zfhmin=true,v=true,vext_spec=v1.0,zkt=true,zvfhmin=true,zvbb=true,zvkt=true,zihintntl=true,zicond=true,zcb=true,zfa=true,zawrs=true,rvv_ta_all_1s=true,rvv_ma_all_1s=true,rvv_vl_half_avl=true",
3378+
"BB_QEMU_SMP": "32",
3379+
"BB_QEMU_MEM": "64G"}
33593380
)},
33603381

33613382
# Builders similar to used in Buildkite premerge pipeline.

0 commit comments

Comments
 (0)