From b96af395b9af2ff9df94b3e82213171f30827c8d Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Tue, 5 May 2015 21:17:24 -0700 Subject: 1276 - make C++ version the default I've tried to update the Readme, but there are at least a couple of issues. --- arc/.traces/list | 234 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 234 insertions(+) create mode 100644 arc/.traces/list (limited to 'arc/.traces/list') diff --git a/arc/.traces/list b/arc/.traces/list new file mode 100644 index 00000000..c90a5e73 --- /dev/null +++ b/arc/.traces/list @@ -0,0 +1,234 @@ +c{0: 0 (((1 list-address)) <- ((new)) ((list literal))) -- nil +c{0: 1 (((2 tagged-value-address)) <- ((list-value-address)) ((1 list-address))) -- nil +c{0: 2 (((3 type-address)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((type offset))) -- nil +c{0: 3 (((3 type-address) (deref)) <- ((copy)) ((integer literal))) -- nil +c{0: 4 (((4 location)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((payload offset))) -- nil +c{0: 5 (((4 location) (deref)) <- ((copy)) ((34 literal))) -- nil +c{0: 6 (((5 list-address-address)) <- ((get-address)) ((1 list-address) (deref)) ((cdr offset))) -- nil +c{0: 7 (((5 list-address-address) (deref)) <- ((new)) ((list literal))) -- nil +c{0: 8 (((6 list-address)) <- ((copy)) ((5 list-address-address) (deref))) -- nil +c{0: 9 (((7 tagged-value-address)) <- ((list-value-address)) ((6 list-address))) -- nil +c{0: 10 (((8 type-address)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((type offset))) -- nil +c{0: 11 (((8 type-address) (deref)) <- ((copy)) ((boolean literal))) -- nil +c{0: 12 (((9 location)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((payload offset))) -- nil +c{0: 13 (((9 location) (deref)) <- ((copy)) ((t literal))) -- nil +c{0: 14 (((10 list-address)) <- ((get)) ((6 list-address) (deref)) ((1 offset))) -- nil +c{1: 0 ✓ (((1 list-address)) <- ((new)) ((list literal))) +c{1: 1 ✓ (((2 tagged-value-address)) <- ((list-value-address)) ((1 list-address))) +c{1: 2 ✓ (((3 type-address)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((type offset))) +c{1: 3 ✓ (((3 type-address) (deref)) <- ((copy)) ((integer literal))) +c{1: 4 ✓ (((4 location)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((payload offset))) +c{1: 5 ✓ (((4 location) (deref)) <- ((copy)) ((34 literal))) +c{1: 6 ✓ (((5 list-address-address)) <- ((get-address)) ((1 list-address) (deref)) ((cdr offset))) +c{1: 7 ✓ (((5 list-address-address) (deref)) <- ((new)) ((list literal))) +c{1: 8 ✓ (((6 list-address)) <- ((copy)) ((5 list-address-address) (deref))) +c{1: 9 ✓ (((7 tagged-value-address)) <- ((list-value-address)) ((6 list-address))) +c{1: 10 ✓ (((8 type-address)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((type offset))) +c{1: 11 ✓ (((8 type-address) (deref)) <- ((copy)) ((boolean literal))) +c{1: 12 ✓ (((9 location)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((payload offset))) +c{1: 13 ✓ (((9 location) (deref)) <- ((copy)) ((t literal))) +c{1: 14 ✓ (((10 list-address)) <- ((get)) ((6 list-address) (deref)) ((1 offset))) +cn0: convert-names in main +cn0: (((1 list-address)) <- ((new)) ((list literal))) nil nil +cn0: checking arg ((list literal)) +cn0: checking oarg ((1 list-address)) +maybe-add: ((1 list-address)) +cn0: (((2 tagged-value-address)) <- ((list-value-address)) ((1 list-address))) nil nil +cn0: checking arg ((1 list-address)) +maybe-add: ((1 list-address)) +cn0: checking oarg ((2 tagged-value-address)) +maybe-add: ((2 tagged-value-address)) +cn0: (((3 type-address)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((type offset))) nil nil +cn0: field-access type in 2tagged-value-addressderef of type tagged-value +cn0: new field; computing location +cn0: field location 0 +cn0: checking arg ((2 tagged-value-address) (deref)) +maybe-add: ((2 tagged-value-address) (deref)) +cn0: checking arg ((type offset)) +cn0: checking oarg ((3 type-address)) +maybe-add: ((3 type-address)) +cn0: (((3 type-address) (deref)) <- ((copy)) ((integer literal))) ((type 0)) ((type t)) +cn0: checking arg ((integer literal)) +cn0: checking oarg ((3 type-address) (deref)) +maybe-add: ((3 type-address) (deref)) +cn0: (((4 location)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((payload offset))) ((type 0)) ((type t)) +cn0: field-access payload in 2tagged-value-addressderef of type tagged-value +cn0: new field; computing location +cn0: field location 1 +cn0: checking arg ((2 tagged-value-address) (deref)) +maybe-add: ((2 tagged-value-address) (deref)) +cn0: checking arg ((payload offset)) +cn0: checking oarg ((4 location)) +maybe-add: ((4 location)) +cn0: (((4 location) (deref)) <- ((copy)) ((34 literal))) ((payload 1) (type 0)) ((payload t) (type t)) +cn0: checking arg ((34 literal)) +cn0: checking oarg ((4 location) (deref)) +maybe-add: ((4 location) (deref)) +cn0: (((5 list-address-address)) <- ((get-address)) ((1 list-address) (deref)) ((cdr offset))) ((payload 1) (type 0)) ((payload t) (type t)) +cn0: field-access cdr in 1list-addressderef of type list +cn0: new field; computing location +cn0: field location 1 +cn0: checking arg ((1 list-address) (deref)) +maybe-add: ((1 list-address) (deref)) +cn0: checking arg ((cdr offset)) +cn0: checking oarg ((5 list-address-address)) +maybe-add: ((5 list-address-address)) +cn0: (((5 list-address-address) (deref)) <- ((new)) ((list literal))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: checking arg ((list literal)) +cn0: checking oarg ((5 list-address-address) (deref)) +maybe-add: ((5 list-address-address) (deref)) +cn0: (((6 list-address)) <- ((copy)) ((5 list-address-address) (deref))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: checking arg ((5 list-address-address) (deref)) +maybe-add: ((5 list-address-address) (deref)) +cn0: checking oarg ((6 list-address)) +maybe-add: ((6 list-address)) +cn0: (((7 tagged-value-address)) <- ((list-value-address)) ((6 list-address))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: checking arg ((6 list-address)) +maybe-add: ((6 list-address)) +cn0: checking oarg ((7 tagged-value-address)) +maybe-add: ((7 tagged-value-address)) +cn0: (((8 type-address)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((type offset))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: field-access type in 7tagged-value-addressderef of type tagged-value +cn0: checking arg ((7 tagged-value-address) (deref)) +maybe-add: ((7 tagged-value-address) (deref)) +cn0: checking arg ((type offset)) +cn0: checking oarg ((8 type-address)) +maybe-add: ((8 type-address)) +cn0: (((8 type-address) (deref)) <- ((copy)) ((boolean literal))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: checking arg ((boolean literal)) +cn0: checking oarg ((8 type-address) (deref)) +maybe-add: ((8 type-address) (deref)) +cn0: (((9 location)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((payload offset))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: field-access payload in 7tagged-value-addressderef of type tagged-value +cn0: checking arg ((7 tagged-value-address) (deref)) +maybe-add: ((7 tagged-value-address) (deref)) +cn0: checking arg ((payload offset)) +cn0: checking oarg ((9 location)) +maybe-add: ((9 location)) +cn0: (((9 location) (deref)) <- ((copy)) ((t literal))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: checking arg ((t literal)) +cn0: checking oarg ((9 location) (deref)) +maybe-add: ((9 location) (deref)) +cn0: (((10 list-address)) <- ((get)) ((6 list-address) (deref)) ((1 offset))) ((cdr 1) (payload 1) (type 0)) ((cdr t) (payload t) (type t)) +cn0: field-access 1 in 6list-addressderef of type list +cn0: checking arg ((6 list-address) (deref)) +maybe-add: ((6 list-address) (deref)) +cn0: checking arg ((1 offset)) +cn0: checking oarg ((10 list-address)) +maybe-add: ((10 list-address)) +cn1: (((1 list-address)) <- ((new)) ((list literal))) +cn1: (((2 tagged-value-address)) <- ((list-value-address)) ((1 list-address))) +cn1: (((3 type-address)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((0 offset))) +cn1: (((3 type-address) (deref)) <- ((copy)) ((integer literal))) +cn1: (((4 location)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((1 offset))) +cn1: (((4 location) (deref)) <- ((copy)) ((34 literal))) +cn1: (((5 list-address-address)) <- ((get-address)) ((1 list-address) (deref)) ((1 offset))) +cn1: (((5 list-address-address) (deref)) <- ((new)) ((list literal))) +cn1: (((6 list-address)) <- ((copy)) ((5 list-address-address) (deref))) +cn1: (((7 tagged-value-address)) <- ((list-value-address)) ((6 list-address))) +cn1: (((8 type-address)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((0 offset))) +cn1: (((8 type-address) (deref)) <- ((copy)) ((boolean literal))) +cn1: (((9 location)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((1 offset))) +cn1: (((9 location) (deref)) <- ((copy)) ((t literal))) +cn1: (((10 list-address)) <- ((get)) ((6 list-address) (deref)) ((1 offset))) +schedule: main +run: main 0: (((1 list-address)) <- ((new)) ((list literal))) +run: main 0: 1000 => ((1 list-address)) +mem: ((1 list-address)): 1 <= 1000 +run: main 1: (((2 tagged-value-address)) <- ((list-value-address)) ((1 list-address))) +mem: ((1 list-address)) => 1000 +run: list-value-address/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) +run: list-value-address/main 0: 1003 => ((default-space space-address)) +run: list-value-address/main 1: (((1 list-address)) <- ((next-input))) +arg: nil 0 (1000) +run: list-value-address/main 1: 1000 => ((1 list-address)) +mem: ((1 list-address)): 1005 <= 1000 +run: list-value-address/main 2: (((2 tagged-value-address)) <- ((get-address)) ((1 list-address) (deref)) ((0 offset))) +run: list-value-address/main 2: 1000 => ((2 tagged-value-address)) +mem: ((2 tagged-value-address)): 1006 <= 1000 +run: list-value-address/main 3: (((reply)) ((2 tagged-value-address))) +mem: ((2 tagged-value-address)) => 1000 +run: main 1: 1000 => ((2 tagged-value-address)) +mem: ((2 tagged-value-address)): 2 <= 1000 +run: main 2: (((3 type-address)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((0 offset))) +run: main 2: 1000 => ((3 type-address)) +mem: ((3 type-address)): 3 <= 1000 +run: main 3: (((3 type-address) (deref)) <- ((copy)) ((integer literal))) +run: main 3: integer => ((3 type-address) (deref)) +mem: ((3 type-address) (deref)): 1000 <= integer +run: main 4: (((4 location)) <- ((get-address)) ((2 tagged-value-address) (deref)) ((1 offset))) +run: main 4: 1001 => ((4 location)) +mem: ((4 location)): 4 <= 1001 +run: main 5: (((4 location) (deref)) <- ((copy)) ((34 literal))) +run: main 5: 34 => ((4 location) (deref)) +mem: ((4 location) (deref)): 1001 <= 34 +run: main 6: (((5 list-address-address)) <- ((get-address)) ((1 list-address) (deref)) ((1 offset))) +run: main 6: 1002 => ((5 list-address-address)) +mem: ((5 list-address-address)): 5 <= 1002 +run: main 7: (((5 list-address-address) (deref)) <- ((new)) ((list literal))) +run: main 7: 1034 => ((5 list-address-address) (deref)) +mem: ((5 list-address-address) (deref)): 1002 <= 1034 +run: main 8: (((6 list-address)) <- ((copy)) ((5 list-address-address) (deref))) +mem: ((5 list-address-address) (deref)) => 1034 +run: main 8: 1034 => ((6 list-address)) +mem: ((6 list-address)): 6 <= 1034 +run: main 9: (((7 tagged-value-address)) <- ((list-value-address)) ((6 list-address))) +mem: ((6 list-address)) => 1034 +run: list-value-address/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) +run: list-value-address/main 0: 1037 => ((default-space space-address)) +run: list-value-address/main 1: (((1 list-address)) <- ((next-input))) +arg: nil 0 (1034) +run: list-value-address/main 1: 1034 => ((1 list-address)) +mem: ((1 list-address)): 1039 <= 1034 +run: list-value-address/main 2: (((2 tagged-value-address)) <- ((get-address)) ((1 list-address) (deref)) ((0 offset))) +run: list-value-address/main 2: 1034 => ((2 tagged-value-address)) +mem: ((2 tagged-value-address)): 1040 <= 1034 +run: list-value-address/main 3: (((reply)) ((2 tagged-value-address))) +mem: ((2 tagged-value-address)) => 1034 +run: main 9: 1034 => ((7 tagged-value-address)) +mem: ((7 tagged-value-address)): 7 <= 1034 +run: main 10: (((8 type-address)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((0 offset))) +run: main 10: 1034 => ((8 type-address)) +mem: ((8 type-address)): 8 <= 1034 +run: main 11: (((8 type-address) (deref)) <- ((copy)) ((boolean literal))) +run: main 11: boolean => ((8 type-address) (deref)) +mem: ((8 type-address) (deref)): 1034 <= boolean +run: main 12: (((9 location)) <- ((get-address)) ((7 tagged-value-address) (deref)) ((1 offset))) +run: main 12: 1035 => ((9 location)) +mem: ((9 location)): 9 <= 1035 +run: main 13: (((9 location) (deref)) <- ((copy)) ((t literal))) +run: main 13: t => ((9 location) (deref)) +mem: ((9 location) (deref)): 1035 <= t +run: main 14: (((10 list-address)) <- ((get)) ((6 list-address) (deref)) ((1 offset))) +mem: ((1036 list-address) (raw)) => nil +run: main 14: nil => ((10 list-address)) +mem: ((10 list-address)): 10 <= nil +schedule: done with routine nil +===: test2 +c{0: 0 (((10 list-address)) <- ((list-next)) ((1 list-address))) -- nil +c{1: 0 ✓ (((10 list-address)) <- ((list-next)) ((1 list-address))) +cn0: convert-names in test2 +cn0: (((10 list-address)) <- ((list-next)) ((1 list-address))) nil nil +cn0: checking arg ((1 list-address)) +maybe-add: ((1 list-address)) +cn0: checking oarg ((10 list-address)) +maybe-add: ((10 list-address)) +cn1: (((10 list-address)) <- ((list-next)) ((1 list-address))) +schedule: test2 +run: test2 0: (((10 list-address)) <- ((list-next)) ((1 list-address))) +mem: ((1 list-address)) => 1000 +run: list-next/test2 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) +run: list-next/test2 0: 101000 => ((default-space space-address)) +run: list-next/test2 1: (((1 list-address)) <- ((next-input))) +arg: nil 0 (1000) +run: list-next/test2 1: 1000 => ((1 list-address)) +mem: ((1 list-address)): 101002 <= 1000 +run: list-next/test2 2: (((2 list-address)) <- ((get)) ((1 list-address) (deref)) ((1 offset))) +mem: ((1002 list-address) (raw)) => 1034 +run: list-next/test2 2: 1034 => ((2 list-address)) +mem: ((2 list-address)): 101003 <= 1034 +run: list-next/test2 3: (((reply)) ((2 list-address))) +mem: ((2 list-address)) => 1034 +run: test2 0: 1034 => ((10 list-address)) +mem: ((10 list-address)): 10 <= 1034 +schedule: done with routine nil -- cgit 1.4.1-2-gfad0