* I personally struggle with the Bloat of newer compilers.
Test Case
TP7: 3 lines, 0.1 seconds, 2496 bytes code, 670 bytes data.Code: Select all
Begin Writeln('Who makes the smallest Linux EXE from Pascal?!'); End.
EXE: -rw-r--r-- 1 ozz ozz 2672 Jul 4 12:38 TESTCASE.EXE
(*) Negative, requires DOS to run, but, 2.6kb!
FPC: Linking testcase
3 lines compiled, 0.3 sec
ELF EXE: -rwxr-xr-x 1 root root 191072 Jul 5 17:12 testcase
(*) Negative, it is 191.0kb!
MLC:
mlc "My Little Compiler" v1.0
[MLC] Compiling: testcase.pas
[MLC] Source: 73 bytes
[MLC] Tokens: 9
[MLC] AST: Generated
[MLC] Generated: LLVM IR
[MLC] Compiling...
[MLC] Assembly: testcase.s
[MLC] Object: testcase.o
[MLC] Binary: testcase
[MLC] Success!
real 0m0.731s
ELF EXE: -rwxr-xr-x 1 root root 16200 Jul 5 17:23 testcase
(*) Negative, it is 16.2kb!
If you cheat and use ``upx -9``
(*) Shrinks it down to ELF EXE: -rwxr-xr-x 1 root root 6352 Jul 5 17:23 testcase
Code: Select all
16200 -> 6352 39.21% linux/amd64 testcase