// The 'typeof' will create at _least_ a 32-bit type, but // will happily also take a bigger type and the 'shrl' will // clear the upper bits #define runtime_const_shift_right_32(val, sym) ({ \
typeof(0u+(val)) __ret = (val); \
asm_inline("shrl $12,%k0\n1:\n" \ ".pushsection runtime_shift_"#sym",\"a\"\n\t" \ ".long 1b - 1 - .\n" \ ".popsection" \
:"+r" (__ret)); \
__ret; })
/* * The text patching is trivial - you can only do this at init time, * when the text section hasn't been marked RO, and before the text * has ever been executed.
*/ staticinlinevoid __runtime_fixup_ptr(void *where, unsignedlong val)
{
*(unsignedlong *)where = val;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.