1*333e4288Schristos$NetBSD: NOTES,v 1.2 2009/10/29 00:56:19 christos Exp $ 2*333e4288Schristos 3f7a86c12SchristosBerkeley Yacc reflects its origins. The reason so many routines 4f7a86c12Schristosuse exactly six register variables is that Berkeley Yacc was 5f7a86c12Schristosdeveloped on a VAX using PCC. PCC placed at most six variables 6f7a86c12Schristosin registers. I went to considerable effort to find which six 7f7a86c12Schristosvariables most belonged in registers. Changes in machines and 8f7a86c12Schristoscompilers make that effort worthless, perhaps even harmful. 9f7a86c12Schristos 10*333e4288Schristos[Given the previous paragraph, and the fact that GCC does not respect 11*333e4288Schristos register declarations, and the fact that much of the rest of the 12*333e4288Schristos 4.4lite2 release had "register" declarations extirpated, I've removed 13*333e4288Schristos most of the register declarations from the code. I left them in the 14*333e4288Schristos generated skeleton code "for the hell of it" but they probably should 15*333e4288Schristos go from there, too. -- pm, July 1997] 16*333e4288Schristos 17*333e4288Schristos[I totally removed the register stuff; we've deprecated it elsewhere 18*333e4288Schristos in the tree now -- lukem, October 1997] 19*333e4288Schristos 20f7a86c12SchristosThe code contains many instances where address calculations are 21f7a86c12Schristosperformed in particular ways to optimize the code for the VAX. 22