mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-11-01 13:29:32 +01:00
+ att_reg2str -> gas_reg2str
This commit is contained in:
parent
f3bfe280a8
commit
39c86c857d
@ -421,7 +421,7 @@ interface
|
|||||||
ait_regalloc :
|
ait_regalloc :
|
||||||
begin
|
begin
|
||||||
if (cs_asm_regalloc in aktglobalswitches) then
|
if (cs_asm_regalloc in aktglobalswitches) then
|
||||||
AsmWriteLn(target_asm.comment+'Register '+att_reg2str[tairegalloc(hp).reg]+
|
AsmWriteLn(target_asm.comment+'Register '+gas_reg2str[tairegalloc(hp).reg]+
|
||||||
allocstr[tairegalloc(hp).allocation]);
|
allocstr[tairegalloc(hp).allocation]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -883,7 +883,10 @@ initialization
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.14 2002-04-04 18:27:37 carl
|
Revision 1.15 2002-04-14 16:58:41 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.14 2002/04/04 18:27:37 carl
|
||||||
+ added wdosx support (patch from Pavel)
|
+ added wdosx support (patch from Pavel)
|
||||||
|
|
||||||
Revision 1.13 2002/04/02 17:11:33 peter
|
Revision 1.13 2002/04/02 17:11:33 peter
|
||||||
|
|||||||
@ -399,7 +399,7 @@ const
|
|||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
{$ifdef ATTREG}
|
{$ifdef ATTREG}
|
||||||
att_reg2str : reg2strtable = ('',
|
gas_reg2str : reg2strtable = ('',
|
||||||
'%eax','%ecx','%edx','%ebx','%esp','%ebp','%esi','%edi',
|
'%eax','%ecx','%edx','%ebx','%esp','%ebp','%esi','%edi',
|
||||||
'%ax','%cx','%dx','%bx','%sp','%bp','%si','%di',
|
'%ax','%cx','%dx','%bx','%sp','%bp','%si','%di',
|
||||||
'%al','%cl','%dl','%bl','%ah','%ch','%bh','%dh',
|
'%al','%cl','%dl','%bl','%ah','%ch','%bh','%dh',
|
||||||
@ -930,7 +930,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.12 2002-04-02 17:11:34 peter
|
Revision 1.13 2002-04-14 16:59:41 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.12 2002/04/02 17:11:34 peter
|
||||||
* tlocation,treference update
|
* tlocation,treference update
|
||||||
* LOC_CONSTANT added for better constant handling
|
* LOC_CONSTANT added for better constant handling
|
||||||
* secondadd splitted in multiple routines
|
* secondadd splitted in multiple routines
|
||||||
|
|||||||
@ -69,6 +69,7 @@ implementation
|
|||||||
**************************************}
|
**************************************}
|
||||||
|
|
||||||
{$ifndef NOAG386ATT}
|
{$ifndef NOAG386ATT}
|
||||||
|
,aggas
|
||||||
,ag386att
|
,ag386att
|
||||||
{$endif}
|
{$endif}
|
||||||
{$ifndef NOAG386NSM}
|
{$ifndef NOAG386NSM}
|
||||||
@ -85,7 +86,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.4 2002-04-04 18:31:37 carl
|
Revision 1.5 2002-04-14 17:00:49 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.4 2002/04/04 18:31:37 carl
|
||||||
+ added wdosx support (patch from Pavel)
|
+ added wdosx support (patch from Pavel)
|
||||||
|
|
||||||
Revision 1.3 2002/03/28 20:48:04 carl
|
Revision 1.3 2002/03/28 20:48:04 carl
|
||||||
|
|||||||
@ -574,7 +574,7 @@ begin
|
|||||||
exclude(regsUsable,regCounter);
|
exclude(regsUsable,regCounter);
|
||||||
{$ifdef alignregdebug}
|
{$ifdef alignregdebug}
|
||||||
temp := Tai_asm_comment.Create(strpnew(
|
temp := Tai_asm_comment.Create(strpnew(
|
||||||
att_reg2str[regCounter]+' removed')));
|
gas_reg2str[regCounter]+' removed')));
|
||||||
temp.next := prev.next;
|
temp.next := prev.next;
|
||||||
temp.previous := prev;
|
temp.previous := prev;
|
||||||
prev.next := temp;
|
prev.next := temp;
|
||||||
@ -624,7 +624,7 @@ begin
|
|||||||
exclude(regsUsable,regCounter);
|
exclude(regsUsable,regCounter);
|
||||||
{$ifdef alignregdebug}
|
{$ifdef alignregdebug}
|
||||||
temp := Tai_asm_comment.Create(strpnew(
|
temp := Tai_asm_comment.Create(strpnew(
|
||||||
att_reg2str[regCounter]+' removed')));
|
gas_reg2str[regCounter]+' removed')));
|
||||||
temp.next := next.next;
|
temp.next := next.next;
|
||||||
temp.previous := next;
|
temp.previous := next;
|
||||||
next.next := temp;
|
next.next := temp;
|
||||||
@ -667,7 +667,7 @@ begin
|
|||||||
break
|
break
|
||||||
end;
|
end;
|
||||||
{$ifdef alignregdebug}
|
{$ifdef alignregdebug}
|
||||||
next := Tai_asm_comment.Create(strpnew(att_reg2str[lastRemoved]+
|
next := Tai_asm_comment.Create(strpnew(gas_reg2str[lastRemoved]+
|
||||||
' chosen as alignment register')));
|
' chosen as alignment register')));
|
||||||
next.next := p.next;
|
next.next := p.next;
|
||||||
next.previous := p;
|
next.previous := p;
|
||||||
@ -703,7 +703,7 @@ begin
|
|||||||
{$ifdef replaceregdebug}
|
{$ifdef replaceregdebug}
|
||||||
l := random(1000);
|
l := random(1000);
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'cleared '+att_reg2str[reg]+' from here... '+tostr(l))));
|
'cleared '+gas_reg2str[reg]+' from here... '+tostr(l))));
|
||||||
hp.next := p;
|
hp.next := p;
|
||||||
hp.previous := p.previous;
|
hp.previous := p.previous;
|
||||||
p.previous := hp;
|
p.previous := hp;
|
||||||
@ -738,7 +738,7 @@ begin
|
|||||||
if assigned(p) then
|
if assigned(p) then
|
||||||
begin
|
begin
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'cleared '+att_reg2str[reg]+' till here... '+tostr(l))));
|
'cleared '+gas_reg2str[reg]+' till here... '+tostr(l))));
|
||||||
hp.next := p;
|
hp.next := p;
|
||||||
hp.previous := p.previous;
|
hp.previous := p.previous;
|
||||||
p.previous := hp;
|
p.previous := hp;
|
||||||
@ -759,7 +759,7 @@ begin
|
|||||||
{$ifdef replaceregdebug}
|
{$ifdef replaceregdebug}
|
||||||
l := random(1000);
|
l := random(1000);
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'restored '+att_reg2str[reg]+' with data from here... '+tostr(l))));
|
'restored '+gas_reg2str[reg]+' with data from here... '+tostr(l))));
|
||||||
hp.next := p;
|
hp.next := p;
|
||||||
hp.previous := p.previous;
|
hp.previous := p.previous;
|
||||||
p.previous := hp;
|
p.previous := hp;
|
||||||
@ -784,7 +784,7 @@ begin
|
|||||||
if assigned(p) then
|
if assigned(p) then
|
||||||
begin
|
begin
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'restored '+att_reg2str[reg]+' till here... '+tostr(l))));
|
'restored '+gas_reg2str[reg]+' till here... '+tostr(l))));
|
||||||
hp.next := p;
|
hp.next := p;
|
||||||
hp.previous := p.previous;
|
hp.previous := p.previous;
|
||||||
p.previous := hp;
|
p.previous := hp;
|
||||||
@ -1171,7 +1171,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
{$ifdef replaceregdebug}
|
{$ifdef replaceregdebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'replacing '+att_reg2str[newreg]+' with '+att_reg2str[orgreg]+
|
'replacing '+gas_reg2str[newreg]+' with '+gas_reg2str[orgreg]+
|
||||||
' from here...')));
|
' from here...')));
|
||||||
hp.next := p;
|
hp.next := p;
|
||||||
hp.previous := p.previous;
|
hp.previous := p.previous;
|
||||||
@ -1180,7 +1180,7 @@ begin
|
|||||||
hp.previous^.next := hp;
|
hp.previous^.next := hp;
|
||||||
|
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'replaced '+att_reg2str[newreg]+' with '+att_reg2str[orgreg]+
|
'replaced '+gas_reg2str[newreg]+' with '+gas_reg2str[orgreg]+
|
||||||
' till here')));
|
' till here')));
|
||||||
hp.next := endp.next;
|
hp.next := endp.next;
|
||||||
hp.previous := endp;
|
hp.previous := endp;
|
||||||
@ -1243,7 +1243,7 @@ begin
|
|||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'replacing '+att_reg2str[newreg]+' with '+att_reg2str[orgreg]+
|
'replacing '+gas_reg2str[newreg]+' with '+gas_reg2str[orgreg]+
|
||||||
' from here...')));
|
' from here...')));
|
||||||
hp.previous := p.previous;
|
hp.previous := p.previous;
|
||||||
hp.next := p;
|
hp.next := p;
|
||||||
@ -1252,7 +1252,7 @@ begin
|
|||||||
hp.previous^.next := hp;
|
hp.previous^.next := hp;
|
||||||
|
|
||||||
hp := Tai_asm_comment.Create(strpnew(
|
hp := Tai_asm_comment.Create(strpnew(
|
||||||
'replacing '+att_reg2str[newreg]+' with '+att_reg2str[orgreg]+
|
'replacing '+gas_reg2str[newreg]+' with '+gas_reg2str[orgreg]+
|
||||||
' failed here')));
|
' failed here')));
|
||||||
hp.next := endp.next;
|
hp.next := endp.next;
|
||||||
hp.previous := endp;
|
hp.previous := endp;
|
||||||
@ -1460,7 +1460,7 @@ Begin
|
|||||||
begin
|
begin
|
||||||
{$ifdef csdebug}
|
{$ifdef csdebug}
|
||||||
hp5 := Tai_asm_comment.Create(strpnew(
|
hp5 := Tai_asm_comment.Create(strpnew(
|
||||||
'cse checking '+att_reg2str[Reg32(Taicpu(p).oper[1].reg)])));
|
'cse checking '+gas_reg2str[Reg32(Taicpu(p).oper[1].reg)])));
|
||||||
insertLLItem(asml,p,p.next,hp5);
|
insertLLItem(asml,p,p.next,hp5);
|
||||||
{$endif csdebug}
|
{$endif csdebug}
|
||||||
If CheckSequence(p,prevSeq,Taicpu(p).oper[1].reg, Cnt, RegInfo, findPrevSeqs) And
|
If CheckSequence(p,prevSeq,Taicpu(p).oper[1].reg, Cnt, RegInfo, findPrevSeqs) And
|
||||||
@ -1542,8 +1542,8 @@ Begin
|
|||||||
For RegCounter := R_EAX To R_EDI Do
|
For RegCounter := R_EAX To R_EDI Do
|
||||||
If (RegCounter in RegInfo.RegsLoadedForRef) Then
|
If (RegCounter in RegInfo.RegsLoadedForRef) Then
|
||||||
Begin
|
Begin
|
||||||
hp5 := Tai_asm_comment.Create(strpnew('New: '+att_reg2str[RegCounter]+', Old: '+
|
hp5 := Tai_asm_comment.Create(strpnew('New: '+gas_reg2str[RegCounter]+', Old: '+
|
||||||
att_reg2str[RegInfo.New2OldReg[RegCounter]])));
|
gas_reg2str[RegInfo.New2OldReg[RegCounter]])));
|
||||||
InsertLLItem(AsmL, Tai(hp2.previous), hp2, hp5);
|
InsertLLItem(AsmL, Tai(hp2.previous), hp2, hp5);
|
||||||
End;
|
End;
|
||||||
{$EndIf CSDebug}
|
{$EndIf CSDebug}
|
||||||
@ -1983,7 +1983,10 @@ End.
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.27 2002-04-04 19:06:10 peter
|
Revision 1.28 2002-04-14 17:00:49 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.27 2002/04/04 19:06:10 peter
|
||||||
* removed unused units
|
* removed unused units
|
||||||
* use tlocation.size in cg.a_*loc*() routines
|
* use tlocation.size in cg.a_*loc*() routines
|
||||||
|
|
||||||
|
|||||||
@ -1171,10 +1171,10 @@ Begin
|
|||||||
firstRemovedWasAlloc := false;
|
firstRemovedWasAlloc := false;
|
||||||
first := true;
|
first := true;
|
||||||
{$ifdef allocregdebug}
|
{$ifdef allocregdebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('allocating '+att_reg2str[reg]+
|
hp := Tai_asm_comment.Create(strpnew('allocating '+gas_reg2str[reg]+
|
||||||
' from here...')));
|
' from here...')));
|
||||||
insertllitem(asml,p1.previous,p1,hp);
|
insertllitem(asml,p1.previous,p1,hp);
|
||||||
hp := Tai_asm_comment.Create(strpnew('allocated '+att_reg2str[reg]+
|
hp := Tai_asm_comment.Create(strpnew('allocated '+gas_reg2str[reg]+
|
||||||
' till here...')));
|
' till here...')));
|
||||||
insertllitem(asml,p2,p1.next,hp);
|
insertllitem(asml,p2,p1.next,hp);
|
||||||
{$endif allocregdebug}
|
{$endif allocregdebug}
|
||||||
@ -1525,7 +1525,7 @@ Begin {checks whether two Taicpu instructions are equal}
|
|||||||
Begin
|
Begin
|
||||||
RegInfo.RegsLoadedForRef := RegInfo.RegsLoadedForRef + [Base];
|
RegInfo.RegsLoadedForRef := RegInfo.RegsLoadedForRef + [Base];
|
||||||
{$ifdef csdebug}
|
{$ifdef csdebug}
|
||||||
Writeln(att_reg2str[base], ' added');
|
Writeln(gas_reg2str[base], ' added');
|
||||||
{$endif csdebug}
|
{$endif csdebug}
|
||||||
end;
|
end;
|
||||||
If Not(Index in [procinfo^.FramePointer,
|
If Not(Index in [procinfo^.FramePointer,
|
||||||
@ -1533,7 +1533,7 @@ Begin {checks whether two Taicpu instructions are equal}
|
|||||||
Begin
|
Begin
|
||||||
RegInfo.RegsLoadedForRef := RegInfo.RegsLoadedForRef + [Index];
|
RegInfo.RegsLoadedForRef := RegInfo.RegsLoadedForRef + [Index];
|
||||||
{$ifdef csdebug}
|
{$ifdef csdebug}
|
||||||
Writeln(att_reg2str[index], ' added');
|
Writeln(gas_reg2str[index], ' added');
|
||||||
{$endif csdebug}
|
{$endif csdebug}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1544,7 +1544,7 @@ Begin {checks whether two Taicpu instructions are equal}
|
|||||||
RegInfo.RegsLoadedForRef := RegInfo.RegsLoadedForRef -
|
RegInfo.RegsLoadedForRef := RegInfo.RegsLoadedForRef -
|
||||||
[Reg32(Taicpu(p2).oper[1].reg)];
|
[Reg32(Taicpu(p2).oper[1].reg)];
|
||||||
{$ifdef csdebug}
|
{$ifdef csdebug}
|
||||||
Writeln(att_reg2str[Reg32(Taicpu(p2).oper[1].reg)], ' removed');
|
Writeln(gas_reg2str[Reg32(Taicpu(p2).oper[1].reg)], ' removed');
|
||||||
{$endif csdebug}
|
{$endif csdebug}
|
||||||
end;
|
end;
|
||||||
InstructionsEquivalent :=
|
InstructionsEquivalent :=
|
||||||
@ -1891,7 +1891,7 @@ Begin
|
|||||||
top_reg:
|
top_reg:
|
||||||
begin
|
begin
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying '+att_reg2str[o.reg]));
|
hp := Tai_asm_comment.Create(strpnew('destroying '+gas_reg2str[o.reg]));
|
||||||
hp.next := Taiobj^.next;
|
hp.next := Taiobj^.next;
|
||||||
hp.previous := Taiobj;
|
hp.previous := Taiobj;
|
||||||
Taiobj^.next := hp;
|
Taiobj^.next := hp;
|
||||||
@ -1940,7 +1940,7 @@ Begin
|
|||||||
invalidateDependingRegs(p.optinfo,reg);
|
invalidateDependingRegs(p.optinfo,reg);
|
||||||
pTaiprop(p.optinfo)^.regs[reg].memwrite := nil;
|
pTaiprop(p.optinfo)^.regs[reg].memwrite := nil;
|
||||||
{$ifdef StateDebug}
|
{$ifdef StateDebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew(att_reg2str[reg]+': '+tostr(PTaiProp(p.optinfo)^.Regs[reg].WState)
|
hp := Tai_asm_comment.Create(strpnew(gas_reg2str[reg]+': '+tostr(PTaiProp(p.optinfo)^.Regs[reg].WState)
|
||||||
+ ' -- ' + tostr(PTaiProp(p.optinfo)^.Regs[reg].nrofmods))));
|
+ ' -- ' + tostr(PTaiProp(p.optinfo)^.Regs[reg].nrofmods))));
|
||||||
InsertLLItem(AsmL, p, p.next, hp);
|
InsertLLItem(AsmL, p, p.next, hp);
|
||||||
{$endif StateDebug}
|
{$endif StateDebug}
|
||||||
@ -1948,12 +1948,12 @@ Begin
|
|||||||
Else
|
Else
|
||||||
Begin
|
Begin
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying '+att_reg2str[reg]));
|
hp := Tai_asm_comment.Create(strpnew('destroying '+gas_reg2str[reg]));
|
||||||
insertllitem(asml,p,p.next,hp);
|
insertllitem(asml,p,p.next,hp);
|
||||||
{$endif statedebug}
|
{$endif statedebug}
|
||||||
DestroyReg(PTaiProp(p.optinfo), Reg, true);
|
DestroyReg(PTaiProp(p.optinfo), Reg, true);
|
||||||
{$ifdef StateDebug}
|
{$ifdef StateDebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew(att_reg2str[reg]+': '+tostr(PTaiProp(p.optinfo)^.Regs[reg].WState)));
|
hp := Tai_asm_comment.Create(strpnew(gas_reg2str[reg]+': '+tostr(PTaiProp(p.optinfo)^.Regs[reg].WState)));
|
||||||
InsertLLItem(AsmL, p, p.next, hp);
|
InsertLLItem(AsmL, p, p.next, hp);
|
||||||
{$endif StateDebug}
|
{$endif StateDebug}
|
||||||
End
|
End
|
||||||
@ -2242,7 +2242,7 @@ Begin
|
|||||||
Begin
|
Begin
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying '+
|
hp := Tai_asm_comment.Create(strpnew('destroying '+
|
||||||
att_reg2str[Taicpu(p).oper[1].reg])));
|
gas_reg2str[Taicpu(p).oper[1].reg])));
|
||||||
insertllitem(asml,p,p.next,hp);
|
insertllitem(asml,p,p.next,hp);
|
||||||
{$endif statedebug}
|
{$endif statedebug}
|
||||||
|
|
||||||
@ -2270,7 +2270,7 @@ Begin
|
|||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying & initing '+att_reg2str[tmpreg]));
|
hp := Tai_asm_comment.Create(strpnew('destroying & initing '+gas_reg2str[tmpreg]));
|
||||||
insertllitem(asml,p,p.next,hp);
|
insertllitem(asml,p,p.next,hp);
|
||||||
{$endif statedebug}
|
{$endif statedebug}
|
||||||
destroyReg(curprop, tmpreg, true);
|
destroyReg(curprop, tmpreg, true);
|
||||||
@ -2283,7 +2283,7 @@ Begin
|
|||||||
end
|
end
|
||||||
end;
|
end;
|
||||||
{$ifdef StateDebug}
|
{$ifdef StateDebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew(att_reg2str[TmpReg]+': '+tostr(CurProp^.regs[TmpReg].WState)));
|
hp := Tai_asm_comment.Create(strpnew(gas_reg2str[TmpReg]+': '+tostr(CurProp^.regs[TmpReg].WState)));
|
||||||
InsertLLItem(AsmL, p, p.next, hp);
|
InsertLLItem(AsmL, p, p.next, hp);
|
||||||
{$endif StateDebug}
|
{$endif StateDebug}
|
||||||
End;
|
End;
|
||||||
@ -2308,7 +2308,7 @@ Begin
|
|||||||
Begin
|
Begin
|
||||||
TmpReg := Reg32(Taicpu(p).oper[1].reg);
|
TmpReg := Reg32(Taicpu(p).oper[1].reg);
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying '+att_reg2str[tmpreg]));
|
hp := Tai_asm_comment.Create(strpnew('destroying '+gas_reg2str[tmpreg]));
|
||||||
insertllitem(asml,p,p.next,hp);
|
insertllitem(asml,p,p.next,hp);
|
||||||
{$endif statedebug}
|
{$endif statedebug}
|
||||||
With CurProp^.regs[TmpReg] Do
|
With CurProp^.regs[TmpReg] Do
|
||||||
@ -2378,7 +2378,7 @@ Begin
|
|||||||
begin
|
begin
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying & initing'+
|
hp := Tai_asm_comment.Create(strpnew('destroying & initing'+
|
||||||
att_reg2str[Taicpu(p).oper[1].reg])));
|
gas_reg2str[Taicpu(p).oper[1].reg])));
|
||||||
insertllitem(asml,p,p.next,hp);
|
insertllitem(asml,p,p.next,hp);
|
||||||
{$endif statedebug}
|
{$endif statedebug}
|
||||||
destroyreg(curprop,Taicpu(p).oper[1].reg,true);
|
destroyreg(curprop,Taicpu(p).oper[1].reg,true);
|
||||||
@ -2404,7 +2404,7 @@ Begin
|
|||||||
ReadReg(CurProp, TCh2Reg(InstrProp.Ch[Cnt]));
|
ReadReg(CurProp, TCh2Reg(InstrProp.Ch[Cnt]));
|
||||||
{$ifdef statedebug}
|
{$ifdef statedebug}
|
||||||
hp := Tai_asm_comment.Create(strpnew('destroying '+
|
hp := Tai_asm_comment.Create(strpnew('destroying '+
|
||||||
att_reg2str[TCh2Reg(InstrProp.Ch[Cnt])])));
|
gas_reg2str[TCh2Reg(InstrProp.Ch[Cnt])])));
|
||||||
insertllitem(asml,p,p.next,hp);
|
insertllitem(asml,p,p.next,hp);
|
||||||
{$endif statedebug}
|
{$endif statedebug}
|
||||||
DestroyReg(CurProp, TCh2Reg(InstrProp.Ch[Cnt]), true);
|
DestroyReg(CurProp, TCh2Reg(InstrProp.Ch[Cnt]), true);
|
||||||
@ -2586,7 +2586,10 @@ End.
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.28 2002-04-02 17:11:34 peter
|
Revision 1.29 2002-04-14 17:00:49 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.28 2002/04/02 17:11:34 peter
|
||||||
* tlocation,treference update
|
* tlocation,treference update
|
||||||
* LOC_CONSTANT added for better constant handling
|
* LOC_CONSTANT added for better constant handling
|
||||||
* secondadd splitted in multiple routines
|
* secondadd splitted in multiple routines
|
||||||
|
|||||||
@ -121,7 +121,7 @@ Begin
|
|||||||
{ registers }
|
{ registers }
|
||||||
new(iasmregs);
|
new(iasmregs);
|
||||||
for j:=firstreg to lastreg do
|
for j:=firstreg to lastreg do
|
||||||
iasmregs^[j] := upper(att_reg2str[j]);
|
iasmregs^[j] := upper(gas_reg2str[j]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -2129,7 +2129,10 @@ finalization
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.19 2002-04-04 19:06:13 peter
|
Revision 1.20 2002-04-14 17:01:52 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.19 2002/04/04 19:06:13 peter
|
||||||
* removed unused units
|
* removed unused units
|
||||||
* use tlocation.size in cg.a_*loc*() routines
|
* use tlocation.size in cg.a_*loc*() routines
|
||||||
|
|
||||||
|
|||||||
@ -87,7 +87,7 @@ interface
|
|||||||
is_fpu(aktprocdef.rettype.def) then
|
is_fpu(aktprocdef.rettype.def) then
|
||||||
tfuncretsym(aktprocdef.funcretsym).funcretstate:=vs_assigned;
|
tfuncretsym(aktprocdef.funcretsym).funcretstate:=vs_assigned;
|
||||||
if (not is_void(aktprocdef.rettype.def)) then
|
if (not is_void(aktprocdef.rettype.def)) then
|
||||||
retstr:=upper(tostr(procinfo^.return_offset)+'('+att_reg2str[procinfo^.framepointer]+')')
|
retstr:=upper(tostr(procinfo^.return_offset)+'('+gas_reg2str[procinfo^.framepointer]+')')
|
||||||
else
|
else
|
||||||
retstr:='';
|
retstr:='';
|
||||||
c:=current_scanner.asmgetchar;
|
c:=current_scanner.asmgetchar;
|
||||||
@ -168,7 +168,7 @@ interface
|
|||||||
hs:=tvarsym(sym).mangledname
|
hs:=tvarsym(sym).mangledname
|
||||||
else
|
else
|
||||||
hs:='-'+tostr(tvarsym(sym).address)+
|
hs:='-'+tostr(tvarsym(sym).address)+
|
||||||
'('+att_reg2str[procinfo^.framepointer]+')';
|
'('+gas_reg2str[procinfo^.framepointer]+')';
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
{ call to local function }
|
{ call to local function }
|
||||||
@ -191,7 +191,7 @@ interface
|
|||||||
l:=tvarsym(sym).address;
|
l:=tvarsym(sym).address;
|
||||||
{ set offset }
|
{ set offset }
|
||||||
inc(l,aktprocdef.parast.address_fixup);
|
inc(l,aktprocdef.parast.address_fixup);
|
||||||
hs:=tostr(l)+'('+att_reg2str[procinfo^.framepointer]+')';
|
hs:=tostr(l)+'('+gas_reg2str[procinfo^.framepointer]+')';
|
||||||
if pos(',',s) > 0 then
|
if pos(',',s) > 0 then
|
||||||
tvarsym(sym).varstate:=vs_used;
|
tvarsym(sym).varstate:=vs_used;
|
||||||
end;
|
end;
|
||||||
@ -237,7 +237,7 @@ interface
|
|||||||
begin
|
begin
|
||||||
if assigned(procinfo^._class) then
|
if assigned(procinfo^._class) then
|
||||||
hs:=tostr(procinfo^.selfpointer_offset)+
|
hs:=tostr(procinfo^.selfpointer_offset)+
|
||||||
'('+att_reg2str[procinfo^.framepointer]+')'
|
'('+gas_reg2str[procinfo^.framepointer]+')'
|
||||||
else
|
else
|
||||||
Message(asmr_e_cannot_use_SELF_outside_a_method);
|
Message(asmr_e_cannot_use_SELF_outside_a_method);
|
||||||
end
|
end
|
||||||
@ -254,7 +254,7 @@ interface
|
|||||||
{ we do it: }
|
{ we do it: }
|
||||||
if lexlevel>normal_function_level then
|
if lexlevel>normal_function_level then
|
||||||
hs:=tostr(procinfo^.framepointer_offset)+
|
hs:=tostr(procinfo^.framepointer_offset)+
|
||||||
'('+att_reg2str[procinfo^.framepointer]+')'
|
'('+gas_reg2str[procinfo^.framepointer]+')'
|
||||||
else
|
else
|
||||||
Message(asmr_e_cannot_use_OLDEBP_outside_nested_procedure);
|
Message(asmr_e_cannot_use_OLDEBP_outside_nested_procedure);
|
||||||
end;
|
end;
|
||||||
@ -302,7 +302,10 @@ initialization
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.12 2001-11-02 22:58:11 peter
|
Revision 1.13 2002-04-14 17:01:52 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.12 2001/11/02 22:58:11 peter
|
||||||
* procsym definition rewrite
|
* procsym definition rewrite
|
||||||
|
|
||||||
Revision 1.11 2001/08/26 13:37:02 florian
|
Revision 1.11 2001/08/26 13:37:02 florian
|
||||||
|
|||||||
@ -959,7 +959,7 @@ begin
|
|||||||
write(', ')
|
write(', ')
|
||||||
else
|
else
|
||||||
first := false;
|
first := false;
|
||||||
write(att_reg2str[r])
|
write(gas_reg2str[r])
|
||||||
end;
|
end;
|
||||||
if (firstsavefpureg <> R_NO) then
|
if (firstsavefpureg <> R_NO) then
|
||||||
for r := firstsavefpureg to lastsavefpureg do
|
for r := firstsavefpureg to lastsavefpureg do
|
||||||
@ -969,7 +969,7 @@ begin
|
|||||||
write(', ')
|
write(', ')
|
||||||
else
|
else
|
||||||
first := false;
|
first := false;
|
||||||
write(att_reg2str[r])
|
write(gas_reg2str[r])
|
||||||
end;
|
end;
|
||||||
if (firstsavemmreg <> R_NO) then
|
if (firstsavemmreg <> R_NO) then
|
||||||
for r := firstsavemmreg to lastsavemmreg do
|
for r := firstsavemmreg to lastsavemmreg do
|
||||||
@ -979,7 +979,7 @@ begin
|
|||||||
write(', ')
|
write(', ')
|
||||||
else
|
else
|
||||||
first := false;
|
first := false;
|
||||||
write(att_reg2str[r])
|
write(gas_reg2str[r])
|
||||||
end;
|
end;
|
||||||
writeln;
|
writeln;
|
||||||
end;
|
end;
|
||||||
@ -1700,7 +1700,10 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.18 2002-04-07 10:23:36 carl
|
Revision 1.19 2002-04-14 17:02:19 carl
|
||||||
|
+ att_reg2str -> gas_reg2str
|
||||||
|
|
||||||
|
Revision 1.18 2002/04/07 10:23:36 carl
|
||||||
+ added vm / sparc targets
|
+ added vm / sparc targets
|
||||||
|
|
||||||
Revision 1.17 2002/04/04 19:06:14 peter
|
Revision 1.17 2002/04/04 19:06:14 peter
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user