| 1456 | } |
| 1457 | |
| 1458 | void N64Recomp::LiveGenerator::emit_label(const std::string& label_name) const { |
| 1459 | sljit_label* label = sljit_emit_label(compiler); |
| 1460 | |
| 1461 | // Check if there are any pending jumps for this label and assign them if so. |
| 1462 | auto find_it = context->pending_jumps.find(label_name); |
| 1463 | if (find_it != context->pending_jumps.end()) { |
| 1464 | for (sljit_jump* jump : find_it->second) { |
| 1465 | sljit_set_label(jump, label); |
| 1466 | } |
| 1467 | |
| 1468 | // Remove the pending jumps for this label. |
| 1469 | context->pending_jumps.erase(find_it); |
| 1470 | } |
| 1471 | |
| 1472 | context->labels.emplace(label_name, label); |
| 1473 | } |
| 1474 | |
| 1475 | void N64Recomp::LiveGenerator::emit_jtbl_addend_declaration(const JumpTable& jtbl, int reg) const { |
| 1476 | (void)jtbl; |
nothing calls this directly
no outgoing calls
no test coverage detected