| 752 | inline op get_label(out INT, invar PMC) { |
| 753 | void *ptr = VTABLE_get_pointer(interp, $2); |
| 754 | $1 = PTR2OPCODE_T(ptr); |
| 755 | } |
| 756 | |
| 757 | =item B<set_label>(invar PMC, inconst LABEL) |
| 758 | |
| 759 | Sets the target label for PMCs that need an opcode_t label destination. |
| 760 | |
| 761 | =item B<set_label(invar PMC, invar LABEL) |
| 762 | |
| 763 | Sets the target label for PMCs that need an opcode_t label destination. |
| 764 | |
| 765 | =item B<get_label(out INT, invar PMC) |
| 766 | |
| 767 | Gets the label from the given PMC |
| 768 | |
| 769 | =cut |
| 770 | |
| 771 | inline op set_label(invar PMC, inconst LABEL) { |
| 772 | VTABLE_set_pointer(interp, $1, (CUR_OPCODE + 2)); |
| 773 | } |
| 774 | |
| 775 | inline op set_label(invar PMC, invar LABEL) { |
| 776 | VTABLE_set_pointer(interp, $1, (void*)$2); |
| 777 | } |
| 778 | |
| 779 | |