** check whether list has any jump that do not produce a value ** (or produce an inverted value) */
| 120 | ** (or produce an inverted value) |
| 121 | */ |
| 122 | static int need_value (FuncState *fs, int list) { |
| 123 | for (; list != NO_JUMP; list = getjump(fs, list)) { |
| 124 | Instruction i = *getjumpcontrol(fs, list); |
| 125 | if (GET_OPCODE(i) != OP_TESTSET) return 1; |
| 126 | } |
| 127 | return 0; /* not found */ |
| 128 | } |
| 129 | |
| 130 | |
| 131 | static int patchtestreg (FuncState *fs, int node, int reg) { |
no test coverage detected