wasmreg.dat 827 B

1234567891011121314151617181920212223
  1. ;
  2. ; WebAssembly registers
  3. ;
  4. ; layout
  5. ; <name>,<type>,<subtype>,<value>,<stdname>
  6. ;
  7. ; WebAssembly does not have any registers, since it is stack-based.
  8. ; We do define a few artificial registers to make integration
  9. ; with the rest of the compiler easier though.
  10. ; general/int registers
  11. NO,$00,$00,$00,INVALID
  12. ; used as base register in reference when referring to the top
  13. ; of the evaluation stack (offset = offset on the evaluation
  14. ; stack)
  15. R0,$01,$00,$00,evalstacktopptr
  16. ; for addressing locals ("stack pointer")
  17. R1,$01,$00,$01,localsstackptr
  18. ; generic fake evaluation stack register for use by the register allocator
  19. R2,$01,$00,$02,evalstacktop
  20. ; fake register, representing the local frame pointer. Used for accessing
  21. ; address-taken local variables on the linear stack: (localframeptr+offset).
  22. R3,$01,$00,$03,localframeptr