devel/llvm13: revert to the older powerpc64 fix

The newer one apparently causes a regression on amd64 freestanding binaries.

While here, fix some whitespace issues in Makefile.

Submitted by:	adalava
This commit is contained in:
Piotr Kubaj 2021-11-08 15:39:54 +00:00
parent d15304d96a
commit d326758c32
2 changed files with 9 additions and 10 deletions

View File

@ -385,7 +385,7 @@ _BE_LIBS_AMDGPU= AsmParser Disassembler Utils
_BE_LIBS_BACKWARDS_AMDGPU=MCACustomBehaviour
_BE_LIBS_ARM= AsmParser Disassembler Utils
_BE_LIBS_AVR= AsmParser Disassembler
_BE_LIBS_BPF= AsmParser Disassembler
_BE_LIBS_BPF= AsmParser Disassembler
_BE_LIBS_Hexagon= AsmParser Disassembler
_BE_LIBS_Lanai= AsmParser Disassembler
_BE_LIBS_MSP430= AsmParser Disassembler
@ -412,7 +412,7 @@ BE_PATTERN=${_BE_LIBS_STANDARD:O:S/$/.a/:ts|}
_CRTLIBDIR= ${LLVM_DIR}/lib/clang/${LLVM_RELEASE}/lib/freebsd
_CRTBLDIR= ${LLVM_DIR}/lib/clang/${LLVM_RELEASE}/share
_COMPILER_RT_BLACKLISTS= cfi_ignorelist.txt
_COMPILER_RT_LIBS_i386= \
_COMPILER_RT_LIBS_i386= \
libclang_rt.asan-i386.a \
libclang_rt.asan-i386.so \
libclang_rt.asan-preinit-i386.a \
@ -432,7 +432,7 @@ _COMPILER_RT_LIBS_i386= \
.if ${ARCH} == "amd64"
_COMPILER_RT_BLACKLISTS+= asan_ignorelist.txt
_COMPILER_RT_BLACKLISTS+= msan_ignorelist.txt
_COMPILER_RT_LIBS= \
_COMPILER_RT_LIBS= \
libclang_rt.asan-preinit-x86_64.a \
libclang_rt.asan-x86_64.a \
libclang_rt.asan-x86_64.a.syms \
@ -490,7 +490,7 @@ MAKE_ENV+= COMPILER_PATH=${LOCALBASE}/bin
# Comment out plist entries for unsupported options.
.for opt in ${_ALL_OPTIONS}
.if !${OPTIONS_DEFINE:M${opt}}
PLIST_SUB+= ${opt}="@comment "
PLIST_SUB+= ${opt}="@comment "
.endif
.endfor

View File

@ -1,15 +1,14 @@
--- llvm/lib/CodeGen/TargetLoweringBase.cpp.orig 2021-09-24 16:18:10 UTC
diff --git a/contrib/llvm-project/llvm/lib/CodeGen/TargetLoweringBase.cpp b/contrib/llvm-project/llvm/lib/CodeGen/TargetLoweringBase.cpp
--- llvm/lib/CodeGen/TargetLoweringBase.cpp
+++ llvm/lib/CodeGen/TargetLoweringBase.cpp
@@ -1980,8 +1980,11 @@ void TargetLoweringBase::insertSSPDeclarations(Module
auto *GV = new GlobalVariable(M, Type::getInt8PtrTy(M.getContext()), false,
@@ -1961,7 +1961,8 @@
GlobalVariable::ExternalLinkage, nullptr,
"__stack_chk_guard");
+
+ // FreeBSD has "__stack_chk_guard" defined externally on libc.so
if (TM.getRelocationModel() == Reloc::Static &&
- !TM.getTargetTriple().isWindowsGNUEnvironment())
+ !TM.getTargetTriple().isWindowsGNUEnvironment() &&
+ !TM.getTargetTriple().isOSFreeBSD())
+ !(TM.getTargetTriple().isPPC64() && TM.getTargetTriple().isOSFreeBSD()))
GV->setDSOLocal(true);
}
}