1
0
mirror of https://github.com/golang/go synced 2024-11-21 23:54:40 -07:00

peep: more bugs

R=r
CC=golang-dev
https://golang.org/cl/4176042
This commit is contained in:
Ken Thompson 2011-02-09 16:03:02 -08:00
parent 4438f50293
commit cc4d57abac
2 changed files with 10 additions and 7 deletions

View File

@ -339,7 +339,8 @@ subprop(Reg *r0)
case AMULLU: case AMULLU:
case AMULA: case AMULA:
// case AMVN: case AMVN:
return 0;
case ACMN: case ACMN:
case AADD: case AADD:
@ -985,6 +986,8 @@ copyu(Prog *p, Adr *v, Adr *s)
case AMOVHU: case AMOVHU:
case AMOVB: case AMOVB:
case AMOVBU: case AMOVBU:
case AMOVFW:
case AMOVWF:
case AMOVDW: case AMOVDW:
case AMOVWD: case AMOVWD:
case AMOVFD: case AMOVFD:
@ -1020,7 +1023,7 @@ copyu(Prog *p, Adr *v, Adr *s)
case AMULLU: /* read, read, write, write */ case AMULLU: /* read, read, write, write */
case AMULA: case AMULA:
// case AMVN: case AMVN:
return 2; return 2;
case AADD: /* read, read, write */ case AADD: /* read, read, write */
@ -1192,15 +1195,15 @@ copyau(Adr *a, Adr *v)
return 1; return 1;
if(v->type == D_REG) { if(v->type == D_REG) {
if(a->type == D_CONST && a->reg != NREG) { if(a->type == D_CONST && a->reg != NREG) {
if(v->reg == a->reg) if(a->reg == v->reg)
return 1; return 1;
} else } else
if(a->type == D_OREG) { if(a->type == D_OREG) {
if(v->reg == a->reg) if(a->reg == v->reg)
return 1; return 1;
} else } else
if(a->type == D_REGREG) { if(a->type == D_REGREG) {
if(v->reg == a->reg) if(a->reg == v->reg)
return 1; return 1;
if(a->offset == v->reg) if(a->offset == v->reg)
return 1; return 1;

View File

@ -140,10 +140,10 @@ regopt(Prog *firstp)
if(first == 0) { if(first == 0) {
fmtinstall('Q', Qconv); fmtinstall('Q', Qconv);
} }
first++;
first++;
if(debug['K']) { if(debug['K']) {
if(first != 2) if(first != 13)
return; return;
// debug['R'] = 2; // debug['R'] = 2;
// debug['P'] = 2; // debug['P'] = 2;