[fpc-devel] Nasm under FPC Go32v2

Pierre Muller pierre at freepascal.org
Fri Dec 29 08:38:55 CET 2006


> Hi, I prepared some modifications for the 2.0.4 version to the
> ag386nsm.pas file which fixes the output of the strings (bug id 7210, but
> the patch in attachement now works against the old one) under this
> assembler, try the following code before and after its application with
> the command line <fpc -al -Anasmcoff worldcrash.pas>:

  The file you are changing is not go32v2 specific, thus
if a change is only for the go32v2 target, we need to
add a target test for the given change.

> program worldcrash;
> begin
> writeln('Hello, world!');
> end.
>
> These are the issues:
> - substitution of the .rodata with the .data section;
  Is this a general or go32v2 limitation of NASM?
> - avoiding of a double assignement of the LastSecType by the WriteSection,
> cosmetic;
> - correction of the #0 character with the db reserve operator and placing
> of the string in a single line, it is possible to clean;
  The problem is that very long line have problems with
editors (like fp for instance...) that is why the splitting was introduced,
I don't understand the advantage of removing that.

> - insert of the global key for the label of the string;
 Why is this glbal modifier needed?
> - correction of the skip of near sections in the cutobject, not related
> with the actual problem.

  Could you please explain the reason of that change?


Pierre Muller



More information about the fpc-devel mailing list