Changeset 1275 for src/ERTL/liveness.ma


Ignore:
Timestamp:
Sep 26, 2011, 6:07:47 PM (8 years ago)
Author:
sacerdot
Message:

RTL ported to joint syntax, but:

  1. bug discovered: opaccs should have taken four registers
  2. push/pop should not be present in RTL :-(

ERTLToLTL and RTLtoERTL not working ATM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ERTL/liveness.ma

    r1271 r1275  
    8989    | joint_instr_clear_carry ⇒ lattice_hsingleton RegisterCarry
    9090    | joint_instr_set_carry ⇒ lattice_hsingleton RegisterCarry
    91     | joint_instr_opaccs opaccs r1 r2 ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2)
     91    | joint_instr_opaccs opaccs dr1 dr2 sr1 sr2 ⇒
     92       lattice_join (lattice_psingleton dr1) (lattice_psingleton dr2)
    9293    | joint_instr_op1 op1 r1 r2 ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2)
    9394    | joint_instr_pop r ⇒ lattice_psingleton r
     
    135136    | joint_instr_set_carry ⇒ lattice_bottom
    136137    (* acc_a and acc_b *)
    137     | joint_instr_opaccs opaccs r1 r2 ⇒ lattice_join (lattice_psingleton r1) (lattice_psingleton r2)
     138    | joint_instr_opaccs opaccs dr1 dr2 sr1 sr2 ⇒
     139       lattice_join (lattice_psingleton sr1) (lattice_psingleton sr2)
    138140    | joint_instr_op1 op1 r1 r2 ⇒ lattice_psingleton r2
    139141    | joint_instr_pop r ⇒ lattice_bottom
     
    181183    | joint_instr_clear_carry ⇒ None ?
    182184    | joint_instr_set_carry ⇒ None ?
    183     | joint_instr_opaccs opaccs r1 r2 ⇒
    184       if set_member … (eq_identifier …) r1 pliveafter ∨
    185          set_member … (eq_identifier …) r2 pliveafter ∨
     185    | joint_instr_opaccs opaccs dr1 dr2 sr1 sr2 ⇒
     186      if set_member … (eq_identifier …) dr1 pliveafter ∨
     187         set_member … (eq_identifier …) dr2 pliveafter ∨
    186188         set_member … eq_Register RegisterCarry hliveafter then
    187189        None ?
Note: See TracChangeset for help on using the changeset viewer.