Using a 64-bit code generator would make it very easy and 'natural' to implement Double and Int64 types.
Nevertheless, besides obvious changes in instruction prefixes, pointer sizes and PE header flags, the following difficulties are to be expected:
No push instruction for 64-bit immediate values even in the 64-bit mode
The stdcall calling convention has been replaced with fastcall in 64-bit Windows API, with the first four arguments passed via registers, all others via the stack.
Compiler source compatibility with Delphi/Free Pascal is questionable.
Using a 64-bit code generator would make it very easy and 'natural' to implement
Double
andInt64
types.Nevertheless, besides obvious changes in instruction prefixes, pointer sizes and PE header flags, the following difficulties are to be expected:
push
instruction for 64-bit immediate values even in the 64-bit modestdcall
calling convention has been replaced withfastcall
in 64-bit Windows API, with the first four arguments passed via registers, all others via the stack.