> > Dave Rivers wrote: > > > On a per-function basis - but not within functions; because > > gcc points R13 at the literal pool; which can be quite large > > (and different from the code location in sufficiently large > > functions.) > > Separating code and literal pool would appear likely to cause > a net win on machines with separate i-cache and d-cache (i.e. > all zSeries machines). I don't have specific measurements to > prove that point, though.
Yes - I would agree. It was a rather surprising discovery to us as well (when reported by some users of zSeries machines.) I may, however, be mis-attributing the reason for the performance benefit. There was some thought that gcc's use of relative instructions (which should also be fine in zSeries) might be the culprit... Admittedly - this are all guesses, and could use the watchful eye of some serious performance tester. - Dave Rivers - -- [EMAIL PROTECTED] Work: (919) 676-0847 Get your mainframe programming tools at http://www.dignus.com