Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tools compiler.h: Add OPTIMIZER_HIDE_VAR()

Port over the definition of OPTIMIZER_HIDE_VAR() so we can use it in
kselftests.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230728-arm64-signal-memcpy-fix-v4-2-0c1290db5d46@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>

authored by

Mark Brown and committed by
Will Deacon
e5d51a66 d6da04b6

+6
+6
tools/include/linux/compiler.h
··· 190 190 #define ___PASTE(a, b) a##b 191 191 #define __PASTE(a, b) ___PASTE(a, b) 192 192 193 + #ifndef OPTIMIZER_HIDE_VAR 194 + /* Make the optimizer believe the variable can be manipulated arbitrarily. */ 195 + #define OPTIMIZER_HIDE_VAR(var) \ 196 + __asm__ ("" : "=r" (var) : "0" (var)) 197 + #endif 198 + 193 199 #endif /* _TOOLS_LINUX_COMPILER_H */