(top int, save *int, reg *int, inc int)
| 222 | } |
| 223 | |
| 224 | func (cd *codeStore) PropagateMV(top int, save *int, reg *int, inc int) { |
| 225 | lastinst := cd.Last() |
| 226 | if opGetArgA(lastinst) >= top { |
| 227 | switch opGetOpCode(lastinst) { |
| 228 | case OP_MOVE: |
| 229 | cd.Pop() |
| 230 | *save = opGetArgB(lastinst) |
| 231 | return |
| 232 | } |
| 233 | } |
| 234 | *save = *reg |
| 235 | *reg = *reg + inc |
| 236 | } |
| 237 | |
| 238 | func (cd *codeStore) AddLoadNil(a, b, line int) { |
| 239 | // this method used to merge multiple consecutive LOADNIL instructions |
nothing calls this directly
no test coverage detected