about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2019-07-11 21:23:17 -0700
committerKartik Agaram <vc@akkartik.com>2019-07-11 21:24:09 -0700
commitf57a458e7b4fc0eb30f8dbadb9d20ecf10e4a1bb (patch)
tree82c1f54248bb0d9d48e9964947b20789e34f895e
parent3a3e7a90d75ceaa6c7e7e5c6472baef13e299332 (diff)
downloadmu-f57a458e7b4fc0eb30f8dbadb9d20ecf10e4a1bb.tar.gz
.
-rw-r--r--subx/apps/survey.subx5
1 files changed, 3 insertions, 2 deletions
diff --git a/subx/apps/survey.subx b/subx/apps/survey.subx
index 31b98e6a..04056762 100644
--- a/subx/apps/survey.subx
+++ b/subx/apps/survey.subx
@@ -354,6 +354,7 @@ compute-offsets:  # in : (address buffered-file), segments : (address stream {st
     #       if slice-starts-with?(word-slice, "#")  # comment
     #         continue
     #       if is-label?(word-slice)
+    #         strip trailing ':' from word-slice
     #         x : (address label-info) = get-or-insert(labels, name)
     #         x->segment-offset = segment-offset
     #         trace("label '", word-slice, "' is in segment '", curr-segment-name, "'")
@@ -465,8 +466,8 @@ $compute-offsets:label:
     # . if (EAX == 0) goto next check
     3d/compare-EAX-and  0/imm32
     74/jump-if-equal  $compute-offsets:segment/disp8
-    # word-slice->end--
-    ff          1/subop/dec        1/mod/*+disp8    2/rm32/EDX    .           .             .           .           4/disp8         .                 # decrement *(EDX+4)
+    # strip trailing ':' from word-slice
+    ff          1/subop/decrement   1/mod/*+disp8   2/rm32/EDX    .           .             .           .           4/disp8         .                 # decrement *(EDX+4)
     # x/EAX = get-or-insert-slice(labels, word-slice)
     # . . push args
     68/push  0x10/imm32/row-size
re>dc5a0acf ^
20d6be52 ^

52e3ea8a ^
20d6be52 ^
52e3ea8a ^
20d6be52 ^





52e3ea8a ^
20d6be52 ^




























3350c34a ^
20d6be52 ^









dd60caa3 ^
20d6be52 ^










dd60caa3 ^
20d6be52 ^





dd60caa3 ^


















20d6be52 ^



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108