Argh.. Rusty asked to have a simplified version first, and then to
implement the "more complex" one on top of it. However, in order to get
the reentrancy I need for the markers, I need the complex version of the
immediate values. Therefore, you find, in this patchset, the simple
version first, and then, the more complex one implemented on top.
About this patch header, the initial idea was to use the "Q" and "R"
constraints, but, as stated just below, the "q" and "r" constraints are
used instead to make sure the REX prefixed opcodes for 1, 2, and 4 bytes
immediate values are never used. So the complete header follows the
source code, it's just that this paragraph could be clearer.