MLK-15286 arm: arm64: only use general regs
authorPeng Fan <peng.fan@nxp.com>
Mon, 26 Jun 2017 12:18:10 +0000 (20:18 +0800)
committerYe Li <ye.li@nxp.com>
Wed, 28 Apr 2021 20:48:55 +0000 (13:48 -0700)
commit2472b4bac96a8cd3ed5e60346c0a597dc178519e
treef0701cbe8c14f2ff10fd7981f89609c0708df7ff
parentf67a972956b45d26ea18fae7f4a81e15460ee05b
MLK-15286 arm: arm64: only use general regs

When compiling with android toolchain, there is an instruction
"str     q0, [x8],#16", but x8 is not 16bytes aligned,
this instruction will trigger sync abort.

So, following Linux kernel, only use general regs option to IMX8 and
IMX8M aarch64 only.
If not, compiler may use simd registers Q[x]. We need to avoid
using simd registers in U-Boot, because load/store Q[x] has
restriction that 128bits aligned when str/ldr.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 186ccd8de53f986c5913432638dfaca9bdc97e89)
(cherry picked from commit 8f3f0d339783e066f7815408949677b62e465b62)
(cherry picked from commit 3002af0ff57e9db40baeefbc14a336ad206e8fea)
(cherry picked from commit ad1f02f687e208a32d89d6f7b16802da115cf27e)
arch/arm/Makefile