[Mesa-dev] [PATCH 0/2] Fix llvmpipe on ARM processors without NEON

Lubomir Rintel lkundrak at v3.sk
Tue Mar 12 20:06:30 UTC 2019


Hi,

chained to this message are two patches that aim to fix llvmpipe driver on 
an ARM machine that has no NEON instructions. My machine is a XO-1.75
laptop with a Marvell MMP2 processor:

  [lkundrak at xo ~]$ LD_SHOW_AUXV=yespls /bin/true |grep HWCAP
  AT_HWCAP:        half thumb fastmult vfp edsp iwmmxt thumbee vfpv3 vfpv3d16 tls idivt
  AT_HWCAP2:    
  [lkundrak at xo ~]$

With unpatched Mesa:

  # gdb /usr/libexec/Xorg --ex run
  ...
  (II) modeset(0): Initializing kms color map for depth 24, 8 bpc.
  warning: JITed object file architecture armv7 is not compatible with target architecture iwmmxt.
  ...
  Program received signal SIGILL, Illegal instruction.
  0xb6fbe028 in ?? ()
    (gdb) x/i $pc
  => 0xb6fbe028:  vld1.32 {d16[]-d17[]}, [r7 :32]
  (gdb)

Seems like defaulting to enabling NEON on armv7 and thus breaking on Marvell and
NVidia (and perhaps other) platform was a deliberate decision and as such is not
considered a bug by LLVM upstream: https://bugs.llvm.org/show_bug.cgi?id=30842

Lubo




More information about the mesa-dev mailing list