Changeset 741 for Deliverables/D2.2/8051
- Timestamp:
- Apr 4, 2011, 6:24:22 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Deliverables/D2.2/8051/src/LIN/LINToASM.ml
r685 r741 2 2 (** This module translates a [LIN] program into a [ASM] program. *) 3 3 4 5 (* Fetch the labels found in a LIN program. *) 4 6 5 7 let statement_labels = function … … 16 18 | _ -> Label.Set.empty 17 19 18 (* Fetch the labels found in a LIN program. *)19 20 20 let prog_labels p = 21 21 let f labels funct = Label.Set.union labels (funct_labels funct) in … … 23 23 24 24 25 let byte_of_int i = BitVectors.vect_of_int i `Eight 25 let size_of_vect_size = function 26 | `Four -> 4 27 | `Seven -> 7 28 | `Eight -> 8 29 | `Eleven -> 11 30 | `Sixteen -> 16 31 32 let vect_of_int i size = 33 let i' = 34 if i < 0 then (MiscPottier.pow 2 (size_of_vect_size size)) + i else i in 35 BitVectors.vect_of_int i' size 36 37 let byte_of_int i = vect_of_int i `Eight 26 38 let data_of_int i = `DATA (byte_of_int i) 27 let data16_of_int i = `DATA16 ( BitVectors.vect_of_int i `Sixteen)39 let data16_of_int i = `DATA16 (vect_of_int i `Sixteen) 28 40 let acc_addr = I8051.reg_addr I8051.a 29 41
Note: See TracChangeset
for help on using the changeset viewer.