Skip to content

Install build rules #942

Install build rules

Install build rules #942

Workflow file for this run

name: Tests
on:
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Cache build
id: cache-build
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/*
key: ${{ runner.os }}-${{ github.sha }}-jlm
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: Configure jlm
run: ./configure.sh --enable-asserts CXX=clang++-16
- name: Compile jlm
run: make -O -j `nproc`
- name: Run unit and C tests
run: make check -O -j `nproc`
gcc:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: Configure jlm
run: ./configure.sh --enable-asserts CXX=g++
- name: Compile jlm
run: make -O -j `nproc`
- name: Run unit and C tests
run: make check -j `nproc`
mlir:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: "Build MLIR RVSDG Dialect"
uses: ./.github/actions/BuildMlirDialect
- name: "Configure jlm"
run: ./configure.sh --enable-mlir ./lib/mlir-rvsdg CXX=clang++-16
- name: "Compile jlm"
run: make -O -j `nproc`
- name: "Run unit and C tests"
run: make check -O -j `nproc`
valgrind:
runs-on: ubuntu-22.04
needs: build
steps:
- name: Cache
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/*
key: ${{ runner.os }}-${{ github.sha }}-jlm
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: Install valgrind
run: sudo apt-get install valgrind
- name: Valgrind Check
run: make -C ${{ github.workspace }} valgrind-check
polybench:
runs-on: ubuntu-22.04
needs: build
steps:
- name: Cache
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/*
key: ${{ runner.os }}-${{ github.sha }}-jlm
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: Add jlc to PATH
run: echo '${{ github.workspace }}/build' >> $GITHUB_PATH
- name: Clone polybench
run: git clone https://github.com/phate/polybench-jlm.git
- name: Check polybench
run: make -C polybench-jlm check -j `nproc`
llvm-test-suite:
runs-on: ubuntu-22.04
needs: build
steps:
- name: Cache
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/*
key: ${{ runner.os }}-${{ github.sha }}-jlm
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: Add jlc to PATH
run: echo '${{ github.workspace }}/build' >> $GITHUB_PATH
- name: Clone jlm-test-suite
run: git clone https://github.com/phate/jlm-eval-suite.git
- name: Update submodules
run: make -C jlm-eval-suite submodule
- name: Apply patch
run: cd jlm-eval-suite && make apply-llvm-git-patch
- name: Run llvm-test-suite
run: cd jlm-eval-suite/llvm-test-suite && make llvm-run-opt