Hi Folks,

here goes the summary of the story:

The task: compiling the same source in 32 and 64 bit environment using FPC ver. 2.2.0 and compare the results. In ideal case the results should be the same. I hit the several bugs during this test.

1) - the available 32-bit and 64-bit RPM distributions can not be installed in parallel from the web sites as they are called on the same name. So the package manager module of openSUSE 10.3 thinks they are the same and installation of the one will overwrite the other. A different package name should solve this problem easily.

2) - when the concurrent installation of the two versions of the complier is solved users can control the type of the generated binaries by the '-P' switch of the complier. This switch is not mentioned in the documentation at all.

3) - the internal assembler is broken in the 64-bit version and the '-Aas' switch should be applied (apparently this is a known problem but undocumented on the official site).

4) - the 'random' library function is broken in the 64-bit variant. Accessing it in the 'random(i)' form is fine but the list returned by the 'random' form (i.e. list of real numbers) is incorrect. Both usage are correct under the 32-bit conditions.

5) - considering the two versions of a source that will not hit this bug the generated 32-bit executable runs much faster than its 64-bit equivalent. That indicates the general weakness of the 64-bit platform support.

That's it for now and thanks to Jonas for the hints, cheers,

miklos

_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to