These loads clobbered ebx as TinyCC wanted to load the address into st0.
Unified · Split
| @@ -229,8 +229,10 @@ ST_FUNC void load(int r, SValue *sv) · 228 unmodified lines | |||
| 229 | v1.type.t = VT_INT; | 229 | v1.type.t = VT_INT; |
| 230 | v1.r = VT_LOCAL | VT_LVAL; | 230 | v1.r = VT_LOCAL | VT_LVAL; |
| 231 | v1.c.ul = fc; | 231 | v1.c.ul = fc; |
| 232 | load(r, &v1); | ||
| 233 | fr = r; | 232 | fr = r; |
| 233 | if (!(reg_classes[fr] & RC_INT)) | ||
| 234 | fr = get_reg(RC_INT); | ||
| 235 | load(fr, &v1); | ||
| 234 | } | 236 | } |
| 235 | if ((ft & VT_BTYPE) == VT_FLOAT) { | 237 | if ((ft & VT_BTYPE) == VT_FLOAT) { |
| 236 | o(0xd9); /* flds */ | 238 | o(0xd9); /* flds */ |