From: Grygorii Strashko <grygorii_strashko@epam.com>
Constify regs_mode_is_32bit() macro for the case CONFIG_ARM64_AARCH32=n and
so allow compiler to opt out Aarch32 specific code.
(CONFIG_ARM64_AARCH32=y)
Before:
855232 322404 270880 1448516 161a44 xen-syms
(CONFIG_ARM64_AARCH32=n, CONFIG_EXPERT=y)
After:
849548 322404 270880 1442832 160410 xen-syms
diff: -5684 (dec)
Signed-off-by: Grygorii Strashko <grygorii_strashko@epam.com>
---
xen/arch/arm/include/asm/arm64/processor.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/xen/arch/arm/include/asm/arm64/processor.h b/xen/arch/arm/include/asm/arm64/processor.h
index daf890708d87..a3d83869f02d 100644
--- a/xen/arch/arm/include/asm/arm64/processor.h
+++ b/xen/arch/arm/include/asm/arm64/processor.h
@@ -96,10 +96,14 @@ struct cpu_user_regs
*/
#define regs_mode_is_user(r) (psr_mode((r)->cpsr, PSR_MODE_EL0t) || usr_mode(r))
+#if defined(CONFIG_ARM64_AARCH32)
static inline bool regs_mode_is_32bit(const struct cpu_user_regs *regs)
{
return !!(regs->cpsr & PSR_MODE_BIT);
}
+#else
+#define regs_mode_is_32bit(regs) (false)
+#endif /* CONFIG_ARM64_AARCH32 */
#endif /* __ASSEMBLY__ */
--
2.34.1