mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-15 05:59:30 +02:00
* changed the Mach-O types from packed records in to regular records and
{$packrecords c} git-svn-id: trunk@29997 -
This commit is contained in:
parent
37a7304a8f
commit
215e2cc5de
@ -19,6 +19,8 @@ unit machotypes;
|
||||
|
||||
interface
|
||||
|
||||
{$packrecords c}
|
||||
|
||||
type
|
||||
TMachOMachineType = (mmtpowerpc, mmtpowerpc64, mmti386, mmtx86_64, mmtarm, mmtarm64);
|
||||
TMachOSubMachineTypePowerPC = (msmppc_all);
|
||||
@ -30,7 +32,7 @@ type
|
||||
TSegSectName = array[0..15] of char;
|
||||
|
||||
type
|
||||
TMachHdr = packed record
|
||||
TMachHdr = record
|
||||
magic : longword;
|
||||
cputype : longint;
|
||||
cpusubtype : longint;
|
||||
@ -40,14 +42,14 @@ type
|
||||
flags : longword;
|
||||
end;
|
||||
|
||||
TLoadCommand = packed record
|
||||
TLoadCommand = record
|
||||
cmd : longword;
|
||||
cmdsize : longword;
|
||||
end;
|
||||
|
||||
//note: all commands don't include first two longwords
|
||||
|
||||
TSegmentCommand32 = packed record
|
||||
TSegmentCommand32 = record
|
||||
name : TSegSectName;
|
||||
vmaddr : longword;
|
||||
vmsize : longword;
|
||||
@ -59,7 +61,7 @@ type
|
||||
flags : longword;
|
||||
end;
|
||||
|
||||
TSegmentCommand64 = packed record
|
||||
TSegmentCommand64 = record
|
||||
name : TSegSectName;
|
||||
vmaddr : qword;
|
||||
vmsize : qword;
|
||||
@ -71,7 +73,7 @@ type
|
||||
flags : longword;
|
||||
end;
|
||||
|
||||
TSection32 = packed record
|
||||
TSection32 = record
|
||||
sectname : TSegSectName;
|
||||
segname : TSegSectName;
|
||||
addr : longword;
|
||||
@ -85,7 +87,7 @@ type
|
||||
reserved2 : longword;
|
||||
end;
|
||||
|
||||
TSection64 = packed record
|
||||
TSection64 = record
|
||||
sectname : TSegSectName;
|
||||
segname : TSegSectName;
|
||||
addr : qword;
|
||||
@ -100,14 +102,14 @@ type
|
||||
reserved3 : longword;
|
||||
end;
|
||||
|
||||
TSymtabCommand = packed record
|
||||
TSymtabCommand = record
|
||||
symoff : longword;
|
||||
nsyms : longword;
|
||||
stroff : longword;
|
||||
strsize : longword;
|
||||
end;
|
||||
|
||||
TDySymtabCommand = packed record
|
||||
TDySymtabCommand = record
|
||||
ilocalsym : longword;
|
||||
nlocalsym : longword;
|
||||
iextdefsym : longword;
|
||||
@ -128,7 +130,7 @@ type
|
||||
nlocrel : longword;
|
||||
end;
|
||||
|
||||
TNList32 = packed record
|
||||
TNList32 = record
|
||||
strx : longword;
|
||||
_type : byte;
|
||||
sect : byte;
|
||||
@ -137,7 +139,7 @@ type
|
||||
end;
|
||||
PNList32 = ^TNList32;
|
||||
|
||||
TNList64 = packed record
|
||||
TNList64 = record
|
||||
strx : longword;
|
||||
_type : byte;
|
||||
sect : byte;
|
||||
@ -146,7 +148,7 @@ type
|
||||
end;
|
||||
PNList64 = ^TNList64;
|
||||
|
||||
TRelocationInfo = packed record
|
||||
TRelocationInfo = record
|
||||
address : longword;
|
||||
flags : longword;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user