Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2026-07

CPU386 CPUi386

3 messages · 2 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Martin Frb

Maybe someone has an answer.

Seems to be a language barrier on the
issue  https://gitlab.com/freepascal.org/lazarus/lazarus/-/work_items/42419

I don't know if the relevant changes have already been merged to fpc main? (compiling for aarch64 on windows)

If so, then the below question come up.

According to the patch, the
 {$IFDEF CPU386} does not work
but
 {$IFDEF CPUi386} does  (with an "i" in the cpu name.

But according to docs, both should be equal:
https://www.freepascal.org/docs-html/prog/progap7.html | CPU386 | Free Pascal target is an Intel 80386 or later. | | CPUI386 | Free Pascal target is an Intel 80386 or later.

Has there been a change?

Reply by email

Michael Van Canneyt
to Martin Frb
Martin Frb wrote 22 lines
Maybe someone has an answer. Seems to be a language barrier on the issue  https://gitlab.com/freepascal.org/lazarus/lazarus/-/work_items/42419 I don't know if the relevant changes have already been merged to fpc main? (compiling for aarch64 on windows) If so, then the below question come up. According to the patch, the  {$IFDEF CPU386} does not work but  {$IFDEF CPUi386} does  (with an "i" in the cpu name. But according to docs, both should be equal: https://www.freepascal.org/docs-html/prog/progap7.html | CPU386 | Free Pascal target is an Intel 80386 or later. | | CPUI386 | Free Pascal target is an Intel 80386 or later. Has there been a change?

No. Compiler sources are the reference. options.pas:

      {$ifdef i386}
         def_system_macro('CPU86');
         def_system_macro('CPU87');
         def_system_macro('CPU386');
       {$endif}
       { new processor stuff }
       {$ifdef i386}
         def_system_macro('CPUI386');

So both are defined for i386

Michael.

Reply by email