What I was taught in my course on hardware in college years ago is that some compilers on "RISC" processors skipped assembler, and wrote in a more cryptic instruction set which was virtually impossible for a human to make sense of. The assembler instructions for such systems is written as a "higher level" language. Most modern compilers generate their code directly rather than calling the assembler. Some of the reasons for this is optimization and scheduling. Although on the Digital Alpha with our older compiler we went through the assembler (a beast written in a dialect of Pascal). We rewrote the assembler from scratch, but we also switched compilers to Dec's new compiler that was able to optimize better. In the old assembler, the schduler was added to the end of the assembler where it would go through
On Thursday 10 November 2005 12:08 am, Steven T. Hatton wrote:
the code stream, with the new assembler, the scheduler was integrated and
operated on the assembler's internal data structure.
--
Jerry Feldman