Changeset 2974 for extracted/toRTLabs.ml


Ignore:
Timestamp:
Mar 27, 2013, 4:03:51 PM (7 years ago)
Author:
sacerdot
Message:

New extraction.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extracted/toRTLabs.ml

    r2951 r2974  
    121121  List.foldr (fun idt rsengen ->
    122122    let { Types.fst = id; Types.snd = ty } = idt in
    123     let { Types.fst = eta2914; Types.snd = gen0 } = rsengen in
    124     let { Types.fst = rs; Types.snd = en0 } = eta2914 in
     123    let { Types.fst = eta166; Types.snd = gen0 } = rsengen in
     124    let { Types.fst = rs; Types.snd = en0 } = eta166 in
    125125    let { Types.fst = r; Types.snd = gen' } =
    126126      Identifiers.fresh PreIdentifiers.RegisterTag gen0
     
    142142    (Identifiers.identifier_set -> env -> AST.typ Types.option -> 'a1) ->
    143143    fixed -> 'a1 **)
    144 let rec fixed_rect_Type4 h_mk_fixed x_15525 =
     144let rec fixed_rect_Type4 h_mk_fixed x_207 =
    145145  let { fx_gotos = fx_gotos0; fx_env = fx_env0; fx_rettyp = fx_rettyp0 } =
    146     x_15525
     146    x_207
    147147  in
    148148  h_mk_fixed fx_gotos0 fx_env0 fx_rettyp0
     
    151151    (Identifiers.identifier_set -> env -> AST.typ Types.option -> 'a1) ->
    152152    fixed -> 'a1 **)
    153 let rec fixed_rect_Type5 h_mk_fixed x_15527 =
     153let rec fixed_rect_Type5 h_mk_fixed x_209 =
    154154  let { fx_gotos = fx_gotos0; fx_env = fx_env0; fx_rettyp = fx_rettyp0 } =
    155     x_15527
     155    x_209
    156156  in
    157157  h_mk_fixed fx_gotos0 fx_env0 fx_rettyp0
     
    160160    (Identifiers.identifier_set -> env -> AST.typ Types.option -> 'a1) ->
    161161    fixed -> 'a1 **)
    162 let rec fixed_rect_Type3 h_mk_fixed x_15529 =
     162let rec fixed_rect_Type3 h_mk_fixed x_211 =
    163163  let { fx_gotos = fx_gotos0; fx_env = fx_env0; fx_rettyp = fx_rettyp0 } =
    164     x_15529
     164    x_211
    165165  in
    166166  h_mk_fixed fx_gotos0 fx_env0 fx_rettyp0
     
    169169    (Identifiers.identifier_set -> env -> AST.typ Types.option -> 'a1) ->
    170170    fixed -> 'a1 **)
    171 let rec fixed_rect_Type2 h_mk_fixed x_15531 =
     171let rec fixed_rect_Type2 h_mk_fixed x_213 =
    172172  let { fx_gotos = fx_gotos0; fx_env = fx_env0; fx_rettyp = fx_rettyp0 } =
    173     x_15531
     173    x_213
    174174  in
    175175  h_mk_fixed fx_gotos0 fx_env0 fx_rettyp0
     
    178178    (Identifiers.identifier_set -> env -> AST.typ Types.option -> 'a1) ->
    179179    fixed -> 'a1 **)
    180 let rec fixed_rect_Type1 h_mk_fixed x_15533 =
     180let rec fixed_rect_Type1 h_mk_fixed x_215 =
    181181  let { fx_gotos = fx_gotos0; fx_env = fx_env0; fx_rettyp = fx_rettyp0 } =
    182     x_15533
     182    x_215
    183183  in
    184184  h_mk_fixed fx_gotos0 fx_env0 fx_rettyp0
     
    187187    (Identifiers.identifier_set -> env -> AST.typ Types.option -> 'a1) ->
    188188    fixed -> 'a1 **)
    189 let rec fixed_rect_Type0 h_mk_fixed x_15535 =
     189let rec fixed_rect_Type0 h_mk_fixed x_217 =
    190190  let { fx_gotos = fx_gotos0; fx_env = fx_env0; fx_rettyp = fx_rettyp0 } =
    191     x_15535
     191    x_217
    192192  in
    193193  h_mk_fixed fx_gotos0 fx_env0 fx_rettyp0
     
    257257    (PreIdentifiers.identifier Identifiers.identifier_map -> __ -> __ -> 'a1)
    258258    -> goto_map -> 'a1 **)
    259 let rec goto_map_rect_Type4 fx g h_mk_goto_map x_15551 =
    260   let gm_map = x_15551 in h_mk_goto_map gm_map __ __
     259let rec goto_map_rect_Type4 fx g h_mk_goto_map x_233 =
     260  let gm_map = x_233 in h_mk_goto_map gm_map __ __
    261261
    262262(** val goto_map_rect_Type5 :
     
    264264    (PreIdentifiers.identifier Identifiers.identifier_map -> __ -> __ -> 'a1)
    265265    -> goto_map -> 'a1 **)
    266 let rec goto_map_rect_Type5 fx g h_mk_goto_map x_15553 =
    267   let gm_map = x_15553 in h_mk_goto_map gm_map __ __
     266let rec goto_map_rect_Type5 fx g h_mk_goto_map x_235 =
     267  let gm_map = x_235 in h_mk_goto_map gm_map __ __
    268268
    269269(** val goto_map_rect_Type3 :
     
    271271    (PreIdentifiers.identifier Identifiers.identifier_map -> __ -> __ -> 'a1)
    272272    -> goto_map -> 'a1 **)
    273 let rec goto_map_rect_Type3 fx g h_mk_goto_map x_15555 =
    274   let gm_map = x_15555 in h_mk_goto_map gm_map __ __
     273let rec goto_map_rect_Type3 fx g h_mk_goto_map x_237 =
     274  let gm_map = x_237 in h_mk_goto_map gm_map __ __
    275275
    276276(** val goto_map_rect_Type2 :
     
    278278    (PreIdentifiers.identifier Identifiers.identifier_map -> __ -> __ -> 'a1)
    279279    -> goto_map -> 'a1 **)
    280 let rec goto_map_rect_Type2 fx g h_mk_goto_map x_15557 =
    281   let gm_map = x_15557 in h_mk_goto_map gm_map __ __
     280let rec goto_map_rect_Type2 fx g h_mk_goto_map x_239 =
     281  let gm_map = x_239 in h_mk_goto_map gm_map __ __
    282282
    283283(** val goto_map_rect_Type1 :
     
    285285    (PreIdentifiers.identifier Identifiers.identifier_map -> __ -> __ -> 'a1)
    286286    -> goto_map -> 'a1 **)
    287 let rec goto_map_rect_Type1 fx g h_mk_goto_map x_15559 =
    288   let gm_map = x_15559 in h_mk_goto_map gm_map __ __
     287let rec goto_map_rect_Type1 fx g h_mk_goto_map x_241 =
     288  let gm_map = x_241 in h_mk_goto_map gm_map __ __
    289289
    290290(** val goto_map_rect_Type0 :
     
    292292    (PreIdentifiers.identifier Identifiers.identifier_map -> __ -> __ -> 'a1)
    293293    -> goto_map -> 'a1 **)
    294 let rec goto_map_rect_Type0 fx g h_mk_goto_map x_15561 =
    295   let gm_map = x_15561 in h_mk_goto_map gm_map __ __
     294let rec goto_map_rect_Type0 fx g h_mk_goto_map x_243 =
     295  let gm_map = x_243 in h_mk_goto_map gm_map __ __
    296296
    297297(** val gm_map :
     
    401401    Graphs.label Types.sig0 -> Graphs.label Types.sig0 -> 'a1) -> partial_fn
    402402    -> 'a1 **)
    403 let rec partial_fn_rect_Type4 fx h_mk_partial_fn x_15579 =
     403let rec partial_fn_rect_Type4 fx h_mk_partial_fn x_261 =
    404404  let { pf_labgen = pf_labgen0; pf_reggen = pf_reggen0; pf_params =
    405405    pf_params0; pf_locals = pf_locals0; pf_result = pf_result0;
    406406    pf_stacksize = pf_stacksize0; pf_graph = pf_graph0; pf_gotos = pf_gotos0;
    407407    pf_labels = pf_labels0; pf_entry = pf_entry0; pf_exit = pf_exit0 } =
    408     x_15579
     408    x_261
    409409  in
    410410  h_mk_partial_fn pf_labgen0 pf_reggen0 pf_params0 pf_locals0 pf_result0 __
     
    419419    Graphs.label Types.sig0 -> Graphs.label Types.sig0 -> 'a1) -> partial_fn
    420420    -> 'a1 **)
    421 let rec partial_fn_rect_Type5 fx h_mk_partial_fn x_15581 =
     421let rec partial_fn_rect_Type5 fx h_mk_partial_fn x_263 =
    422422  let { pf_labgen = pf_labgen0; pf_reggen = pf_reggen0; pf_params =
    423423    pf_params0; pf_locals = pf_locals0; pf_result = pf_result0;
    424424    pf_stacksize = pf_stacksize0; pf_graph = pf_graph0; pf_gotos = pf_gotos0;
    425425    pf_labels = pf_labels0; pf_entry = pf_entry0; pf_exit = pf_exit0 } =
    426     x_15581
     426    x_263
    427427  in
    428428  h_mk_partial_fn pf_labgen0 pf_reggen0 pf_params0 pf_locals0 pf_result0 __
     
    437437    Graphs.label Types.sig0 -> Graphs.label Types.sig0 -> 'a1) -> partial_fn
    438438    -> 'a1 **)
    439 let rec partial_fn_rect_Type3 fx h_mk_partial_fn x_15583 =
     439let rec partial_fn_rect_Type3 fx h_mk_partial_fn x_265 =
    440440  let { pf_labgen = pf_labgen0; pf_reggen = pf_reggen0; pf_params =
    441441    pf_params0; pf_locals = pf_locals0; pf_result = pf_result0;
    442442    pf_stacksize = pf_stacksize0; pf_graph = pf_graph0; pf_gotos = pf_gotos0;
    443443    pf_labels = pf_labels0; pf_entry = pf_entry0; pf_exit = pf_exit0 } =
    444     x_15583
     444    x_265
    445445  in
    446446  h_mk_partial_fn pf_labgen0 pf_reggen0 pf_params0 pf_locals0 pf_result0 __
     
    455455    Graphs.label Types.sig0 -> Graphs.label Types.sig0 -> 'a1) -> partial_fn
    456456    -> 'a1 **)
    457 let rec partial_fn_rect_Type2 fx h_mk_partial_fn x_15585 =
     457let rec partial_fn_rect_Type2 fx h_mk_partial_fn x_267 =
    458458  let { pf_labgen = pf_labgen0; pf_reggen = pf_reggen0; pf_params =
    459459    pf_params0; pf_locals = pf_locals0; pf_result = pf_result0;
    460460    pf_stacksize = pf_stacksize0; pf_graph = pf_graph0; pf_gotos = pf_gotos0;
    461461    pf_labels = pf_labels0; pf_entry = pf_entry0; pf_exit = pf_exit0 } =
    462     x_15585
     462    x_267
    463463  in
    464464  h_mk_partial_fn pf_labgen0 pf_reggen0 pf_params0 pf_locals0 pf_result0 __
     
    473473    Graphs.label Types.sig0 -> Graphs.label Types.sig0 -> 'a1) -> partial_fn
    474474    -> 'a1 **)
    475 let rec partial_fn_rect_Type1 fx h_mk_partial_fn x_15587 =
     475let rec partial_fn_rect_Type1 fx h_mk_partial_fn x_269 =
    476476  let { pf_labgen = pf_labgen0; pf_reggen = pf_reggen0; pf_params =
    477477    pf_params0; pf_locals = pf_locals0; pf_result = pf_result0;
    478478    pf_stacksize = pf_stacksize0; pf_graph = pf_graph0; pf_gotos = pf_gotos0;
    479479    pf_labels = pf_labels0; pf_entry = pf_entry0; pf_exit = pf_exit0 } =
    480     x_15587
     480    x_269
    481481  in
    482482  h_mk_partial_fn pf_labgen0 pf_reggen0 pf_params0 pf_locals0 pf_result0 __
     
    491491    Graphs.label Types.sig0 -> Graphs.label Types.sig0 -> 'a1) -> partial_fn
    492492    -> 'a1 **)
    493 let rec partial_fn_rect_Type0 fx h_mk_partial_fn x_15589 =
     493let rec partial_fn_rect_Type0 fx h_mk_partial_fn x_271 =
    494494  let { pf_labgen = pf_labgen0; pf_reggen = pf_reggen0; pf_params =
    495495    pf_params0; pf_locals = pf_locals0; pf_result = pf_result0;
    496496    pf_stacksize = pf_stacksize0; pf_graph = pf_graph0; pf_gotos = pf_gotos0;
    497497    pf_labels = pf_labels0; pf_entry = pf_entry0; pf_exit = pf_exit0 } =
    498     x_15589
     498    x_271
    499499  in
    500500  h_mk_partial_fn pf_labgen0 pf_reggen0 pf_params0 pf_locals0 pf_result0 __
     
    874874    Cminor_syntax.stmt -> partial_fn Types.sig0 -> 'a1) -> partial_fn ->
    875875    fn_con_because -> 'a1 **)
    876 let rec fn_con_because_rect_Type4 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_15665 = function
     876let rec fn_con_because_rect_Type4 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_347 = function
    877877| Fn_con_eq f -> h_fn_con_eq f
    878878| Fn_con_sig (f1, f2, f3) -> h_fn_con_sig f1 f2 __ f3
     
    884884    Cminor_syntax.stmt -> partial_fn Types.sig0 -> 'a1) -> partial_fn ->
    885885    fn_con_because -> 'a1 **)
    886 let rec fn_con_because_rect_Type5 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_15672 = function
     886let rec fn_con_because_rect_Type5 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_354 = function
    887887| Fn_con_eq f -> h_fn_con_eq f
    888888| Fn_con_sig (f1, f2, f3) -> h_fn_con_sig f1 f2 __ f3
     
    894894    Cminor_syntax.stmt -> partial_fn Types.sig0 -> 'a1) -> partial_fn ->
    895895    fn_con_because -> 'a1 **)
    896 let rec fn_con_because_rect_Type3 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_15679 = function
     896let rec fn_con_because_rect_Type3 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_361 = function
    897897| Fn_con_eq f -> h_fn_con_eq f
    898898| Fn_con_sig (f1, f2, f3) -> h_fn_con_sig f1 f2 __ f3
     
    904904    Cminor_syntax.stmt -> partial_fn Types.sig0 -> 'a1) -> partial_fn ->
    905905    fn_con_because -> 'a1 **)
    906 let rec fn_con_because_rect_Type2 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_15686 = function
     906let rec fn_con_because_rect_Type2 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_368 = function
    907907| Fn_con_eq f -> h_fn_con_eq f
    908908| Fn_con_sig (f1, f2, f3) -> h_fn_con_sig f1 f2 __ f3
     
    914914    Cminor_syntax.stmt -> partial_fn Types.sig0 -> 'a1) -> partial_fn ->
    915915    fn_con_because -> 'a1 **)
    916 let rec fn_con_because_rect_Type1 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_15693 = function
     916let rec fn_con_because_rect_Type1 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_375 = function
    917917| Fn_con_eq f -> h_fn_con_eq f
    918918| Fn_con_sig (f1, f2, f3) -> h_fn_con_sig f1 f2 __ f3
     
    924924    Cminor_syntax.stmt -> partial_fn Types.sig0 -> 'a1) -> partial_fn ->
    925925    fn_con_because -> 'a1 **)
    926 let rec fn_con_because_rect_Type0 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_15700 = function
     926let rec fn_con_because_rect_Type0 fx h_fn_con_eq h_fn_con_sig h_fn_con_addinv x_382 = function
    927927| Fn_con_eq f -> h_fn_con_eq f
    928928| Fn_con_sig (f1, f2, f3) -> h_fn_con_sig f1 f2 __ f3
     
    12001200let add_return fx opt_e f =
    12011201  let f0 = f in
    1202   let f1 = add_fresh_to_graph fx (fun x -> RTLabs_syntax.St_return) f in
     1202  let f1 = change_entry fx f (Types.pi1 f.pf_exit) in
    12031203  (match opt_e with
    12041204   | Types.None -> (fun _ -> Types.pi1 f1)
     
    13391339  let reggen0 = Identifiers.new_universe PreIdentifiers.RegisterTag in
    13401340  let cminor_labels = Cminor_syntax.labels_of f.Cminor_syntax.f_body in
    1341   (let { Types.fst = eta3141; Types.snd = reggen1 } =
     1341  (let { Types.fst = eta393; Types.snd = reggen1 } =
    13421342     populate_env (Identifiers.empty_map PreIdentifiers.SymbolTag) reggen0
    13431343       f.Cminor_syntax.f_params
    13441344   in
    1345   let { Types.fst = params; Types.snd = env1 } = eta3141 in
     1345  let { Types.fst = params; Types.snd = env1 } = eta393 in
    13461346  (fun _ ->
    1347   (let { Types.fst = eta3140; Types.snd = reggen2 } =
     1347  (let { Types.fst = eta392; Types.snd = reggen2 } =
    13481348     populate_env env1 reggen1 f.Cminor_syntax.f_vars
    13491349   in
    1350   let { Types.fst = locals0; Types.snd = env0 } = eta3140 in
     1350  let { Types.fst = locals0; Types.snd = env0 } = eta392 in
    13511351  (fun _ ->
    13521352  (let { Types.dpi1 = locals_reggen; Types.dpi2 = result } =
Note: See TracChangeset for help on using the changeset viewer.