Date: Tue, 30 Jan 2024 17:17:06 -0800 From: Mark Millard <marklmi@yahoo.com> To: void <void@f-m.fm> Cc: freebsd-arm@freebsd.org Subject: Re: arm64 system clang & llvm Message-ID: <26928272-6565-4AE2-B77A-4449E03634CE@yahoo.com> In-Reply-To: <Zblj2ul6PJxOxHhu@int21h> References: <ZbkdblJeoPagKgz9@int21h> <C99B0C38-4C63-4B54-BAE8-9B63BC619733@yahoo.com> <Zblj2ul6PJxOxHhu@int21h>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 30, 2024, at 13:02, void <void@f-m.fm> wrote: > Hi Mark, > > On Tue, Jan 30, 2024 at 09:14:22AM -0800, Mark Millard wrote: >> >> #Disables avoiding bootstrap: WITHOUT_LLVM_TARGET_ALL= > > this means (if it's uncommented) it doesn't avoid bootstrap? It used to cause unnecessary bootstrap rebuils during the overall buildworld . >> MALLOC_PRODUCTION= >> WITH_MALLOC_PRODUCTION= > > aren't these the same thing? (for -current context) I frequently have files designed to be allowed in a range of FreeBSD vintages that might not recognize newer (or even older) notations. I change before needing the new notation. I eventually get rid of the older notation. So I happen to have shown both notations. >> WITHOUT_ASSERT_DEBUG= >> WITHOUT_LLVM_ASSERTIONS= >> >> >> (I've not validated the comment in a very long time. >> There used to be the odd side effect on when bootstrap >> builds happened.) >> >> As FreeBSD main [so: 15] has lib32 support by default >> these days, does your aarch64 hardware support >> AArch32/armv7 code, at least for EL0? > > What's EL0? EL: Exception Level. Suggestive are: EL0: Unprivileged execution (user space). In increasing execution privilege order . . . El1: Normal operating system kernel execution. EL2: Non-secure state of execution for Hypervior execution (virtualization) EL3: Allows the security state associated with the execution to be changed between insecure and secure (for secure monitor operation) So hardware with only EL0 for AArch32/armv7 execution can not boot a AArch32/armv7 kernel. But the OS can allow user code to be AArch32/armv7 and run. I'll note that even before lib32 was implemented, a armv7 world could be installed into a directory tree and one could then chroot (or jail) into that directory tree and run AArch32/armv7 user code. Now one does not need to involved a chroot/jail to execution AARch32/armv7 code unless one wants to. > WITHOUT_LIB32= is also in src.conf WITHOUT_LIB32 does not prevent the chroot/jail technique from being used. But it does avoid building any AArch32/armv7 code in the buildworld (which is what you were after). === Mark Millard marklmi at yahoo.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?26928272-6565-4AE2-B77A-4449E03634CE>