15 PC_FETCH_init =
ExprId(
"PC_FETCH_init")
17 regs32_str = [
"ZERO",
'AT',
'V0',
'V1'] +\
18 [
'A%d'%i
for i
in xrange(4)] +\
19 [
'T%d'%i
for i
in xrange(8)] +\
20 [
'S%d'%i
for i
in xrange(8)] +\
21 [
'T%d'%i
for i
in xrange(8, 10)] +\
23 [
'GP',
'SP',
'FP',
'RA']
25 regs32_expr = [
ExprId(x, 32)
for x
in regs32_str]
27 regs_flt_str = [
'F%d'%i
for i
in xrange(0x20)]
29 regs_fcc_str = [
'FCC%d'%i
for i
in xrange(8)]
38 cpr0_str = [
"CPR0_%d"%x
for x
in xrange(0x100)]
40 cpr0_str[16] =
"ENTRYLO0"
41 cpr0_str[24] =
"ENTRYLO1"
42 cpr0_str[40] =
"PAGEMASK"
43 cpr0_str[72] =
"COUNT"
44 cpr0_str[80] =
"ENTRYHI"
45 cpr0_str[104] =
"CAUSE"
47 cpr0_str[128] =
"CONFIG"
48 cpr0_str[152] =
"WATCHHI"
50 regs_cpr0_expr, regs_cpr0_init, regs_cpr0_info =
gen_regs(cpr0_str, globals())
52 gpregs_expr, gpregs_init, gpregs =
gen_regs(regs32_str, globals())
53 regs_flt_expr, regs_flt_init, fltregs =
gen_regs(regs_flt_str, globals(), sz=64)
54 regs_fcc_expr, regs_fcc_init, fccregs =
gen_regs(regs_fcc_str, globals())
57 all_regs_ids = [PC, PC_FETCH, R_LO, R_HI] + gpregs_expr + regs_flt_expr + \
58 regs_fcc_expr + regs_cpr0_expr
59 all_regs_ids_byname = dict([(x.name, x)
for x
in all_regs_ids])
60 all_regs_ids_init = [PC_init, PC_FETCH_init, R_LO_init, R_HI_init] + \
61 gpregs_init + regs_flt_init + regs_fcc_init + regs_cpr0_init
62 all_regs_ids_no_alias = all_regs_ids[:]
65 for i, r
in enumerate(all_regs_ids):
66 regs_init[r] = all_regs_ids_init[i]