Central Docs
Catálogo Inicio

Variantes

Las variantes permiten delegar sintaxis a otro archivo RIF, por ejemplo entre los estados ARM y Thumb.

Declaración

@SUPPORTS thumb

@ASMVARIANT thumb:
.MODE SWITCH
.ENTER "ENTER_thumb"
.EXIT "EXIT_thumb"
@END

El archivo se llama thumb.rif y se resuelve usando la búsqueda del linker. Solo puede contener definiciones y Rules:

@define thumb_word

@rule ENTER_thumb:
-> KW "thumb"

@rule EXIT_thumb:
-> KW "endthumb"

Las tablas, configuración, linker y demás contexto global siguen siendo los de la raíz.

Modos

SWITCH representa un cambio de estado del ensamblador. ENCAPSULATE representa una región sintáctica anidada. Ambos usan .ENTER y .EXIT.

RIF detecta cargas repetidas y ciclos, y valida que existan todas las Rules referenciadas.

En un .pack, los archivos de variantes forman parte del grafo de fuentes y se cargan desde el orden precalculado.