Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /branches/charisee_dev/src/compiler/high-to-mid/ProbeEin.sml
ViewVC logotype

Diff of /branches/charisee_dev/src/compiler/high-to-mid/ProbeEin.sml

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

revision 3312, Fri Oct 16 20:11:52 2015 UTC revision 3314, Sat Oct 17 01:00:26 2015 UTC
# Line 40  Line 40 
40      val testing=0      val testing=0
41      val testlift=0      val testlift=0
42      val detflag =true      val detflag =true
43        val fieldliftflag=false
44        val valnumflag=true
45    
46    
47      val cnt = ref 0      val cnt = ref 0
# Line 283  Line 285 
285      *)      *)
286     fun expandEinOp( e as (y, DstIL.EINAPP(ein,args)),fieldset)=let     fun expandEinOp( e as (y, DstIL.EINAPP(ein,args)),fieldset)=let
287    
288          fun checkConst ([],a) = liftProbe a          fun checkConst ([],a) =
289                (case fieldliftflag
290                    of true => liftProbe a
291                    | _ => replaceProbe a
292                (*end case*))
293          | checkConst ((E.C _::_),a) = replaceProbe a          | checkConst ((E.C _::_),a) = replaceProbe a
294          | checkConst ((_ ::es),a)= checkConst(es,a)          | checkConst ((_ ::es),a)= checkConst(es,a)
295    
# Line 340  Line 346 
346              | (_,_) => [e]              | (_,_) => [e]
347              (* end case *))              (* end case *))
348    
349          val (fieldset,var) = einSet.rtnVar(fieldset,y,DstIL.EINAPP(ein,args))          val (fieldset,var) = (case valnumflag
350                of true => einSet.rtnVar(fieldset,y,DstIL.EINAPP(ein,args))
351                | _     => (fieldset,NONE)
352            (*end case*))
353    
354          fun matchField b=(case b          fun matchField b=(case b
355              of E.Probe _ => 1              of E.Probe _ => 1

Legend:
Removed from v.3312  
changed lines
  Added in v.3314

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