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

SCM Repository

[smlnj] View of /sml/branches/primop-branch-3/system/ADD-PRIMOPS
ViewVC logotype

View of /sml/branches/primop-branch-3/system/ADD-PRIMOPS

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2561 - (download) (annotate)
Thu May 17 03:41:11 2007 UTC (13 years, 5 months ago) by dbm
File size: 949 byte(s)
fix for Date.fromString, unification for SCHEME tyvars
Procedure to add a new primop

Step 1:
  o compiler/FLINT/kernel/primop.{sig,sml}	-- define primop
  o compiler/DEVNOTES/Flint/primop-list		-- add description
  o compiler/Semant/statenv/prim.sml		-- add to Inline structure
  o compiler/ElabData/basics/primoptypemap.sml  -- add with intrinsic type
  o compiler/FLINT/trans/primopmap.sml          -- add representation
  o compiler/Semant/pickle/picklemod-new.sml	-- pickle 
  o compiler/Semant/pickle/unpicklemode-new.sml -- unpickle

	-- compile with -rebuild	
	-- compile to fixpoint

Step 2:
  o compiler/FLINT/cps/cps.{sig,sml}		-- add cps primop
  o compiler/FLINT/cps/ppcps.sml		-- primop to string
  o compiler/FLINT/cps/convert.sml		-- conversion to cps
  o compiler/CodeGen/main/mlriscGen.sml		-- generate appropriate mltree
	
	-- compile compiler  

Step 3:
  o system/smlnj/init/built-in.sml		-- add to InlineT
  o <use primop where you like> usually in 
	system/Basis/Implementation




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