* change AT_FUNCTION to AT_DATA where appropriate

This commit is contained in:
olle 2004-03-18 11:43:57 +00:00
parent 91a73eeb3d
commit a7f25327f6
6 changed files with 43 additions and 24 deletions

View File

@ -854,9 +854,9 @@ implementation
implintf:=_class.implementedinterfaces; implintf:=_class.implementedinterfaces;
curintf:=implintf.interfaces(intfindex); curintf:=implintf.interfaces(intfindex);
if (cs_create_smart in aktmoduleswitches) then if (cs_create_smart in aktmoduleswitches) then
rawdata.concat(Tai_symbol.Createname_global(gintfgetvtbllabelname(intfindex),AT_FUNCTION,0)) rawdata.concat(Tai_symbol.Createname_global(gintfgetvtbllabelname(intfindex),AT_DATA ,0))
else else
rawdata.concat(Tai_symbol.Createname(gintfgetvtbllabelname(intfindex),AT_FUNCTION,0)); rawdata.concat(Tai_symbol.Createname(gintfgetvtbllabelname(intfindex),AT_DATA,0));
proccount:=implintf.implproccount(intfindex); proccount:=implintf.implproccount(intfindex);
for i:=1 to proccount do for i:=1 to proccount do
begin begin
@ -900,7 +900,7 @@ implementation
dataSegment.concat(Tai_const.Create_ptr(0)); { nil } dataSegment.concat(Tai_const.Create_ptr(0)); { nil }
end; end;
{ VTable } { VTable }
dataSegment.concat(Tai_const_symbol.Createname(gintfgetvtbllabelname(contintfindex),AT_FUNCTION,0)); dataSegment.concat(Tai_const_symbol.Createname(gintfgetvtbllabelname(contintfindex),AT_DATA,0));
{ IOffset field } { IOffset field }
dataSegment.concat(Tai_const.Create_32bit(implintf.ioffsets(contintfindex)^)); dataSegment.concat(Tai_const.Create_32bit(implintf.ioffsets(contintfindex)^));
{ IIDStr } { IIDStr }
@ -1155,7 +1155,7 @@ implementation
begin begin
if (cs_create_smart in aktmoduleswitches) then if (cs_create_smart in aktmoduleswitches) then
dataSegment.concat(Tai_cut.Create); dataSegment.concat(Tai_cut.Create);
dataSegment.concat(Tai_symbol.Createname_global(make_mangledname('IID',_class.owner,_class.objname^),AT_FUNCTION,0)); dataSegment.concat(Tai_symbol.Createname_global(make_mangledname('IID',_class.owner,_class.objname^),AT_DATA,0));
dataSegment.concat(Tai_const.Create_32bit(_class.iidguid^.D1)); dataSegment.concat(Tai_const.Create_32bit(_class.iidguid^.D1));
dataSegment.concat(Tai_const.Create_16bit(_class.iidguid^.D2)); dataSegment.concat(Tai_const.Create_16bit(_class.iidguid^.D2));
dataSegment.concat(Tai_const.Create_16bit(_class.iidguid^.D3)); dataSegment.concat(Tai_const.Create_16bit(_class.iidguid^.D3));
@ -1164,7 +1164,7 @@ implementation
end; end;
if (cs_create_smart in aktmoduleswitches) then if (cs_create_smart in aktmoduleswitches) then
dataSegment.concat(Tai_cut.Create); dataSegment.concat(Tai_cut.Create);
dataSegment.concat(Tai_symbol.Createname_global(make_mangledname('IIDSTR',_class.owner,_class.objname^),AT_FUNCTION,0)); dataSegment.concat(Tai_symbol.Createname_global(make_mangledname('IIDSTR',_class.owner,_class.objname^),AT_DATA,0));
dataSegment.concat(Tai_const.Create_8bit(length(_class.iidstr^))); dataSegment.concat(Tai_const.Create_8bit(length(_class.iidstr^)));
dataSegment.concat(Tai_string.Create(_class.iidstr^)); dataSegment.concat(Tai_string.Create(_class.iidstr^));
end; end;
@ -1251,6 +1251,7 @@ implementation
dataSegment.concat(Tai_label.Create(classnamelabel)); dataSegment.concat(Tai_label.Create(classnamelabel));
dataSegment.concat(Tai_const.Create_8bit(length(_class.objrealname^))); dataSegment.concat(Tai_const.Create_8bit(length(_class.objrealname^)));
dataSegment.concat(Tai_string.Create(_class.objrealname^)); dataSegment.concat(Tai_string.Create(_class.objrealname^));
{ generate message and dynamic tables } { generate message and dynamic tables }
if (oo_has_msgstr in _class.objectoptions) then if (oo_has_msgstr in _class.objectoptions) then
strmessagetable:=genstrmsgtab; strmessagetable:=genstrmsgtab;
@ -1290,7 +1291,7 @@ implementation
{ it is not written for parents that don't have any vmt !! } { it is not written for parents that don't have any vmt !! }
if assigned(_class.childof) and if assigned(_class.childof) and
(oo_has_vmt in _class.childof.objectoptions) then (oo_has_vmt in _class.childof.objectoptions) then
dataSegment.concat(Tai_const_symbol.Createname(_class.childof.vmt_mangledname,AT_FUNCTION,0)) dataSegment.concat(Tai_const_symbol.Createname(_class.childof.vmt_mangledname,AT_DATA,0))
else else
dataSegment.concat(Tai_const.Create_ptr(0)); dataSegment.concat(Tai_const.Create_ptr(0));
@ -1380,7 +1381,10 @@ initialization
end. end.
{ {
$Log$ $Log$
Revision 1.67 2004-03-08 22:07:46 peter Revision 1.68 2004-03-18 11:43:57 olle
* change AT_FUNCTION to AT_DATA where appropriate
Revision 1.67 2004/03/08 22:07:46 peter
* stabs updates to write stabs for def for all implictly used * stabs updates to write stabs for def for all implictly used
units units

View File

@ -170,8 +170,8 @@ implementation
begin begin
oldaktfilepos:=aktfilepos; oldaktfilepos:=aktfilepos;
aktfilepos.line:=0; aktfilepos.line:=0;
debugList.insert(Tai_symbol.Createname('gcc2_compiled',AT_FUNCTION,0)); debugList.insert(Tai_symbol.Createname('gcc2_compiled',AT_DATA,0));
debugList.insert(Tai_symbol.Createname('fpc_compiled',AT_FUNCTION,0)); debugList.insert(Tai_symbol.Createname('fpc_compiled',AT_DATA,0));
fixseg(debuglist,sec_code); fixseg(debuglist,sec_code);
aktfilepos:=oldaktfilepos; aktfilepos:=oldaktfilepos;
end; end;
@ -1452,7 +1452,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.146 2004-03-14 20:10:14 peter Revision 1.147 2004-03-18 11:43:57 olle
* change AT_FUNCTION to AT_DATA where appropriate
Revision 1.146 2004/03/14 20:10:14 peter
* fix stabs lineno for fpc_compiled * fix stabs lineno for fpc_compiled
Revision 1.145 2004/03/10 22:52:57 peter Revision 1.145 2004/03/10 22:52:57 peter

View File

@ -434,9 +434,9 @@ implementation
curconstSegment.concat(Tai_const_symbol.Createname(tprocsym(srsym).first_procdef.mangledname,AT_FUNCTION,offset)); curconstSegment.concat(Tai_const_symbol.Createname(tprocsym(srsym).first_procdef.mangledname,AT_FUNCTION,offset));
end; end;
varsym : varsym :
curconstSegment.concat(Tai_const_symbol.Createname(tvarsym(srsym).mangledname,AT_FUNCTION,offset)); curconstSegment.concat(Tai_const_symbol.Createname(tvarsym(srsym).mangledname,AT_DATA,offset));
typedconstsym : typedconstsym :
curconstSegment.concat(Tai_const_symbol.Createname(ttypedconstsym(srsym).mangledname,AT_FUNCTION,offset)); curconstSegment.concat(Tai_const_symbol.Createname(ttypedconstsym(srsym).mangledname,AT_DATA,offset));
else else
Message(type_e_variable_id_expected); Message(type_e_variable_id_expected);
end; end;
@ -452,7 +452,7 @@ implementation
if (tinlinenode(p).left.nodetype=typen) then if (tinlinenode(p).left.nodetype=typen) then
begin begin
curconstSegment.concat(Tai_const_symbol.createname( curconstSegment.concat(Tai_const_symbol.createname(
tobjectdef(tinlinenode(p).left.resulttype.def).vmt_mangledname,AT_FUNCTION,0)); tobjectdef(tinlinenode(p).left.resulttype.def).vmt_mangledname,AT_DATA,0));
end end
else else
Message(cg_e_illegal_expression); Message(cg_e_illegal_expression);
@ -971,7 +971,7 @@ implementation
begin begin
for i:=1 to vmt_offset-aktpos do for i:=1 to vmt_offset-aktpos do
curconstsegment.concat(tai_const.create_8bit(0)); curconstsegment.concat(tai_const.create_8bit(0));
curconstsegment.concat(tai_const_symbol.createname(vmt_mangledname,AT_FUNCTION,0)); curconstsegment.concat(tai_const_symbol.createname(vmt_mangledname,AT_DATA,0));
{ this is more general } { this is more general }
aktpos:=vmt_offset + pointer_size; aktpos:=vmt_offset + pointer_size;
end; end;
@ -998,7 +998,7 @@ implementation
begin begin
for i:=1 to tobjectdef(t.def).vmt_offset-aktpos do for i:=1 to tobjectdef(t.def).vmt_offset-aktpos do
curconstsegment.concat(tai_const.create_8bit(0)); curconstsegment.concat(tai_const.create_8bit(0));
curconstsegment.concat(tai_const_symbol.createname(tobjectdef(t.def).vmt_mangledname,AT_FUNCTION,0)); curconstsegment.concat(tai_const_symbol.createname(tobjectdef(t.def).vmt_mangledname,AT_DATA,0));
{ this is more general } { this is more general }
aktpos:=tobjectdef(t.def).vmt_offset + pointer_size; aktpos:=tobjectdef(t.def).vmt_offset + pointer_size;
end; end;
@ -1025,7 +1025,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.81 2004-03-17 22:27:41 florian Revision 1.82 2004-03-18 11:43:57 olle
* change AT_FUNCTION to AT_DATA where appropriate
Revision 1.81 2004/03/17 22:27:41 florian
* fixed handling of doubles in a native arm compiler * fixed handling of doubles in a native arm compiler
* fixed handling of typed double constants on arm * fixed handling of typed double constants on arm

View File

@ -1538,7 +1538,7 @@ end;
Procedure ConcatConstSymbol(p : TAAsmoutput;const sym:string;l:longint); Procedure ConcatConstSymbol(p : TAAsmoutput;const sym:string;l:longint);
begin begin
p.concat(Tai_const_symbol.Createname(sym,AT_FUNCTION,l)); p.concat(Tai_const_symbol.Createname(sym,AT_DATA,l));
end; end;
@ -1632,7 +1632,10 @@ end;
end. end.
{ {
$Log$ $Log$
Revision 1.83 2004-03-17 22:27:41 florian Revision 1.84 2004-03-18 11:43:57 olle
* change AT_FUNCTION to AT_DATA where appropriate
Revision 1.83 2004/03/17 22:27:41 florian
* fixed handling of doubles in a native arm compiler * fixed handling of doubles in a native arm compiler
* fixed handling of typed double constants on arm * fixed handling of typed double constants on arm

View File

@ -5360,7 +5360,7 @@ implementation
internalerror(1509992); internalerror(1509992);
{ access to implicit class property as field } { access to implicit class property as field }
proctypesinfo:=(0 shl 0) or (0 shl 2) or (0 shl 4); proctypesinfo:=(0 shl 0) or (0 shl 2) or (0 shl 4);
rttiList.concat(Tai_const_symbol.Createname(tvarsym(sym.vartype.def.get_rtti_label),AT_FUNCTION,0)); rttiList.concat(Tai_const_symbol.Createname(tvarsym(sym.vartype.def.get_rtti_label),AT_DATA,0));
rttiList.concat(Tai_const.Create_32bit(tvarsym(sym.address))); rttiList.concat(Tai_const.Create_32bit(tvarsym(sym.address)));
rttiList.concat(Tai_const.Create_32bit(tvarsym(sym.address))); rttiList.concat(Tai_const.Create_32bit(tvarsym(sym.address)));
{ per default stored } { per default stored }
@ -5534,7 +5534,7 @@ implementation
hp:=tclasslistitem(classtablelist.first); hp:=tclasslistitem(classtablelist.first);
while assigned(hp) do while assigned(hp) do
begin begin
rttiList.concat(Tai_const_symbol.Createname(tobjectdef(hp.p).vmt_mangledname,AT_FUNCTION,0)); rttiList.concat(Tai_const_symbol.Createname(tobjectdef(hp.p).vmt_mangledname,AT_DATA,0));
hp:=tclasslistitem(hp.next); hp:=tclasslistitem(hp.next);
end; end;
@ -5593,7 +5593,7 @@ implementation
begin begin
if (oo_has_vmt in objectoptions) and if (oo_has_vmt in objectoptions) and
not(objecttype in [odt_interfacecom,odt_interfacecorba]) then not(objecttype in [odt_interfacecom,odt_interfacecorba]) then
rttiList.concat(Tai_const_symbol.Createname(vmt_mangledname,AT_FUNCTION,0)) rttiList.concat(Tai_const_symbol.Createname(vmt_mangledname,AT_DATA,0))
else else
rttiList.concat(Tai_const.Create_ptr(0)); rttiList.concat(Tai_const.Create_ptr(0));
@ -6061,7 +6061,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.231 2004-03-14 22:51:46 peter Revision 1.232 2004-03-18 11:43:57 olle
* change AT_FUNCTION to AT_DATA where appropriate
Revision 1.231 2004/03/14 22:51:46 peter
* valgrind doesn't like nested procedure info in stabs * valgrind doesn't like nested procedure info in stabs
Revision 1.230 2004/03/14 20:06:40 peter Revision 1.230 2004/03/14 20:06:40 peter

View File

@ -532,7 +532,7 @@ const
end end
else else
begin begin
importsSection.concat(Tai_symbol.Createname_global(hp2.func^,AT_FUNCTION,0)); importsSection.concat(Tai_symbol.Createname_global(hp2.func^,AT_DATA,0));
end; end;
importsSection.concat(Tai_const_symbol.Create_rva(hp2.lab)); importsSection.concat(Tai_const_symbol.Create_rva(hp2.lab));
hp2:=twin32imported_item(hp2.next); hp2:=twin32imported_item(hp2.next);
@ -1606,7 +1606,10 @@ initialization
end. end.
{ {
$Log$ $Log$
Revision 1.29 2004-03-02 00:36:33 olle Revision 1.30 2004-03-18 11:44:07 olle
* change AT_FUNCTION to AT_DATA where appropriate
Revision 1.29 2004/03/02 00:36:33 olle
* big transformation of Tai_[const_]Symbol.Create[data]name* * big transformation of Tai_[const_]Symbol.Create[data]name*
Revision 1.28 2004/02/27 10:21:05 florian Revision 1.28 2004/02/27 10:21:05 florian