Skip to content

Commit

Permalink
Initial support RegionVectorizer
Browse files Browse the repository at this point in the history
Co-authored-by: Valentin Churavy <[email protected]>
  • Loading branch information
jpsamaroo and vchuravy committed Sep 22, 2020
1 parent 8659cfe commit 337bb79
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 5 deletions.
3 changes: 3 additions & 0 deletions Make.inc
Original file line number Diff line number Diff line change
Expand Up @@ -340,6 +340,9 @@ USE_POLLY_ACC := 0 # Enable GPU code-generation
# Options to use MLIR
USE_MLIR := 0

# Options to use RegionVectorizer
USE_RV := 0

# Cross-compile
#XC_HOST := i686-w64-mingw32
#XC_HOST := x86_64-w64-mingw32
Expand Down
36 changes: 31 additions & 5 deletions deps/llvm.mk
Original file line number Diff line number Diff line change
Expand Up @@ -9,25 +9,37 @@ BUILD_LLVM_CLANG := 1
# because it's a build requirement
endif

ifeq ($(USE_POLLY),1)
ifeq ($(USE_RV),1)
BUILD_LLVM_CLANG := 1
# because it's a build requirement
endif


ifeq ($(USE_SYSTEM_LLVM),0)
ifneq ($(LLVM_VER),svn)
ifeq ($(USE_POLLY),1)
$(error USE_POLLY=1 requires LLVM_VER=svn)
endif
endif
endif

ifeq ($(USE_MLIR),1)
ifeq ($(USE_SYSTEM_LLVM),0)
ifneq ($(LLVM_VER),svn)
$(error USE_MLIR=1 requires LLVM_VER=svn)
endif

ifeq ($(USE_RV),1)
$(error USE_RV=1 requires LLVM_VER=svn)
endif
endif
endif

ifneq ($(USE_RV),)
LLVM_RV_GIT_URL ?= https://github.com/cdl-saarland/rv
LLVM_RV_GIT_VER ?= release_90
endif


# for Monorepo
LLVM_ENABLE_PROJECTS :=
LLVM_EXTERNAL_PROJECTS :=
ifeq ($(BUILD_LLVM_CLANG), 1)
LLVM_ENABLE_PROJECTS := $(LLVM_ENABLE_PROJECTS);clang;compiler-rt
endif
Expand All @@ -40,6 +52,9 @@ endif
ifeq ($(USE_MLIR), 1)
LLVM_ENABLE_PROJECTS := $(LLVM_ENABLE_PROJECTS);mlir
endif
ifeq ($(USE_RV), 1)
LLVM_EXTERNAL_PROJECTS := $(LLVM_EXTERNAL_PROJECTS);rv
endif

include $(SRCDIR)/llvm-options.mk
LLVM_LIB_FILE := libLLVMCodeGen.a
Expand Down Expand Up @@ -79,6 +94,12 @@ LLVM_CMAKE :=
# MONOREPO
ifeq ($(LLVM_VER),svn)
LLVM_CMAKE += -DLLVM_ENABLE_PROJECTS="$(LLVM_ENABLE_PROJECTS)"
LLVM_CMAKE += -DLLVM_EXTERNAL_PROJECTS="$(LLVM_EXTERNAL_PROJECTS)"

ifeq ($(USE_RV),1)
LLVM_CMAKE += -DLLVM_EXTERNAL_RV_SOURCE_DIR=$(LLVM_MONOSRC_DIR)/rv
LLVM_CMAKE += -DLLVM_CXX_STD=c++14
endif
endif

# Allow adding LLVM specific flags
Expand Down Expand Up @@ -362,6 +383,11 @@ endif # LLVM_GIT_VER
# Debug output only. Disable pager and ignore error.
(cd $(LLVM_SRC_DIR) && \
git show HEAD --stat | cat) || true
ifneq ($(USE_RV),)
git clone -b $(LLVM_RV_GIT_VER) $(LLVM_RV_GIT_URL) $(LLVM_MONOSRC_DIR)/rv
(cd $(LLVM_MONOSRC_DIR)/rv && \
git submodule update --init) || true
endif
endif # LLVM_VER
ifneq ($(LLVM_VER),svn)
ifneq ($(LLVM_CLANG_TAR),)
Expand Down

0 comments on commit 337bb79

Please sign in to comment.