mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-05-02 05:33:46 +02:00

usage in case PIC generation is on (some by adding PIC-versions of the assembler code, most by adding -Cg- to the options to be used). Note: the Intel assembler reader does not yet support the Delphi PIC construct, so tests with that (like test/tasmread and test/tcg1) do not work with -Cg on non-Darwin (Darwin needs a different PIC construct) git-svn-id: trunk@9370 -
41 lines
579 B
ObjectPascal
41 lines
579 B
ObjectPascal
{ Checks for qualified variable support
|
|
in assembler reader }
|
|
program test;
|
|
|
|
{$ifdef cpui386}
|
|
{$asmmode intel}
|
|
{$endif}
|
|
|
|
var l: longint;
|
|
|
|
begin
|
|
{$ifdef cpui386}
|
|
asm
|
|
{$ifndef FPC_PIC}
|
|
mov test.l, 5
|
|
{$else FPC_PIC}
|
|
call @@LPIC
|
|
@@LPIC:
|
|
pop ecx
|
|
{$ifdef darwin}
|
|
mov [test.l-@@LPIC+ecx],5
|
|
{$else darwin}
|
|
add ecx, @_GLOBAL_OFFSET_TABLE_
|
|
mov [ecx].OFFSET test.l,5
|
|
{$endif darwin}
|
|
{$endif FPC_PIC}
|
|
end;
|
|
{$endif cpui386}
|
|
{$ifdef cpu68k}
|
|
asm
|
|
move.l test.l,d0
|
|
end;
|
|
{$endif cpu68k}
|
|
{$ifdef arm}
|
|
asm
|
|
ld r0,test.l
|
|
end;
|
|
{$endif arm}
|
|
|
|
end.
|