On 07 Apr 2012, at 12:31, Martin Schreiber wrote:

> I tried to optimize it with "Whole Program Optimization".
> On win32 I get:
> "
> Free Pascal Compiler version 2.6.0 [2011/12/25] for i386
> Copyright (c) 1993-2011 by Florian Klaempfl and others
> Target OS: Win32 for i386
> Compiling minimal.pas
> [...]
> Compiling main.pas
> Compiling main_mfm.pas
> Linking minimal.exe
> minimal.pas(12,1) Error: Error during reading symbol liveness information 
> produced by "E:\FPC\2.6.0\bin\i386-win32\objdump.exe -t "

From http://wiki.freepascal.org/Whole_Program_Optimization#Limitations_4 :

"This optimisation requires that the nm utility is installed on the system. For 
Linux binaries, objdump will also work."

> On Linux compiling works, there is a binary of 1.3MB after third run as 
> described in
> http://wiki.freepascal.org/Whole_Program_Optimization#Concrete_example
> After "strip -s" the size is 780KB.

On my Linux/i386 system it's 133kb after strip -s, and 261kb before. Have you 
recompiled the 2.6.0 rtl somehow?

> Running the program crashes at startup with
> "
> An unhandled exception occurred at $080A1045 :
> EAbstractError : Abstract method called
>  $080A1045
>  $0809B6F5
>  $0809AD8B
>  $080AF2AA
>  $080AEFC0
>  $080AE4D2
>  $0806FB92
>  $0805C884
>  $0804E48A
>  $0805FE70
>  $0804DF94
>  $0804DCFD
>  $0804DB2D
> 
> An unhandled exception occurred at $0804C2DF :
> An unhandled exception occurred at $B7CE9B7A :
> "

Strange. This example is tested every night in the test suite runs and works 
fine there on Linux/i386: 
http://www.freepascal.org/testsuite/cgi-bin/testsuite.cgi?action=3&run1id=108780&testfileid=3122
 . I've also just tested it on Linux/i386 (see above) and it works fine for me.

> Should whole program optimization work with FPC 2.6.0?

Yes. The FPC 2.6.0 compiler binary itself is even compiled with whole program 
optimizations (although not with the symbol liveness information switch, 
because that requires smart linking and for historical reasons that's not 
enabled for the binaries we release).


Jonas_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to