The next application
program Project1;
{$IFDEF FPC}
{$mode delphi}
{$ENDIF}
begin
{$IFDEF CPU386}
Writeln('CPU386');
{$ENDIF}
Readln;
end.
produce different output in Delphi(XE) and FPC(2.6.2) on my system (Win7 64 bit, CPU intel core i3). Delphi outputs CPU386
string, FPC does not.
Seems like FPC does not define CPU386
symbol for my CPU (see the list of FPC defines); it defines CPUX86_64
symbol instead.
So far I am using the next workaround:
{$IFDEF FPC}
{$IFNDEF CPU386}
{$IFDEF CPUX86_64}
{$DEFINE CPU386}
{$ENDIF}
{$ENDIF}
{$ENDIF}