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

SCM Repository

[smlnj] Diff of /sml/branches/primop-branch-2/src/compiler/FLINT/trans/translate.sml
ViewVC logotype

Diff of /sml/branches/primop-branch-2/src/compiler/FLINT/trans/translate.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1975, Thu Jul 13 20:12:25 2006 UTC revision 1976, Thu Jul 13 20:20:48 2006 UTC
# Line 855  Line 855 
855                  of [] => !typ                  of [] => !typ
856                   | _ => TU.applyPoly(!typ, ts)                   | _ => TU.applyPoly(!typ, ts)
857            val (primop,intrinsicType) =            val (primop,intrinsicType) =
858                case PrimOpMap.primopMap p                case (PrimOpMap.primopMap p, PrimOpTypeMap.primopTypeMap p)
859                 of SOME(p,t) => (p,t)                 of (SOME p, SOME t) => (p,t)
860                  | NONE => bug "mkVE: unrecognized primop name"                  | _ => bug "mkVE: unrecognized primop name"
861            val intrinsicParams =            val intrinsicParams =
862                (* compute intrinsic instantiation params of intrinsicType *)                (* compute intrinsic instantiation params of intrinsicType *)
863                case ((TU.matchInstTypes(occty,intrinsicType)) : (TP.tyvar list * TP.tyvar list) option )                case ((TU.matchInstTypes(occty,intrinsicType)) : (TP.tyvar list * TP.tyvar list) option )
# Line 998  Line 998 
998               * This seems definitely wrong. *)               * This seems definitely wrong. *)
999              (case prim              (case prim
1000                of PrimOpId.Prim name =>                of PrimOpId.Prim name =>
1001                    (case PrimOpMap.primopMap name                    (case PrimOpTypeMap.primopTypeMap name
1002                       of SOME(primop,primopty) =>                       of SOME(primopty) =>
1003                          if TU.equalTypeP(!typ,primopty)                          if TU.equalTypeP(!typ,primopty)
1004                          then LET(v, mkVar(w, d), b)                          then LET(v, mkVar(w, d), b)
1005                          else LET(v, mkPE(exp, d, btvs), b)                          else LET(v, mkPE(exp, d, btvs), b)

Legend:
Removed from v.1975  
changed lines
  Added in v.1976

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