Project

General

Profile

« Previous | Next » 

Revision 1ad092fb

Added by Pierre-Loïc Garoche over 9 years ago

Create a Step call only for functions that are not in basic lib

View differences:

src/machine_code.ml
374 374
     j,
375 375
     d,
376 376
     control_on_clock node args eq.eq_rhs.expr_clock (MStateAssign (var_x, translate_expr node args e2)) :: s)
377
  | p  , Expr_appl (f, arg, r)                  ->
377

  
378
  | p  , Expr_appl (f, arg, r) when not (Basic_library.is_internal_fun f) ->
378 379
    let var_p = List.map (fun v -> node_var v node) p in
379 380
    let el =
380 381
      match arg.expr_desc with
......
390 391
    Clock_calculus.unify_imported_clock (Some call_ck) eq.eq_rhs.expr_clock;
391 392
    (m,
392 393
     (if Stateless.check_node node_f then si else MReset o :: si),
393
     (if Basic_library.is_internal_fun f then j else Utils.IMap.add o call_f j),
394
     Utils.IMap.add o call_f j,
394 395
     d,
395 396
     reset_instance node args o r eq.eq_rhs.expr_clock @
396 397
       (control_on_clock node args call_ck (MStep (var_p, o, vl))) :: s)
......
413 414
  | [x], _                                       -> (
414 415
    let var_x = node_var x node in
415 416
    (m, si, j, d, 
416
     control_on_clock node args eq.eq_rhs.expr_clock (translate_act node args (var_x, eq.eq_rhs)) :: s)
417
     control_on_clock 
418
       node
419
       args
420
       eq.eq_rhs.expr_clock
421
       (translate_act node args (var_x, eq.eq_rhs)) :: s
422
    )
417 423
  )
418 424
  | _                                            ->
419 425
    begin

Also available in: Unified diff