Skip to content

Updated MLIR backend to the new build framework #311

Updated MLIR backend to the new build framework

Updated MLIR backend to the new build framework #311

Workflow file for this run

name: Tests
on:
pull_request:
branches: [ master ]
jobs:

Check failure on line 7 in .github/workflows/tests.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/tests.yml

Invalid workflow file

You have an error in your yaml syntax on line 7
docs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: sudo apt-get install graphviz doxygen
- name: Configure jlm
run: ./configure.sh
- name: Generate documentation
run: make docs
ClangFormat:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: "Install clang format"
uses: ./.github/actions/InstallLlvmDependencies
- name: Find source files
run: find . -name "*.cpp" -or -name "*.hpp" > sourceFiles.txt
- name: Check format
run: clang-format-16 --Werror --dry-run --style="file:.clang-format" --verbose --files=sourceFiles.txt
build-mlir-dialect:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: "Build MLIR RVSDG Dialect"
uses: ./.github/actions/BuildMlirDialect
build:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Cache build
id: cache-build
uses: actions/cache@v3
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 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@v3
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: Configure jlm
run: ./configure.sh 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
needs: build-mlir-dialect
steps:
- uses: actions/checkout@v3
- name: "Install LLVM and Clang"
uses: ./.github/actions/InstallLlvmDependencies
- name: "Build MLIR RVSDG Dialect"
uses: ./.github/actions/BuildMlirDialect
- name: Configure jlm
run: ./configure.sh --mlir-path ./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@v3
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@v3
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@v3
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: Install lit
run: sudo python3 /usr/lib/llvm-16/build/utils/lit/setup.py install
- 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