fix nothrow issues

- revealed by enabling nothrow checks in functions
  with inline asm
attributes for inline asm

- cpuid is marked pure because it's only used
  to access global but immutable data, not because
  it serializes instructions