Title | Instructions for Virtual Machines |
---|---|
Course | Virtual Machines |
Institution | Technische Universität München |
Pages | 1 |
File Size | 42.7 KB |
File Type | |
Total Downloads | 199 |
Total Views | 625 |
1 C: CMa1 BasicscodeR,codeL,code Global,Local,ρ:Vars→ {G,L} ×Zloadc q mul , add , sub , div , mod , neg and , or, xor , not eq, neq , le, leq , gr, geq load , store (loada q, storea q) pop jump A, jumpz A dup halt1 Switch, Heap, Functionsjumpi B, (check 0 k B)newmove k mark , call , slide m enter q,...
1 1.1
C: CMa Basics
codeR , codeL , code Global, Local, ρ: Vars → {G, L} × Z loadc q mul , add , sub , div , mod , neg and , or , xor , not eq , neq , le , leq , gr , geq load , store ( l oa da q , s to rea q ) pop jump A , jumpz A dup halt
1.2
Switch, Heap, Functions
jumpi B , ( check 0 k B ) new move k mark , call , slide m enter q , a ll oc k , r et ur n load rc j , ( loadr j , s to re r j )
2 2.1
PuF: MaMa Basics
codeV , codeB , codeC Global, Local, ρ: Vars → {G, L} × Z Basic value, Closure, Function, Vector loadc b , op 1 , op 2 jump A , jumpz A getbasic , mkbasi c ( getvar x ρ sd ) pushlo c n , pushg lob i eval slide k
2.4
ge t j , g et ve c k nil , cons , t list A tr y A , r es tore B , r ai se
3
Functions
mkvec g, mk funval A tar g k , return k mar k A , ap pl y mkvec0 , wrap , po pe nv
2.3
let rec, Closures, Optimizations
alloc n, re wr ite n mark 0 , a ppl y0 , m kc lo s A , up da te copyg lob move r k
Proll: WiM
codeA , codeG , codeU , codeC , codeP , code Atom, Reference to (un)bound variable, Structure ρ: Vars → N put at om a , pu tv ar i , putan on , p ut re f i puts truct f /n mar k B , c all p / n ( put ~ X ρ) unify uatom a , uvar i , pop , uref i ust ru ct f /n A , son i , up B , bind ( check { Y 1 ,... , Y d }) , chec k i pus he nv m , po pe nv se tbt p , tr y A , d el bt p ini t A , no , h alt d lastmark , last call q/ h m trim m getNode , in dex p /k prune , setcut , fail
3.1
Optimizations
lastmark , last call q/ h m getNode , in dex p /k
4
C±: OMa
Additional tags: Attribute, Virtual function, Nonvirtual function, Static function ( l oa dm q , s to rem q ) loads j ( ini tVirtual C)
5 2.2
Structured data, Exceptions
Multi-Threaded C: Threaded CMa
self , yield , initStack , i nitTh read exit , term , next join , fina lize newMutex , lock , u nl oc k newCondVar , wait , signal , br oadca st...