On Mon, Apr 05, 2021 at 12:08:27PM -0700, Nathan Chancellor wrote:
From: Nicolas Pitre nicolas.pitre@linaro.org
commit 75fea300d73ae5b18957949a53ec770daaeb6fc2 upstream.
The GNU assembler has implemented the "unified syntax" parsing since 2005. This "unified" syntax is required when the kernel is built in Thumb2 mode. However the "unified" syntax is a mixed bag of features, including not requiring a `#' prefix with immediate operands. This leads to situations where some code builds just fine in Thumb2 mode and fails to build in ARM mode if that prefix is missing. This behavior discrepancy makes build tests less valuable, forcing both ARM and Thumb2 builds for proper coverage.
Let's "fix" this issue by always using the "unified" syntax for both ARM and Thumb2 mode. Given that the documented minimum binutils version that properly builds the kernel is version 2.20 released in 2010, we can assume that any toolchain capable of building the latest kernel is also "unified syntax" capable.
Whith this, a bunch of macros used to mask some differences between both syntaxes can be removed, with the side effect of making LTO easier.
Suggested-by: Robin Murphy robin.murphy@arm.com Signed-off-by: Nicolas Pitre nico@linaro.org Signed-off-by: Russell King rmk+kernel@armlinux.org.uk [nathan: Resolve small conflict on 4.9 due to a lack of 494609701e06a] Signed-off-by: Nathan Chancellor nathan@kernel.org
Hi all,
This commit is needed to fix the backport of commit 7f9942c61fa6 ("ARM: s3c: fix fiq for clang IAS"):
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org/message/MJWA3VG...
It is present in 4.14+ and it has been validate via TuxSuite across a variety of arch/arm configs with no errors so I feel it should be a fairly safe backport.
Now queued up, thanks.
greg k-h