DCC notes from Jeff:
--------------------
All of the executables are L2 optimized, the patterns files are the latest ones (and in the right places), the archive contains the updated bug-fixed cstart.r from Carl, and it has the DCC help file.

The compiler is tab-safe; you can edit your C source code using tabs to indent, and any error messages the compiler emits will have their tabs turned to spaces so you don't have confusing garbage all over the screen during compiles.

The details aren't in the help file, that's something that should just be expected. :slight_smile:
I did just notice that the dcc.hlp file in that archive is missing the line 
    -2           Generate code specifically for OS-9 Level 2 systems
on the first line of "General options:"

From his announcement on the list:
==================================
I managed to get the C optimizer to do the "CnoY" optimization, so I
was able to pull it back out of the compiler! I didn't like doing that
optimization in the compiler, because the compiler is already very
large and I don't yet know how to turn it back into a 2-pass process
like the one Tandy released.

The next DCC release, currently being prepared for NitrOS-9 EOU beta
6, will have the ability to optimize for OS-9 level 2 without adding
an additional stage. I gave the optimizer the ability to read
specially-formatted text files to hold its optimization patterns, and
translated all of the optimizations it already knew how to do into
that format. There are two files, "level1.patterns" and
"level2.patterns", which can be read from /DD/Lib/ when the optimizer
runs, before it starts processing the input file.

The optimizer always reads level1.patterns, but if you call it with
the -2 option, it will also read level2.patterns. Support for this
option has been added to the main DCC executable, so you can (for
example) do "dcc -s2 program.c" for a self-contained C program source
and get an optimized build out of it.

Most big programs that I have seen get about 4 percent smaller with
the -2 option, but the better you code the less benefit you'll get out
of it. If your program is heavy with global variables, (direct,
extern, bare strings, etc.) and other 'static' data, then your
programs could get significantly faster -- but variables declared
inside functions, those will get almost no benefit.
