1Berkeley Yacc reflects its origins. The reason so many routines 2use exactly six register variables is that Berkeley Yacc was 3developed on a VAX using PCC. PCC placed at most six variables 4in registers. I went to considerable effort to find which six 5variables most belonged in registers. Changes in machines and 6compilers make that effort worthless, perhaps even harmful. 7 8The code contains many instances where address calculations are 9performed in particular ways to optimize the code for the VAX. 10