CVS: sml-dist/src/compiler/DebugProf/profile tdp-instrument.sml, 1.4.6.3, 1.4.6.4 tprof.sml, 1.5.4.3, 1.5.4.4
David MacQueen <[email protected]> Tue, 11 Jul 2006 16:00:43 -0700
| Newsgroups | gmane.comp.lang.sml.smlnj.commits |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/smlnj/sml-dist/src/compiler/DebugProf/profile
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv3556/DebugProf/profile
Modified Files:
Tag: primop-branch-2
tdp-instrument.sml tprof.sml
Log Message:
further primop hacking -- getting close to compile
Index: tdp-instrument.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/DebugProf/profile/tdp-instrument.sml,v
retrieving revision 1.4.6.3
retrieving revision 1.4.6.4
diff -C2 -d -r1.4.6.3 -r1.4.6.4
*** tdp-instrument.sml 10 Jul 2006 14:30:48 -0000 1.4.6.3
--- tdp-instrument.sml 11 Jul 2006 23:00:41 -0000 1.4.6.4
***************
*** 162,171 ****
fun AUexp v = A.APPexp (VARexp v, uExp) (* apply to unit *)
- (* GK: There is no need for isSimple because primId and strPrimElem
- are now two separate datatypes. Previously, isSimple checked
- whether the info was just an Info or a compound, structured
- info List/Null *)
fun is_prim_exp (A.VARexp (ref (VC.VALvar v), _)) =
! II.isSimple (#prim v)
| is_prim_exp (A.CONexp _) = true
| is_prim_exp (A.CONSTRAINTexp (e, _)) = is_prim_exp e
--- 162,169 ----
fun AUexp v = A.APPexp (VARexp v, uExp) (* apply to unit *)
fun is_prim_exp (A.VARexp (ref (VC.VALvar v), _)) =
! (case #prim v
! of PrimOpId.Prim _ => true
! | PrimOpId.NonPrim => false)
| is_prim_exp (A.CONexp _) = true
| is_prim_exp (A.CONSTRAINTexp (e, _)) = is_prim_exp e
***************
*** 313,320 ****
case gv pat of
SOME (VC.VALvar { path = SP.SPATH [x], prim, ... }) =>
! if II.isSimple info then vb
! else recur (cons (x, n))
| SOME (VC.VALvar { prim, ... }) =>
! if II.isSimple info then vb else recur n
| _ => recur n
end
--- 311,321 ----
case gv pat of
SOME (VC.VALvar { path = SP.SPATH [x], prim, ... }) =>
! (case prim
! of PrimOpId.Prim _ => vb
! | PrimOpId.NonPrim => recur (cons (x, n)))
| SOME (VC.VALvar { prim, ... }) =>
! (case prim
! of PrimOpId.Prim _ => vb
! | PrimOpId.NonPrim => recur n)
| _ => recur n
end
Index: tprof.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/DebugProf/profile/tprof.sml,v
retrieving revision 1.5.4.3
retrieving revision 1.5.4.4
diff -C2 -d -r1.5.4.3 -r1.5.4.4
*** tprof.sml 10 Jul 2006 14:22:34 -0000 1.5.4.3
--- tprof.sml 11 Jul 2006 23:00:41 -0000 1.5.4.4
***************
*** 149,157 ****
fun BUMPCCexp (ccvara : int) =
let val lvar = tmpvar("indexvar",intTy,mkv)
! in APPexp(VARexp(ref updateop, [intTy]),
TUPLEexp[countarray,
INTexp (IntInf.fromInt ccvara, intTy),
APPexp(varexp addop,
! TUPLEexp[APPexp(VARexp(ref subop,[intTy]),
TUPLEexp[countarray,
INTexp(IntInf.fromInt ccvara,intTy)]),
--- 149,157 ----
fun BUMPCCexp (ccvara : int) =
let val lvar = tmpvar("indexvar",intTy,mkv)
! in APPexp(VARexp(ref updateop, [ref(INSTANTIATED(intTy))]),
TUPLEexp[countarray,
INTexp (IntInf.fromInt ccvara, intTy),
APPexp(varexp addop,
! TUPLEexp[APPexp(VARexp(ref subop,[ref(INSTANTIATED(intTy))]),
TUPLEexp[countarray,
INTexp(IntInf.fromInt ccvara,intTy)]),
***************
*** 170,174 ****
tyvars=ref nil,
boundtvs=[]}],
! APPexp(VARexp(ref assignop,[intTy]),
TUPLEexp[currentexp, varexp lvar]))
end
--- 170,174 ----
tyvars=ref nil,
boundtvs=[]}],
! APPexp(VARexp(ref assignop,[ref(INSTANTIATED(intTy))]),
TUPLEexp[currentexp, varexp lvar]))
end
***************
*** 391,395 ****
VARpat currentvar],
exp=APPexp(APPexp(VARexp(ref derefop,
! [profDerefTy]),
varexp register),
STRINGexp(concat(rev(!entries)))),
--- 391,395 ----
VARpat currentvar],
exp=APPexp(APPexp(VARexp(ref derefop,
! [ref(INSTANTIATED(profDerefTy))]),
varexp register),
STRINGexp(concat(rev(!entries)))),
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642