Changeset 1144 for src/ERTL/liveness.ma
- Timestamp:
- Aug 30, 2011, 3:53:21 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/ERTL/liveness.ma
r1124 r1144 49 49 | ertl_st_push _ l ⇒ [ l ] 50 50 | ertl_st_pop _ l ⇒ [ l ] 51 | ertl_st_addr_h _ _ l ⇒ [ l ] 52 | ertl_st_addr_l _ _ l ⇒ [ l ] 51 | ertl_st_addr _ _ _ l ⇒ [ l ] 53 52 | ertl_st_int _ _ l ⇒ [ l ] 54 53 | ertl_st_move _ _ l ⇒ [ l ] 55 | ertl_st_opaccs_a _ _ _ _ l ⇒ [ l ] 56 | ertl_st_opaccs_b _ _ _ _ l ⇒ [ l ] 54 | ertl_st_opaccs _ _ _ _ _ l ⇒ [ l ] 57 55 | ertl_st_op1 _ _ _ l ⇒ [ l ] 58 56 | ertl_st_op2 _ _ _ _ l ⇒ [ l ] … … 148 146 | ertl_st_pop r _ ⇒ lattice_psingleton r 149 147 | ertl_st_int r _ _ ⇒ lattice_psingleton r 150 | ertl_st_addr_h r _ _ ⇒ lattice_psingleton r 151 | ertl_st_addr_l r _ _ ⇒ lattice_psingleton r 148 | ertl_st_addr r1 r2 _ _ ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2) 152 149 | ertl_st_move r _ _ ⇒ lattice_psingleton r 153 | ertl_st_opaccs_a _ r _ _ _ ⇒ lattice_psingleton r154 | ertl_st_opaccs _b _ r _ _ _ ⇒ lattice_psingleton r150 (* XXX: change from o'caml *) 151 | ertl_st_opaccs _ r1 r2 _ _ _ ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2) 155 152 | ertl_st_load r _ _ _ ⇒ lattice_psingleton r 156 153 | ertl_st_set_hdw r _ _ ⇒ lattice_hsingleton r … … 180 177 | ertl_st_frame_size _ _ ⇒ lattice_bottom 181 178 | ertl_st_pop _ _ ⇒ lattice_bottom 182 | ertl_st_addr_h _ _ _ ⇒ lattice_bottom 183 | ertl_st_addr_l _ _ _ ⇒ lattice_bottom 179 | ertl_st_addr _ _ _ _ ⇒ lattice_bottom 184 180 | ertl_st_int _ _ _ ⇒ lattice_bottom 185 181 | ertl_st_clear_carry _ ⇒ lattice_bottom … … 187 183 (* Reads the hardware registers that are used to pass parameters. *) 188 184 | ertl_st_call_id _ nparams _ ⇒ 189 〈[ ], list_set_of_list (prefix ? (nat_of_bitvector ? nparams)RegisterParameters)〉185 〈[ ], list_set_of_list (prefix ? nparams RegisterParameters)〉 190 186 | ertl_st_get_hdw _ r _ ⇒ lattice_hsingleton r 191 187 | ertl_st_hdw_to_hdw _ r _ ⇒ lattice_hsingleton r … … 201 197 | _ ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2) 202 198 ] 203 | ertl_st_opaccs_a _ _ r1 r2 _ ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2) 204 | ertl_st_opaccs_b _ _ r1 r2 _ ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2) 199 | ertl_st_opaccs _ d1 d2 s1 s2 _ ⇒ lattice_join (lattice_psingleton s1) (lattice_psingleton s2) 205 200 | ertl_st_load _ r1 r2 _ ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2) 206 201 | ertl_st_store r1 r2 r3 _ ⇒ … … 247 242 else 248 243 Some ? l 249 | ertl_st_addr_h r _ l ⇒ 250 if list_set_member register (eq_identifier ?) r pliveafter ∨ 251 list_set_member Register eq_Register RegisterCarry hliveafter then 252 None ? 253 else 254 Some ? l 255 | ertl_st_addr_l r _ l ⇒ 256 if list_set_member register (eq_identifier ?) r pliveafter ∨ 244 | ertl_st_addr r1 r2 _ l ⇒ 245 if list_set_member register (eq_identifier ?) r1 pliveafter ∨ 246 list_set_member register (eq_identifier ?) r2 pliveafter ∨ 257 247 list_set_member Register eq_Register RegisterCarry hliveafter then 258 248 None ? … … 265 255 else 266 256 Some ? l 267 | ertl_st_opaccs_a _ r _ _ l ⇒ 268 if list_set_member register (eq_identifier ?) r pliveafter ∨ 269 list_set_member Register eq_Register RegisterCarry hliveafter then 270 None ? 271 else 272 Some ? l 273 | ertl_st_opaccs_b _ r _ _ l ⇒ 274 if list_set_member register (eq_identifier ?) r pliveafter ∨ 257 | ertl_st_opaccs _ d1 d2 _ _ l ⇒ 258 if list_set_member register (eq_identifier ?) d1 pliveafter ∨ 259 list_set_member register (eq_identifier ?) d2 pliveafter ∨ 275 260 list_set_member Register eq_Register RegisterCarry hliveafter then 276 261 None ?
Note: See TracChangeset
for help on using the changeset viewer.