Changes between Initial Version and Version 1 of Internals/Compiler


Ignore:
Timestamp:
05/11/09 08:04:42 (5 years ago)
Author:
lpolzer
Comment:

Created.

Legend:

Unmodified
Added
Removed
Modified
  • Internals/Compiler

    v1 v1  
     1== Frontend == 
     2See files in compiler/ with nx in their name. 
     3 
     4== Backend == 
     5=== VINSNs === 
     6VINSN means ''Virtual Instruction''. 
     7 
     8Those likely belong to the same category of SBCL's Virtual Operations (VOPs). 
     9 
     10{{{ 
     11<-    copy register 
     12@     label 
     13@=    label (aligned) 
     14->    jump to label 
     15^     branch 
     16?     register (unwired) 
     17$     register (wired) 
     18}}} 
     19 
     20(from compiler/X86/x862.lisp) 
     21 
     22=== LAP === 
     23LAP means ''Lisp Assembly Parser'' (probably). It's a DSL that compiles into opcodes. 
     24 
     25==== Operand syntax ==== 
     26{{{ 
     27(% x)    register 
     28($ x)    immediate 
     29(@ x)    memory operand; x ~ ([seg] [disp] [base] [index] [scale]) 
     30x        labelref 
     31(:rcontext x)   memory operand, using segment register or gpr; see @ for syntax of x. 
     32(:self fn)      self-reference 
     33}}} 
     34 
     35(from compiler/X86/x86-lap.lisp)