Browse Source

refine width of parsb/ub/sh/uh ops

Quentin Carbonneaux 3 years ago
parent
commit
bda9f2833c
1 changed files with 2 additions and 0 deletions
  1. 2 0
      ssa.c

+ 2 - 0
ssa.c

@@ -77,6 +77,8 @@ filluse(Fn *fn)
 			if (!req(i->to, R)) {
 			if (!req(i->to, R)) {
 				assert(rtype(i->to) == RTmp);
 				assert(rtype(i->to) == RTmp);
 				w = WFull;
 				w = WFull;
+				if (isparbh(i->op))
+					w = Wsb + (i->op - Oparsb);
 				if (isload(i->op) && i->op != Oload)
 				if (isload(i->op) && i->op != Oload)
 					w = Wsb + (i->op - Oloadsb);
 					w = Wsb + (i->op - Oloadsb);
 				if (isext(i->op))
 				if (isext(i->op))