-
Notifications
You must be signed in to change notification settings - Fork 62
51 lines (49 loc) · 2.35 KB
/
build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
name: build
on: [push]
jobs:
build:
runs-on: ubuntu-latest
env:
CMAKE_BUILD_AND_TEST: "mkdir -p build && cd build; cmake ..; make; ctest -V"
steps:
- uses: actions/checkout@master
- name: Assignment 0 Introduction to Docker
run: docker-compose build dev
- name: Assignment 1 Introduction to LLVM
run: |
docker-compose run --rm \
-w /mnt/Assignment1-Introduction_to_LLVM/FunctionInfo \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"
docker-compose run --rm \
-w /mnt/Assignment1-Introduction_to_LLVM/LocalOpts \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"
- name: Assignment 2 Dataflow Analysis
run: |
docker-compose run --rm \
-w /mnt/Assignment2-Dataflow_Analysis \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"
- name: C to LLVM IR
run: docker-compose run --rm -w /mnt/Tools/C_to_LLVM_IR dev bash -ce "./C_to_LLVM_IR.sh -p=mem2reg"
- name: Tutorial 1 Introduction to LLVM
run: |
docker-compose run --rm \
-w /mnt/Tutorial01-Introduction_to_LLVM/Example1-Cpp_Fundamentals \
dev bash -ce "make && ./1-VarReference && ./2-PublicInheritance && ./3-STL"
- name: Tutorial 2 Introduction to LLVM ii
run: |
docker-compose run --rm \
-w /mnt/Tutorial02-Introduction_to_LLVM_ii/Example1-Transform_Pass_Example \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"
docker-compose run --rm \
-w /mnt/Tutorial02-Introduction_to_LLVM_ii/Example2-Pass_Manager \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"
- name: Tutorial 6 Scalar Evolution
run: |
docker-compose run --rm \
-w /mnt/Tutorial06-Scalar_Evolution \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"
- name: Tutorial 7 Register Allocation
run: |
docker-compose run --rm \
-w /mnt/Tutorial07-Register_Allocation \
dev bash -ce "${CMAKE_BUILD_AND_TEST}"