mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 03:46:10 +02:00
* fix section flags for stabs
git-svn-id: trunk@2838 -
This commit is contained in:
parent
f893e5ab6c
commit
86a15e83e9
@ -516,18 +516,18 @@ implementation
|
|||||||
|
|
||||||
ait_align :
|
ait_align :
|
||||||
begin
|
begin
|
||||||
if tai_align(hp).aligntype>1 then
|
if tai_align_abstract(hp).aligntype>1 then
|
||||||
begin
|
begin
|
||||||
if not(target_info.system in [system_powerpc_darwin,system_i386_darwin]) then
|
if not(target_info.system in [system_powerpc_darwin,system_i386_darwin]) then
|
||||||
begin
|
begin
|
||||||
AsmWrite(#9'.balign '+tostr(tai_align(hp).aligntype));
|
AsmWrite(#9'.balign '+tostr(tai_align_abstract(hp).aligntype));
|
||||||
if tai_align(hp).use_op then
|
if tai_align_abstract(hp).use_op then
|
||||||
AsmWrite(','+tostr(tai_align(hp).fillop))
|
AsmWrite(','+tostr(tai_align_abstract(hp).fillop))
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
{ darwin as only supports .align }
|
{ darwin as only supports .align }
|
||||||
if not ispowerof2(tai_align(hp).aligntype,i) then
|
if not ispowerof2(tai_align_abstract(hp).aligntype,i) then
|
||||||
internalerror(2003010305);
|
internalerror(2003010305);
|
||||||
AsmWrite(#9'.align '+tostr(i));
|
AsmWrite(#9'.align '+tostr(i));
|
||||||
last_align := i;
|
last_align := i;
|
||||||
|
@ -905,8 +905,6 @@ Implementation
|
|||||||
|
|
||||||
|
|
||||||
function TInternalAssembler.TreePass0(hp:Tai):Tai;
|
function TInternalAssembler.TreePass0(hp:Tai):Tai;
|
||||||
var
|
|
||||||
objsym : TObjSymbol;
|
|
||||||
begin
|
begin
|
||||||
while assigned(hp) do
|
while assigned(hp) do
|
||||||
begin
|
begin
|
||||||
@ -963,8 +961,7 @@ Implementation
|
|||||||
|
|
||||||
function TInternalAssembler.TreePass1(hp:Tai):Tai;
|
function TInternalAssembler.TreePass1(hp:Tai):Tai;
|
||||||
var
|
var
|
||||||
InlineLevel,
|
InlineLevel : longint;
|
||||||
i : longint;
|
|
||||||
objsym : TObjSymbol;
|
objsym : TObjSymbol;
|
||||||
begin
|
begin
|
||||||
inlinelevel:=0;
|
inlinelevel:=0;
|
||||||
@ -1259,7 +1256,7 @@ Implementation
|
|||||||
ObjData.afteralloc;
|
ObjData.afteralloc;
|
||||||
{ leave if errors have occured }
|
{ leave if errors have occured }
|
||||||
if errorcount>0 then
|
if errorcount>0 then
|
||||||
exit;
|
break;
|
||||||
|
|
||||||
{ Pass 1 }
|
{ Pass 1 }
|
||||||
ObjData.currpass:=1;
|
ObjData.currpass:=1;
|
||||||
@ -1321,6 +1318,8 @@ Implementation
|
|||||||
{ start next objectfile }
|
{ start next objectfile }
|
||||||
NextSmartName(place);
|
NextSmartName(place);
|
||||||
end;
|
end;
|
||||||
|
ObjData.free;
|
||||||
|
ObjData:=nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
@ -629,8 +629,6 @@ const win32stub : array[0..131] of byte=(
|
|||||||
result:=result or PE_SCN_MEM_READ;
|
result:=result or PE_SCN_MEM_READ;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
result:=result or PE_SCN_LNK_REMOVE;
|
|
||||||
if oso_debug in aoptions then
|
|
||||||
result:=result or PE_SCN_MEM_DISCARDABLE;
|
result:=result or PE_SCN_MEM_DISCARDABLE;
|
||||||
case aalign of
|
case aalign of
|
||||||
1 : result:=result or PE_SCN_ALIGN_1BYTES;
|
1 : result:=result or PE_SCN_ALIGN_1BYTES;
|
||||||
|
Loading…
Reference in New Issue
Block a user