+ support for a reference without base or symbol, if the offset is 0

(for @ptrtype(0)^.field expressions)

git-svn-id: trunk@32777 -
This commit is contained in:
Jonas Maebe 2015-12-28 15:06:15 +00:00
parent b4fe4789d6
commit c452e70f74

View File

@ -199,7 +199,7 @@ implementation
begin begin
result:=''; result:='';
if assigned(ref.relsymbol) or if assigned(ref.relsymbol) or
(assigned(ref.symbol) = (assigned(ref.symbol) and
(ref.base<>NR_NO)) or (ref.base<>NR_NO)) or
(ref.index<>NR_NO) or (ref.index<>NR_NO) or
(ref.offset<>0) then (ref.offset<>0) then
@ -215,13 +215,15 @@ implementation
result:=result+'index<>NR_NO, '; result:=result+'index<>NR_NO, ';
if ref.offset<>0 then if ref.offset<>0 then
result:=result+'offset='+tostr(ref.offset); result:=result+'offset='+tostr(ref.offset);
result:=result+')**' result:=result+')**';
// internalerror(2013060225); internalerror(2013060225);
end; end;
if ref.base<>NR_NO then if ref.base<>NR_NO then
result:=result+getregisterstring(ref.base) result:=result+getregisterstring(ref.base)
else if assigned(ref.symbol) then
result:=result+LlvmAsmSymName(ref.symbol)
else else
result:=result+LlvmAsmSymName(ref.symbol); result:=result+'null';
if withalign then if withalign then
result:=result+getreferencealignstring(ref); result:=result+getreferencealignstring(ref);
end; end;