Ignore:
Timestamp:
Nov 1, 2011, 6:31:24 PM (9 years ago)
Author:
tranquil
Message:
  • corrected a bug
  • implemented copy propagation
  • enhanced constant propagation with some algebraic equalities
  • temporarily added immediates to RTLabs, to be seen if it is useful
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Deliverables/D2.2/8051-indexed-labels-branch/src/RTLabs/RTLabsUtilities.ml

    r1473 r1477  
    175175    | None -> types
    176176    | Some x -> add types x
     177
     178(* the register modified by a node *)
     179let modified_at_stmt stmt =
     180  match stmt with
     181        | St_op1 (_, r, _, _)
     182        | St_op2 (_, r, _, _, _)
     183        | St_cst (r, _, _)
     184        | St_load (_, _, r, _)
     185        | St_call_id (_, _, Some r, _, _)
     186        | St_call_ptr (_, _, Some r, _, _) -> Some r
     187        | _ -> None
     188
     189let modified_at (g : graph) (n : Label.t) : Register.t option =
     190    modified_at_stmt (Label.Map.find n g)
     191
Note: See TracChangeset for help on using the changeset viewer.