csrwipseudo

csrwi

pseudo
Ensamblador RISC-V Referencia

lyszt.net cubre csrwi y otras instrucciones RISC-V con más detalle.

Descripción

csrwi escribe una constante en un registro de control. Un registro de control y estado, o CSR, contiene el estado del procesador, como la dirección del manejador de traps y los interruptores de interrupciones (véase csrrw). La constante uimm es un número de 0 a 31 porque se almacena en 5 bits. La forma siguiente la escribe en el CSR y descarta el valor anterior.

csrwi csr, uimm

Es una pseudoinstrucción, un nombre legible que el ensamblador reescribe como una instrucción real. Se convierte en la instrucción siguiente, donde rd es zero, de modo que el valor anterior no se lee.

csrrwi zero, csr, uimm

La línea siguiente escribe 0 en mie, lo que desactiva todas las fuentes de interrupción.

csrwi mie, 0

Un valor superior a 31 no cabe, por lo que un valor mayor se coloca primero en un registro y se escribe con csrw.

Se expande a

csrrwi zero, csr, uimm

El ensamblador reemplaza esta pseudoinstrucción con la instrucción o instrucciones reales enumeradas arriba.

Ejemplo

csrwi mie, 0   # mie = 0