Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/system/ADD-PRIMOPS
ViewVC logotype

Annotation of /sml/trunk/system/ADD-PRIMOPS

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2603 - (view) (download)

1 : dbm 2603 Procedure to add a new primop
2 :    
3 : george 718 Step 1:
4 : dbm 2603 o compiler/DEVNOTES/Flint/primop-list -- add description
5 :     o compiler/FLINT/kernel/primop.{sig,sml} -- add primop definition
6 :     o compiler/ElabData/basics/primoptypemap.sml -- add with intrinsic type
7 :     o compiler/FLINT/trans/primopmap.sml -- add representation
8 : george 718 o compiler/Semant/statenv/prim.sml -- add to Inline structure
9 :     o compiler/Semant/pickle/picklemod-new.sml -- pickle
10 :     o compiler/Semant/pickle/unpicklemode-new.sml -- unpickle
11 :    
12 :     -- compile with -rebuild
13 :     -- compile to fixpoint
14 :    
15 :     Step 2:
16 :     o compiler/FLINT/cps/cps.{sig,sml} -- add cps primop
17 :     o compiler/FLINT/cps/ppcps.sml -- primop to string
18 :     o compiler/FLINT/cps/convert.sml -- conversion to cps
19 :     o compiler/CodeGen/main/mlriscGen.sml -- generate appropriate mltree
20 :    
21 : dbm 2603 -- compile compiler to fixpt
22 : george 718
23 :     Step 3:
24 :     o system/smlnj/init/built-in.sml -- add to InlineT
25 :     o <use primop where you like> usually in
26 :     system/Basis/Implementation
27 : dbm 2603 [Note that InlineT is not visible in
28 :     top-level environment.]
29 : george 718
30 :    
31 : dbm 2603 -------------------
32 :     Edit history:
33 :     [DBM: 5/23/07]

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0