GCC for newer pyramids (i.e. MIServers)

Robert H. Hyerle hyerle at pyrthoth.pyramid.com
Tue Jan 22 04:41:35 AEST 1991


In article <1991Jan20.180348.5004 at sics.se> tege at sics.se (Torbj|rn Granlund) writes:

>I have been told that gcc generated code sometimes runs slower than cc
>generated code, in spite of its "better quality and smaller size".
>
>The problems seems to be that the tr registers are faster than other
>register categories on the MIServers, and that gcc uses these last,
>and cc uses them first.
>

Differing register speed is not the problem because all registers in the
MIServer have identical, single cycle access times.

I am not familiar with the gcc code but one possible answer is that the
MIServer has various hardware artifacts (such as an execution pipeline) that
complicate code generation with respect to performance.  The Pyramid
compiler group spent quite a bit of effort building an instruction scheduling
component into "cc" and choosing appropriate instructions in an effort
to improve performance.  Without an understanding of the underlying hardware,
generating quality code is not really possible.

-- robert hyerle



More information about the Comp.sys.pyramid mailing list