From bf6ea1c69791eaf0ad58587f578d126b0484b688 Mon Sep 17 00:00:00 2001 From: Luc Van Oostenryck Date: Wed, 20 Dec 2023 00:17:15 +0100 Subject: llvm: avoid trivial recursion in symbol_type() Signed-off-by: Luc Van Oostenryck --- sparse-llvm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sparse-llvm.c b/sparse-llvm.c index 0b826ce0..90a931b7 100644 --- a/sparse-llvm.c +++ b/sparse-llvm.c @@ -194,7 +194,7 @@ static LLVMTypeRef symbol_type(struct symbol *sym) /* don't cache the result for SYM_NODE */ if (sym->type == SYM_NODE) - return symbol_type(sym->ctype.base_type); + sym = sym->ctype.base_type; if (sym->aux) return sym->aux; -- cgit 1.2.3-korg From 2925599897b1459fa46ed95c5e4cceebc91e824a Mon Sep 17 00:00:00 2001 From: Luc Van Oostenryck Date: Sat, 20 Jan 2024 17:16:35 +0100 Subject: llvm: allow arm64 Currently, all architectures but the i386/x86 ones are excluded from the LLVM backend, mainly because the lack of testing. Since I can test it now, allow arm64/aarch64 too. Note: this patch is somehow incomplete because the layout is not set but it's not clear what exactly the layout is needed for and at least it allows to run the testsuite on this architecture. Signed-off-by: Luc Van Oostenryck --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 8450d8bc..e172758b 100644 --- a/Makefile +++ b/Makefile @@ -200,7 +200,7 @@ arch := $(shell uname -m) ifeq (${MULTIARCH_TRIPLET},x86_64-linux-gnux32) arch := x32 endif -ifneq ($(filter ${arch},i386 i486 i586 i686 x86_64 amd64),) +ifneq ($(filter ${arch},i386 i486 i586 i686 x86_64 amd64 aarch64 arm64),) LLVM_VERSION:=$(shell $(LLVM_CONFIG) --version) LLVM_VERSION_MAJOR:=$(firstword $(subst ., ,$(LLVM_VERSION))) ifeq ($(shell expr "$(LLVM_VERSION_MAJOR)" '>=' 3),1) -- cgit 1.2.3-korg