blob: b9901f35cfcac21e8ce7ce8c92d25be9c600b6d0 [file] [log] [blame]
#ifndef __X86_PS_CONST
#define __X86_PS_CONST
#include <linux/tables.h>
#include <asm/asm.h>
#define ps_shr(_in, _func) \
({ \
__typeof__(_in) _out; \
asm volatile( \
"shr $0,%0\n" \
"1:\n" \
SECTION_TBL_STR(SECTION_INIT_DATA, ps_set_const_table, 01)\
_ASM_PTR "1b-1, %P2, %P3\n" \
".popsection\n" \
: "=rm" (_out) \
: "0" (_in), "i" (SET_CONST_U8), "i" (_func)); \
(_out); \
})
#endif /* __X86_PS_CONST */