Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 838346 - cpu_flags_arm_v{4..7} are not always available on arm64
Summary: cpu_flags_arm_v{4..7} are not always available on arm64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Profiles (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: ARM64 Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-04-14 14:57 UTC by 12101111
Modified: 2023-06-26 11:53 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description 12101111 2022-04-14 14:57:38 UTC
profiles/arch/arm64/use.force say:

# Instruction sets that are always available
cpu_flags_arm_v4
cpu_flags_arm_v5
cpu_flags_arm_v6
cpu_flags_arm_v7
cpu_flags_arm_v8

...
cpu_flags_arm_thumb
cpu_flags_arm_thumb2
...

But that's not true today. Some armv9 core and apple m1 don't support 32/16bit ARM ISA

Reproducible: Always

Actual Results:  
This is a apple m1 max machine:

> cat /proc/cpuinfo
processor	: 0
BogoMIPS	: 48.00
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 asimddp sha512 asimdfhm dit uscat ilrcpc flagm ssbs sb paca pacg dcpodp flagm2 frint
CPU implementer	: 0x61
CPU architecture: 8
CPU variant	: 0x2
CPU part	: 0x028
CPU revision	: 0



> emerge --info
Portage 3.0.30 (python 3.10.4-final-0, targets/systemd, gcc-11.2.1, musl-1.2.2-r8, 5.17.0-rc7-asahi-next-20220310+ aarch64)
=================================================================
System uname: Linux-5.17.0-rc7-asahi-next-20220310+-aarch64-with-libc
KiB Mem:    65789248 total,  53390832 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Thu, 14 Apr 2022 13:34:22 +0000
Head commit of repository gentoo: 7cdb154a065eb6a4abf040b7836da06187151442

Timestamp of repository gentoo-zh: Wed, 13 Apr 2022 06:49:08 +0000
Head commit of repository gentoo-zh: 94290c604287bf5524a83505297d2b54f8a9d42f

Timestamp of repository guru: Thu, 14 Apr 2022 13:49:08 +0000
Head commit of repository guru: 48f77516292c9d346cc98af39416112bdc4da001

Timestamp of repository mv: Tue, 12 Apr 2022 06:05:15 +0000
Head commit of repository mv: 6c5006d4a3181745f8f02818daca757ad7524cfd

Timestamp of repository pg_overlay: Thu, 14 Apr 2022 10:34:48 +0000
Head commit of repository pg_overlay: c36d80fda15e2f57718be9a47f2a6ebd5acc6e8a

Timestamp of repository musl: Tue, 12 Apr 2022 06:05:13 +0000
Head commit of repository musl: fc6d28a41ad5dc297fffe5590e1a8e26cd746458

Head commit of repository 12101111-overlay: 9d5ccd7581cc1098d5c312625353f6d3e88c60ba

sh bash 5.1_p16
ld GNU ld (Gentoo 2.38 p3) 2.38
ccache version 4.6 [disabled]
app-misc/pax-utils:        1.3.3::gentoo
app-shells/bash:           5.1_p16::gentoo
dev-lang/perl:             5.34.1::gentoo
dev-lang/python:           3.10.4::gentoo
dev-lang/rust:             1.60.0::12101111-overlay
dev-lang/rust-bin:         1.60.0::gentoo
dev-util/ccache:           4.6-r1::gentoo
dev-util/cmake:            3.23.0::gentoo
dev-util/meson:            0.61.4-r2::gentoo
sys-apps/baselayout:       2.8::gentoo
sys-apps/sandbox:          2.29::gentoo
sys-apps/systemd:          250.4-r1::12101111-overlay
sys-devel/autoconf:        2.71-r1::gentoo
sys-devel/automake:        1.16.5::gentoo
sys-devel/binutils:        2.38-r1::gentoo
sys-devel/binutils-config: 5.4.1::gentoo
sys-devel/clang:           14.0.0-r1::gentoo
sys-devel/gcc:             11.2.1_p20220115::gentoo
sys-devel/gcc-config:      2.5-r1::gentoo
sys-devel/libtool:         2.4.7::gentoo
sys-devel/lld:             14.0.0::gentoo
sys-devel/llvm:            14.0.0::12101111-overlay
sys-devel/make:            4.3::gentoo
sys-kernel/linux-headers:  5.17::gentoo (virtual/os-headers)
sys-libs/musl:             1.2.2-r8::12101111-overlay
Repositories:

gentoo
    location: /usr/portage/gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo
    priority: -1000

gentoo-zh
    location: /usr/portage/gentoo-zh
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo-zh.git
    masters: gentoo

guru
    location: /usr/portage/guru
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/guru.git
    masters: gentoo

mv
    location: /usr/portage/mv
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/mv.git
    masters: gentoo

pg_overlay
    location: /usr/portage/pg_overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/pg_overlay.git
    masters: gentoo

musl
    location: /usr/portage/musl
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/musl.git
    masters: gentoo
    priority: 900

12101111-overlay
    location: /usr/portage/local
    sync-type: git
    sync-uri: https://github.com/12101111/overlay
    masters: gentoo
    priority: 1000

ACCEPT_KEYWORDS="arm64 ~arm64"
ACCEPT_LICENSE="@FREE"
ADDR2LINE="llvm-addr2line"
AR="llvm-ar"
AS="as"
CBUILD="aarch64-gentoo-linux-musl"
CC="clang"
CFLAGS="-mcpu=apple-m1 -O3 -pipe -flto=thin"
CHOST="aarch64-gentoo-linux-musl"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CPP="clang-cpp"
CXX="clang++"
CXXFLAGS="-mcpu=apple-m1 -O3 -pipe -flto=thin -stdlib=libc++"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live candy config-protect-if-modified distlocks downgrade-backup ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="https://mirrors.tuna.tsinghua.edu.cn/gentoo"
INSTALL_MASK="charset.alias /usr/share/locale/locale.alias"
LANG="zh_CN.UTF-8"
LC_ALL="zh_CN.UTF-8"
LD="ld.lld"
LDFLAGS="-fuse-ld=lld -rtlib=compiler-rt -unwindlib=libunwind -flto=thin -Wl,--lto-O3 -Wl,-O3 -Wl,--as-needed -Wl,--gc-sections -mcpu=apple-m1"
MAKEOPTS="-j8"
NM="llvm-nm"
OBJCOPY="llvm-objcopy"
OBJDUMP="llvm-objdump"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/tmp"
RANLIB="llvm-ranlib"
READELF="llvm-readelf"
RUSTFLAGS="-Ctarget-cpu=apple-m1 -Clinker=clang -Clink-arg=-fuse-ld=lld -Ctarget-feature=-crt-static"
SHELL="/bin/zsh"
SIZE="llvm-size"
STRINGS="llvm-strings"
STRIP="llvm-strip"
USE="X acl alsa arm64 bzip2 clang cli compiler-rt crypt cups dbus default-compiler-rt default-libcxx dri fortran iconv ipv6 libcxx libcxxabi libglvnd libtirpc libunwind llvm-libunwind lto ncurses nls nptl opengl openmp pam pcre pgo policykit pulseaudio readline seccomp split-usr ssl systemd udev unicode wayland xattr zlib" ADA_TARGET="gnat_2020" ALSA_CARDS="hda-intel usb-audio" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="edsp vfp vfpv3 vfpv4 vfp-d32 aes sha1 sha2 crc32 v8" ELIBC="musl" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev libinput" KERNEL="linux" L10N="zh-CN zh" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LLVM_TARGETS="X86 ARM AArch64 RISCV WebAssembly AMDGPU AVR BPF Hexagon Lanai MSP430 Mips NVPTX PowerPC Sparc SystemZ XCore" LUA_SINGLE_TARGET="luajit" LUA_TARGETS="luajit" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" QEMU_USER_TARGETS="i386 x86_64 arm riscv32 riscv64" RUBY_TARGETS="ruby31" USERLAND="GNU" VIDEO_CARDS="virgl" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ARFLAGS, ASFLAGS, CCLD, CONFIG_SHELL, CPPFLAGS, CTARGET, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, YACC, YFLAGS
Comment 1 Larry the Git Cow gentoo-dev 2023-06-26 11:53:11 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9ac8e3b860bee4ad473e11e36e97e58d7cf186f

commit e9ac8e3b860bee4ad473e11e36e97e58d7cf186f
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-06-26 11:52:00 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-06-26 11:53:00 +0000

    profiles/arch/arm64: drop legacy arm32 flags from arm64
    
    This ends up breaking things and is a bad assumption anyway. (Sorry for taking
    so long to get to this, I was worried about collateral damage, but the ffmpeg
    stuff from cleaning up thumb recently shows we just need to get on with it.)
    
    Closes: https://bugs.gentoo.org/838346
    Closes: https://bugs.gentoo.org/909085
    Signed-off-by: Sam James <sam@gentoo.org>

 profiles/arch/arm64/use.force | 4 ----
 profiles/arch/arm64/use.mask  | 5 -----
 2 files changed, 9 deletions(-)