mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-30 01:39:28 +02:00
* typeinfo in typedata is now aligned
This commit is contained in:
parent
9255d0d90b
commit
f20af0b344
@ -1632,6 +1632,9 @@ implementation
|
|||||||
rttiList.concat(Tai_const.Create_8bit(tkSString));
|
rttiList.concat(Tai_const.Create_8bit(tkSString));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
rttiList.concat(Tai_const.Create_8bit(len));
|
rttiList.concat(Tai_const.Create_8bit(len));
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -1857,6 +1860,9 @@ implementation
|
|||||||
begin
|
begin
|
||||||
rttiList.concat(Tai_const.Create_8bit(tkEnumeration));
|
rttiList.concat(Tai_const.Create_8bit(tkEnumeration));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
case longint(savesize) of
|
case longint(savesize) of
|
||||||
1:
|
1:
|
||||||
rttiList.concat(Tai_const.Create_8bit(otUByte));
|
rttiList.concat(Tai_const.Create_8bit(otUByte));
|
||||||
@ -2033,6 +2039,9 @@ implementation
|
|||||||
otUByte,otUWord,otUByte);
|
otUByte,otUWord,otUByte);
|
||||||
begin
|
begin
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
rttiList.concat(Tai_const.Create_8bit(byte(trans[typ])));
|
rttiList.concat(Tai_const.Create_8bit(byte(trans[typ])));
|
||||||
{$ifdef cpurequiresproperalignment}
|
{$ifdef cpurequiresproperalignment}
|
||||||
rttilist.concat(Tai_align.Create(4));
|
rttilist.concat(Tai_align.Create(4));
|
||||||
@ -2047,6 +2056,9 @@ implementation
|
|||||||
begin
|
begin
|
||||||
rttiList.concat(Tai_const.Create_8bit(tkInt64));
|
rttiList.concat(Tai_const.Create_8bit(tkInt64));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
{ low }
|
{ low }
|
||||||
rttiList.concat(Tai_const.Create_64bit(int64($80000000) shl 32));
|
rttiList.concat(Tai_const.Create_64bit(int64($80000000) shl 32));
|
||||||
{ high }
|
{ high }
|
||||||
@ -2056,6 +2068,9 @@ implementation
|
|||||||
begin
|
begin
|
||||||
rttiList.concat(Tai_const.Create_8bit(tkQWord));
|
rttiList.concat(Tai_const.Create_8bit(tkQWord));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
{ low }
|
{ low }
|
||||||
rttiList.concat(Tai_const.Create_64bit(0));
|
rttiList.concat(Tai_const.Create_64bit(0));
|
||||||
{ high }
|
{ high }
|
||||||
@ -2194,6 +2209,9 @@ implementation
|
|||||||
begin
|
begin
|
||||||
rttiList.concat(Tai_const.Create_8bit(tkFloat));
|
rttiList.concat(Tai_const.Create_8bit(tkFloat));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
rttiList.concat(Tai_const.Create_8bit(translate[typ]));
|
rttiList.concat(Tai_const.Create_8bit(translate[typ]));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -2787,6 +2805,9 @@ implementation
|
|||||||
begin
|
begin
|
||||||
rttiList.concat(Tai_const.Create_8bit(tkSet));
|
rttiList.concat(Tai_const.Create_8bit(tkSet));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
rttiList.concat(Tai_const.Create_8bit(otULong));
|
rttiList.concat(Tai_const.Create_8bit(otULong));
|
||||||
{$ifdef cpurequiresproperalignment}
|
{$ifdef cpurequiresproperalignment}
|
||||||
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
@ -4756,6 +4777,9 @@ implementation
|
|||||||
rttiList.concat(Tai_const.Create_8bit(tkmethod));
|
rttiList.concat(Tai_const.Create_8bit(tkmethod));
|
||||||
write_rtti_name;
|
write_rtti_name;
|
||||||
|
|
||||||
|
{$ifdef cpurequiresproperalignment}
|
||||||
|
rttilist.concat(Tai_align.Create(sizeof(TConstPtrUInt)));
|
||||||
|
{$endif cpurequiresproperalignment}
|
||||||
{ write kind of method (can only be function or procedure)}
|
{ write kind of method (can only be function or procedure)}
|
||||||
if rettype.def = voidtype.def then
|
if rettype.def = voidtype.def then
|
||||||
methodkind := mkProcedure
|
methodkind := mkProcedure
|
||||||
@ -6331,7 +6355,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.288 2005-01-09 15:05:29 peter
|
Revision 1.289 2005-01-16 14:47:26 florian
|
||||||
|
* typeinfo in typedata is now aligned
|
||||||
|
|
||||||
|
Revision 1.288 2005/01/09 15:05:29 peter
|
||||||
* fix interface vtbl optimization
|
* fix interface vtbl optimization
|
||||||
* replace ugly pointer construct of ioffset()
|
* replace ugly pointer construct of ioffset()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user