3 ms·
This is a good paper on the theory and history of compiler development. (from 1997) https://keybase.theophile.me/info/morgan-optimizing-compiler.pdf https://ke
by vmh1928 5y ago
This is a good paper on the theory and history of compiler development. (from 1997)
https://keybase.theophile.me/info/morgan-optimizing-compiler.pdf https://keybase.theophile.me/info/morgan-optimizing-compiler...
- WalterBright 5y ago"Unfortunately, there was a time when compiler writers considered it important to get most programs right but not necessarily all programs. When the programmer used some legal features in unusual ways, the compiler might implement an incorrect version of the program. This gave optimizing compilers a bad name." The first optimizing C compiler for DOS (using data flow analysis) was released as Datalight Optimum-C in the 1980s. One of the programming magazines at the time decided to do a compiler roundup and prepared a number of benchmark programs. Optimum-C did incredibly well on them. The article writer did some investigating and concluded that Optimum-C cheated by deleting the benchmark code. We received a disastrous review. The problem, though, was the benchmarks would do things like: a = b + c; a = b + c; ... and the compiler correctly eliminated the dead assignments, and hence most of the benchmark. The other compiler vendors weren't fooled, however, and quickly added data flow analysis to their compilers, and the benchmark code was forced to change. But that review hurt us badly. The author at least could have contacted us over the unusual results.