Patrick Welche <prlw1@cam.ac.uk>
[netbsd-mini2440.git] / usr.bin / yacc / NOTES
blobd659f48db5ff9d2e6c50d80f406a59b002af8265
1 $NetBSD: NOTES,v 1.2 1997/07/25 16:46:29 perry Exp $
3 Berkeley Yacc reflects its origins.  The reason so many routines
4 use exactly six register variables is that Berkeley Yacc was
5 developed on a VAX using PCC.  PCC placed at most six variables
6 in registers.  I went to considerable effort to find which six
7 variables most belonged in registers.  Changes in machines and
8 compilers make that effort worthless, perhaps even harmful.
10 [Given the previous paragraph, and the fact that GCC does not respect
11  register declarations, and the fact that much of the rest of the
12  4.4lite2 release had "register" declarations extirpated, I've removed
13  most of the register declarations from the code. I left them in the
14  generated skeleton code "for the hell of it" but they probably should
15  go from there, too. -- pm, July 1997]
17 [I totally removed the register stuff; we've deprecated it elsewhere
18  in the tree now -- lukem, October 1997]
20 The code contains many instances where address calculations are
21 performed in particular ways to optimize the code for the VAX.