* fix for the ie9999 under Linux (patch from Peter)

This commit is contained in:
Jonas Maebe 2002-04-10 08:07:55 +00:00
parent c8b3a5b3db
commit 3566880766
2 changed files with 20 additions and 14 deletions

View File

@ -66,7 +66,7 @@ interface
end; end;
{# This is the base class which should be overriden for each each {# This is the base class which should be overriden for each each
assembler writer. It is used to actually assembler a file, assembler writer. It is used to actually assembler a file,
and write the output to the assembler file. and write the output to the assembler file.
} }
TExternalAssembler=class(TAssembler) TExternalAssembler=class(TAssembler)
@ -80,8 +80,8 @@ interface
outbuf : array[0..AsmOutSize-1] of char; outbuf : array[0..AsmOutSize-1] of char;
outfile : file; outfile : file;
public public
{# Returns the complete path and executable name of the assembler program. {# Returns the complete path and executable name of the assembler program.
It first tries looking in the UTIL directory if specified, otherwise It first tries looking in the UTIL directory if specified, otherwise
it searches in the free pascal binary directory, in the current it searches in the free pascal binary directory, in the current
working directory and the in the directories in the $PATH environment. working directory and the in the directories in the $PATH environment.
@ -105,11 +105,11 @@ interface
Procedure AsmLn; Procedure AsmLn;
procedure AsmCreate(Aplace:tcutplace); procedure AsmCreate(Aplace:tcutplace);
procedure AsmClose; procedure AsmClose;
{# This routine should be overriden for each assembler, it is used {# This routine should be overriden for each assembler, it is used
to actually write the abstract assembler stream to file. to actually write the abstract assembler stream to file.
} }
procedure WriteTree(p:TAAsmoutput);virtual; procedure WriteTree(p:TAAsmoutput);virtual;
{# This routine should be overriden for each assembler, it is used {# This routine should be overriden for each assembler, it is used
to actually write all the different abstract assembler streams to actually write all the different abstract assembler streams
by calling for each stream type, the @var(WriteTree) method. by calling for each stream type, the @var(WriteTree) method.
} }
@ -1094,10 +1094,10 @@ Implementation
end; end;
ait_symbol_end : ait_symbol_end :
begin begin
if target_info.target=target_i386_linux then if target_info.target in [target_i386_linux,target_i386_beos] then
begin begin
Tai_symbol(hp).sym.size:=objectalloc.sectionsize-Tai_symbol(hp).sym.address; Tai_symbol_end(hp).sym.size:=objectalloc.sectionsize-Tai_symbol_end(hp).sym.address;
UsedAsmSymbolListInsert(Tai_symbol(hp).sym); UsedAsmSymbolListInsert(Tai_symbol_end(hp).sym);
end; end;
end; end;
ait_label : ait_label :
@ -1581,7 +1581,10 @@ Implementation
end. end.
{ {
$Log$ $Log$
Revision 1.32 2002-04-07 13:19:14 carl Revision 1.33 2002-04-10 08:07:55 jonas
* fix for the ie9999 under Linux (patch from Peter)
Revision 1.32 2002/04/07 13:19:14 carl
+ more documentation + more documentation
Revision 1.31 2002/04/04 19:05:54 peter Revision 1.31 2002/04/04 19:05:54 peter

View File

@ -676,9 +676,9 @@ interface
inc(symendcount); inc(symendcount);
AsmWriteLn(s+':'); AsmWriteLn(s+':');
AsmWrite(#9'.size'#9); AsmWrite(#9'.size'#9);
AsmWrite(tai_symbol(hp).sym.name); AsmWrite(tai_symbol_end(hp).sym.name);
AsmWrite(', '+s+' - '); AsmWrite(', '+s+' - ');
AsmWriteLn(tai_symbol(hp).sym.name); AsmWriteLn(tai_symbol_end(hp).sym.name);
end; end;
end; end;
@ -962,11 +962,14 @@ initialization
RegisterAssembler(as_i386_as_info,T386ATTAssembler); RegisterAssembler(as_i386_as_info,T386ATTAssembler);
RegisterAssembler(as_i386_as_aout_info,T386ATTAssembler); RegisterAssembler(as_i386_as_aout_info,T386ATTAssembler);
RegisterAssembler(as_i386_asw_info,T386ATTAssembler); RegisterAssembler(as_i386_asw_info,T386ATTAssembler);
RegisterAssembler(as_i386_aswwdosx_info,T386ATTAssembler); RegisterAssembler(as_i386_aswwdosx_info,T386ATTAssembler);
end. end.
{ {
$Log$ $Log$
Revision 1.15 2002-04-04 19:06:06 peter Revision 1.16 2002-04-10 08:07:55 jonas
* fix for the ie9999 under Linux (patch from Peter)
Revision 1.15 2002/04/04 19:06:06 peter
* removed unused units * removed unused units
* use tlocation.size in cg.a_*loc*() routines * use tlocation.size in cg.a_*loc*() routines