An instruction encoding architecture is provided for a microprocessor to
allow atomic modification of privileged architecture registers. The
instructions include an opcode that designates to the microprocessor that
the instructions are to execute in privileged (kernel) state only, and
that the instructions are to communicate with privileged control
registers, a field for designating which of a plurality of privileged
architecture registers is to be modified, a field for designating which
bit fields within the designated privileged architecture register is to
be modified, and a field to designate whether the designated bit fields
are to be set or cleared. The instruction encoding allows a single
instruction to atomically set or clear bit fields within privileged
architecture registers, without reading the privileged architecture
registers into a general purpose register. In addition, the instruction
encoding allows a programmer to specify whether the previous content of a
privileged architecture register is to be saved to a general purpose
register during the atomic modification.