Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
# include "t.h"
2
/* tr.c: number register allocation */
3
char	*nregs[] = {
4
	/* this array must have at least 3*qcol entries
5
	   or illegal register names will result */
6
	"40", "41", "42", "43", "44", "45", "46", "47", "48", "49",
7
	"50", "51", "52", "53", "54", "55", "56", "57", "58", "59",
8
	"60", "61", "62", "63", "64", "65", "66", "67", "68", "69",
9
	"70", "71", "72", "73", "74", "75", "76", "77", "78", "79",
10
	"80", "81", "82", "83", "84", "85", "86", "87", "88", "89",
11
	"90", "91", "92", "93", "94", "95", "96", "97", "4q", "4r",
12
	"4s", "4t", "4u", "4v", "4w", "4x", "4y", "4z", "4;", "4.",
13
	"4a", "4b", "4c", "4d", "4e", "4f", "4g", "4h", "4i", "4j",
14
	"4k", "4l", "4m", "4n", "4o", "4p", "5a", "5b", "5c", "5d",
15
	"5e", "5f", "5g", "5h", "5i", "5j", "5k", "5l", "5m", "5n",
16
	"5o", "5p", "5q", "5r", "5s", "5t", "5u", "5v", "5w", "5x",
17
 
18
};
19
 
20
char *
21
reg(int col, int place)
22
{
23
	if (nelem(nregs) - 1 < 3 * qcol)
24
		error("Too many columns for registers");
25
	return (nregs[qcol*place+col]);
26
}