Skip to content

Commit

Permalink
ci: switch to LLVM 19
Browse files Browse the repository at this point in the history
  • Loading branch information
whentojump committed Jul 2, 2024
1 parent ff4c732 commit 3f2759e
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 11 deletions.
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: Test workflow with LLVM 18
name: Test workflow with LLVM 19

on:
push:
branches:
- public-approved
- llvm19
workflow_dispatch:

env:
Expand Down
15 changes: 10 additions & 5 deletions ci/2_pull_source.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,19 @@
cd $MCDC_HOME

# This meta repository
git clone https://github.com/xlab-uiuc/linux-mcdc.git
git clone https://github.com/xlab-uiuc/linux-mcdc.git --branch llvm19
# LLVM if we want to build it from source (optional)
git clone https://github.com/llvm/llvm-project.git --branch llvmorg-18.1.8 --depth 5
git clone https://github.com/llvm/llvm-project.git --branch main
# Linux kernel
git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git --branch v5.15.153 --depth 5

# Use the snapshot of LLVM on June 11 2024
cd $MCDC_HOME/llvm-project
git checkout f5dcfb9968a3

# Apply kernel patches
cd $MCDC_HOME/linux
git apply $MCDC_HOME/linux-mcdc/patches/v0.4/0001-clang_instr_profile-add-Clang-s-Source-based-Code-Co.patch
git apply $MCDC_HOME/linux-mcdc/patches/v0.4/0002-kbuild-clang_instr_profile-disable-instrumentation-i.patch
git apply $MCDC_HOME/linux-mcdc/patches/v0.4/0003-clang_instr_profile-add-Clang-s-MC-DC-support.patch
git apply $MCDC_HOME/linux-mcdc/patches/v0.5/0001-clang_instr_profile-add-Clang-s-Source-based-Code-Co.patch
git apply $MCDC_HOME/linux-mcdc/patches/v0.5/0002-kbuild-clang_instr_profile-disable-instrumentation-i.patch
git apply $MCDC_HOME/linux-mcdc/patches/v0.5/0003-clang_instr_profile-add-Clang-s-MC-DC-support.patch
git apply $MCDC_HOME/linux-mcdc/patches/v0.5/0004-kbuild-clang_instr_profile-disable-instrumentation-i.patch
3 changes: 0 additions & 3 deletions ci/4_build_kernel.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,6 @@ make LLVM=1 olddefconfig
./scripts/config -e CONFIG_MCDC_CLANG
make LLVM=1 olddefconfig

./scripts/config -d CONFIG_DRM_I915
make LLVM=1 olddefconfig

cat << EOF
Building the kernel with output suppressed. The log tail will be displayed once
the process finishes. See the full log in the next step.
Expand Down
2 changes: 1 addition & 1 deletion ci/5_boot_kernel_and_collect_coverage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ cd $MCDC_HOME/linux
$MCDC_HOME/linux-mcdc/scripts/q -c "$GUEST_COMMANDS"

file profraw |& tee /tmp/file.log
if ! grep "LLVM raw profile data, version 9" /tmp/file.log > /dev/null; then
if ! grep "LLVM raw profile data, version 10" /tmp/file.log > /dev/null; then
printf "\nUnexpected profraw\n"
exit 1
fi
Expand Down

0 comments on commit 3f2759e

Please sign in to comment.