Skip to content

Commit 4767300

Browse files
authored
Merge pull request #37699 from vchuravy/vc/rv
Initial build-system support for RegionVectorizer
2 parents 79d6af0 + 337bb79 commit 4767300

File tree

2 files changed

+34
-5
lines changed

2 files changed

+34
-5
lines changed

Make.inc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -340,6 +340,9 @@ USE_POLLY_ACC := 0 # Enable GPU code-generation
340340
# Options to use MLIR
341341
USE_MLIR := 0
342342

343+
# Options to use RegionVectorizer
344+
USE_RV := 0
345+
343346
# Cross-compile
344347
#XC_HOST := i686-w64-mingw32
345348
#XC_HOST := x86_64-w64-mingw32

deps/llvm.mk

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,25 +9,37 @@ BUILD_LLVM_CLANG := 1
99
# because it's a build requirement
1010
endif
1111

12-
ifeq ($(USE_POLLY),1)
12+
ifeq ($(USE_RV),1)
13+
BUILD_LLVM_CLANG := 1
14+
# because it's a build requirement
15+
endif
16+
17+
1318
ifeq ($(USE_SYSTEM_LLVM),0)
1419
ifneq ($(LLVM_VER),svn)
20+
ifeq ($(USE_POLLY),1)
1521
$(error USE_POLLY=1 requires LLVM_VER=svn)
1622
endif
17-
endif
18-
endif
1923

2024
ifeq ($(USE_MLIR),1)
21-
ifeq ($(USE_SYSTEM_LLVM),0)
22-
ifneq ($(LLVM_VER),svn)
2325
$(error USE_MLIR=1 requires LLVM_VER=svn)
2426
endif
27+
28+
ifeq ($(USE_RV),1)
29+
$(error USE_RV=1 requires LLVM_VER=svn)
30+
endif
2531
endif
2632
endif
2733

34+
ifneq ($(USE_RV),)
35+
LLVM_RV_GIT_URL ?= https://github.com/cdl-saarland/rv
36+
LLVM_RV_GIT_VER ?= release_90
37+
endif
38+
2839

2940
# for Monorepo
3041
LLVM_ENABLE_PROJECTS :=
42+
LLVM_EXTERNAL_PROJECTS :=
3143
ifeq ($(BUILD_LLVM_CLANG), 1)
3244
LLVM_ENABLE_PROJECTS := $(LLVM_ENABLE_PROJECTS);clang;compiler-rt
3345
endif
@@ -40,6 +52,9 @@ endif
4052
ifeq ($(USE_MLIR), 1)
4153
LLVM_ENABLE_PROJECTS := $(LLVM_ENABLE_PROJECTS);mlir
4254
endif
55+
ifeq ($(USE_RV), 1)
56+
LLVM_EXTERNAL_PROJECTS := $(LLVM_EXTERNAL_PROJECTS);rv
57+
endif
4358

4459
include $(SRCDIR)/llvm-options.mk
4560
LLVM_LIB_FILE := libLLVMCodeGen.a
@@ -79,6 +94,12 @@ LLVM_CMAKE :=
7994
# MONOREPO
8095
ifeq ($(LLVM_VER),svn)
8196
LLVM_CMAKE += -DLLVM_ENABLE_PROJECTS="$(LLVM_ENABLE_PROJECTS)"
97+
LLVM_CMAKE += -DLLVM_EXTERNAL_PROJECTS="$(LLVM_EXTERNAL_PROJECTS)"
98+
99+
ifeq ($(USE_RV),1)
100+
LLVM_CMAKE += -DLLVM_EXTERNAL_RV_SOURCE_DIR=$(LLVM_MONOSRC_DIR)/rv
101+
LLVM_CMAKE += -DLLVM_CXX_STD=c++14
102+
endif
82103
endif
83104

84105
# Allow adding LLVM specific flags
@@ -362,6 +383,11 @@ endif # LLVM_GIT_VER
362383
# Debug output only. Disable pager and ignore error.
363384
(cd $(LLVM_SRC_DIR) && \
364385
git show HEAD --stat | cat) || true
386+
ifneq ($(USE_RV),)
387+
git clone -b $(LLVM_RV_GIT_VER) $(LLVM_RV_GIT_URL) $(LLVM_MONOSRC_DIR)/rv
388+
(cd $(LLVM_MONOSRC_DIR)/rv && \
389+
git submodule update --init) || true
390+
endif
365391
endif # LLVM_VER
366392
ifneq ($(LLVM_VER),svn)
367393
ifneq ($(LLVM_CLANG_TAR),)

0 commit comments

Comments
 (0)