GNU Pascal is a 32/64 bit compiler with excellent optimization algorithms (which are identically the same as those of GNU C). There are six optimization levels, specified by the command line options -O, -O2, ..., -O6.
One example:
program OptimizationDemo; procedure Foo; var A, B: Integer; begin A := 3; B := 4; WriteLn (A + B) end; begin Foo end.
When GNU Pascal compiles this program with optimization
(-O3), it recognizes that the argument to `WriteLn' is the
constant 7 – and optimizes away the variables A
and
B
. If the variables were global, they would not be optimized
away because they might be accessed from other places, but the
constant 7 would still be optimized.
For more about optimization, see the GNU C documentation.