mirror of
https://github.com/notwa/lips
synced 2024-05-18 16:33:22 -07:00
fix labels in word directives
This commit is contained in:
parent
4b8af13e78
commit
fdb4b351a6
|
@ -85,7 +85,8 @@ function Dumper:add_directive(fn, line, name, a, b)
|
||||||
self:add_bytes(line, b1, b0)
|
self:add_bytes(line, b1, b0)
|
||||||
elseif name == 'WORD' then
|
elseif name == 'WORD' then
|
||||||
if type(a) == 'string' then
|
if type(a) == 'string' then
|
||||||
local t = {line=line, kind='label', name=a}
|
t.kind = 'label'
|
||||||
|
t.name = a
|
||||||
insert(self.commands, t)
|
insert(self.commands, t)
|
||||||
self:advance(4)
|
self:advance(4)
|
||||||
else
|
else
|
||||||
|
@ -270,7 +271,7 @@ function Dumper:dump()
|
||||||
self.pos = self.pos + t.skip
|
self.pos = self.pos + t.skip
|
||||||
end
|
end
|
||||||
elseif t.kind == 'label' then
|
elseif t.kind == 'label' then
|
||||||
local val = self:desym{'LABELSYM', t.name}
|
local val = self:desym{tt='LABELSYM', tok=t.name}
|
||||||
val = (val % 0x80000000) + 0x80000000
|
val = (val % 0x80000000) + 0x80000000
|
||||||
local b0 = bitrange(val, 0, 7)
|
local b0 = bitrange(val, 0, 7)
|
||||||
local b1 = bitrange(val, 8, 15)
|
local b1 = bitrange(val, 8, 15)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user