Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Moving VAX into 21 century :-)



On Tue, Aug 27, 2019 at 02:13:46PM -0400, Paul Koning wrote:
> 
> 
> > On Aug 27, 2019, at 2:07 PM, Thor Lancelot Simon <tls%panix.com@localhost> wrote:
> > 
> > On Mon, Aug 26, 2019 at 09:56:51AM -0400, Paul Koning wrote:
> >> 
> >> 
> >>> On Aug 26, 2019, at 8:08 AM, Anders Magnusson <ragge%ludd.ltu.se@localhost> wrote:
> >>> 
> >>> Hi all,
> >>> 
> >>> I have been looking at some VAX problems lately, and have found out that there are two architectural things things that probably would help VAX quite much.
> >>> 
> >>> 1) Change calling convention.
> >>>    As described in my previous mail, it would solve a very old well-known performance problem.
> >> 
> >> You could of course change the code generator in GCC to do that.  It would be an ABI change, with far reaching impact.  Stack trace (GDB and elsewhere) would be completely different.  Function prologues would have to do register saving (not too difficult).  Exception handling would need to be redesigned.
> > 
> > Doesn't GCC already support this?  I have a fairly strong recollection of a -m switch for this existing in
> > GCC in the early 1990s.
> 
> GCC has supported exception handling for ages, after all C++ needs it.  But it depends on work in the back end to teach it how to do that.  VAX, with the standard ABI, makes this very easy, but it still needs back end code to convey that to the GCC core.

Leaving exception handling aside, I believe that at some point in its history GCC on VAX supported the
alternate calling convention we're discussing here.  Is that support gone, or did I perhaps just imagine
it?  It's also possible it was a local patch at MIT or Columbia or somewhere else I was in the early-mid 90s.

Thor


Home | Main Index | Thread Index | Old Index