Changeset 1197 for Deliverables/D3.3/id-lookup-branch/LTL
- Timestamp:
- Sep 7, 2011, 12:10:27 PM (9 years ago)
- Location:
- Deliverables/D3.3/id-lookup-branch
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
Deliverables/D3.3/id-lookup-branch
- Property svn:mergeinfo changed
/src merged: 1151-1152,1154-1183,1185-1188,1191-1196
- Property svn:mergeinfo changed
-
Deliverables/D3.3/id-lookup-branch/LTL/LTL.ma
r1091 r1197 1 1 include "common/Graphs.ma". 2 2 include "utilities/IdentifierTools.ma". 3 include " LIN/LIN.ma".3 include "joint/Joint.ma". 4 4 5 definition ltl_statement ≝ joint_statement label. 5 definition ltl_params: params ≝ 6 mk_params 7 unit unit unit unit registers_move Register 8 unit unit unit unit. 9 10 definition ltl_statement ≝ λglobals: list ident. joint_statement ltl_params globals. 6 11 7 12 definition ltl_statement_graph ≝ λglobals. graph (ltl_statement globals). -
Deliverables/D3.3/id-lookup-branch/LTL/LTLToLIN.ma
r1153 r1197 9 9 λglobals: list ident. 10 10 λs: ltl_statement globals. 11 match s with 12 [ joint_st_return ⇒ joint_st_return ? globals 13 | joint_st_sequential instr _ ⇒ joint_st_sequential ? globals instr it 14 | joint_st_goto l ⇒ joint_st_goto ? globals l 15 ]. 11 match s with 12 [ joint_st_return ⇒ joint_st_return lin_params globals 13 | joint_st_sequential instr lbl ⇒ joint_st_sequential lin_params globals instr lbl 14 | joint_st_goto l ⇒ joint_st_goto lin_params globals l 15 | joint_st_extension ext ⇒ joint_st_extension lin_params globals ext 16 ]. 16 17 17 18 definition require: label → BitVectorTrieSet 16 → BitVectorTrieSet 16 ≝ … … 56 57 BitVectorTrieSet 16 × (list (pre_lin_statement globals)). 57 58 if marked l2 visited then 58 〈require l2 required, (joint_st_goto ?globals l2) :: generated〉59 〈require l2 required, (joint_st_goto … globals l2) :: generated〉 59 60 else 60 61 visit globals g required visited generated l2 n. … … 80 81 [ joint_st_sequential instr l2 ⇒ 81 82 match instr with 82 [ joint_instr_cond _accl1 ⇒83 [ joint_instr_cond acc_a_reg l1 ⇒ 83 84 let required' ≝ 84 85 if marked l2 visited' then … … 104 105 required in 105 106 if marked l2 visited' then 106 〈required', joint_st_goto ?globals l2 :: generated''〉107 〈required', joint_st_goto … globals l2 :: generated''〉 107 108 else 108 109 visit globals g required' visited' generated'' l2 n' 109 110 ] 110 111 | joint_st_return ⇒ 〈required, generated''〉 (* dpm: correct? *) 111 112 | joint_st_goto l ⇒ 112 let required' ≝ 113 if marked l visited' then 114 require l required 115 else 116 required 117 in 118 if marked l visited' then 119 〈required', joint_st_goto ? globals l :: generated''〉 120 else 121 visit globals g required' visited' generated'' l n' 113 let required' ≝ 114 if marked l visited' then 115 require l required 116 else 117 required 118 in 119 if marked l visited' then 120 〈required', joint_st_goto … globals l :: generated''〉 121 else 122 visit globals g required' visited' generated'' l n' 123 | joint_st_extension ext ⇒ 〈required, generated〉 122 124 ] 123 125 ]
Note: See TracChangeset
for help on using the changeset viewer.