From: Julien Grall Date: Tue, 26 Mar 2019 20:53:09 +0000 (+0000) Subject: xen/arm: cpuerrata: Match register size with value size in check_workaround_* X-Git-Tag: archive/raspbian/4.14.0+80-gd101b417b7-1+rpi1^2~63^2~1362 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=6acd7dea7adfbe5553383a5133dd3ab6b8145afa;p=xen.git xen/arm: cpuerrata: Match register size with value size in check_workaround_* Clang is pickier than GCC for the register size in asm statement. It expects the register size to match the value size. The asm statement expects a 32-bit (resp. 64-bit) value on Arm32 (resp. Arm64) whereas the value is a boolean (Clang consider to be 32-bit). It would be possible to impose 32-bit register for both architecture but this require the code to use __OP32. However, it does not really improve the assembly generated. Instead, replace switch the variable to use register_t. Signed-off-by: Julien Grall Release-acked-by: Juergen Gross Acked-by: Stefano Stabellini --- diff --git a/xen/include/asm-arm/cpuerrata.h b/xen/include/asm-arm/cpuerrata.h index 55ddfda272..88ef3ca934 100644 --- a/xen/include/asm-arm/cpuerrata.h +++ b/xen/include/asm-arm/cpuerrata.h @@ -14,7 +14,7 @@ static inline bool check_workaround_##erratum(void) \ return false; \ else \ { \ - bool ret; \ + register_t ret; \ \ asm volatile (ALTERNATIVE("mov %0, #0", \ "mov %0, #1", \