I think that the only case where you have to resort to writing binary code manually is when the assembler cannot output the desired code for some reason. If I recall correctly, there is only one such case in the HelenOS sources:
http://trac.helenos.org/browser/mainline/kernel/arch/mips32/include/debug.h?rev=mainline%2C1446.3.1 Here they manually encode the opcodes of five special debugging instructions for the MSIM MIPS simulator (these instructions are not part of the standard MIPS ISA, thus the assembler does not know them). But the developers of FreeBSD not write binary code manually. How the Plan9 developers solve problems that are not resolved by Assembly?
