Home | History | Annotate | Download | only in x86

Lines Matching defs:jmp

148 yasm_x86__bc_transform_jmp(yasm_bytecode *bc, x86_jmp *jmp)
150 yasm_bc_transform(bc, &x86_bc_callback_jmp, jmp);
355 x86_jmp *jmp = (x86_jmp *)contents;
356 yasm_value_delete(&jmp->target);
448 const x86_jmp *jmp = (const x86_jmp *)contents;
452 yasm_value_print(&jmp->target, f, indent_level+1);
455 yasm_symrec_print(jmp->origin, f, indent_level+1);
458 if (jmp->shortop.len == 0)
461 x86_opcode_print(&jmp->shortop, f, indent_level+1);
463 if (jmp->nearop.len == 0)
466 x86_opcode_print(&jmp->nearop, f, indent_level+1);
468 switch (jmp->op_sel) {
488 x86_common_print(&jmp->common, f, indent_level);
668 x86_jmp *jmp = (x86_jmp *)bc->contents;
673 opersize = (jmp->common.opersize == 0) ?
674 jmp->common.mode_bits : jmp->common.opersize;
676 bc->len += x86_common_calc_len(&jmp->common);
678 if (jmp->op_sel == JMP_NEAR_FORCED || jmp->shortop.len == 0) {
679 if (jmp->nearop.len == 0) {
685 if (jmp->shortop.len == 0)
686 jmp->op_sel = JMP_NEAR;
687 bc->len += jmp->nearop.len;
692 if (jmp->op_sel == JMP_SHORT_FORCED || jmp->nearop.len == 0) {
693 if (jmp->shortop.len == 0) {
703 if (jmp->target.rel
704 && (!yasm_symrec_get_label(jmp->target.rel, &target_prevbc)
712 if (jmp->op_sel == JMP_SHORT_FORCED || jmp->nearop.len == 0) {
713 if (jmp->op_sel == JMP_NONE)
714 jmp->op_sel = JMP_SHORT;
715 bc->len += jmp->shortop.len + 1;
717 jmp->op_sel = JMP_NEAR;
718 bc->len += jmp->nearop.len;
725 if (jmp->op_sel == JMP_NONE)
726 jmp->op_sel = JMP_SHORT;
727 bc->len += jmp->shortop.len + 1;
728 add_span(add_span_data, bc, 1, &jmp->target, -128+(long)bc->len,
737 x86_jmp *jmp = (x86_jmp *)bc->contents;
744 opersize = (jmp->common.opersize == 0) ?
745 jmp->common.mode_bits : jmp->common.opersize;
747 if (jmp->op_sel == JMP_SHORT_FORCED || jmp->nearop.len == 0) {
752 if (jmp->op_sel == JMP_NEAR)
756 jmp->op_sel = JMP_NEAR;
757 bc->len -= jmp->shortop.len + 1;
758 bc->len += jmp->nearop.len;
914 x86_jmp *jmp = (x86_jmp *)bc->contents;
920 x86_common_tobytes(&jmp->common, bufp, 0);
923 opersize = (jmp->common.opersize == 0) ?
924 jmp->common.mode_bits : jmp->common.opersize;
927 switch (jmp->op_sel) {
931 if (jmp->shortop.len == 0)
935 x86_opcode_tobytes(&jmp->shortop, bufp);
939 if (!jmp->target.abs)
940 jmp->target.abs = yasm_expr_create_ident(yasm_expr_int(delta),
943 jmp->target.abs =
945 yasm_expr_expr(jmp->target.abs),
948 jmp->target.size = 8;
949 jmp->target.sign = 1;
950 if (output_value(&jmp->target, *bufp, 1,
958 if (jmp->nearop.len == 0) {
965 x86_opcode_tobytes(&jmp->nearop, bufp);
971 if (!jmp->target.abs)
972 jmp->target.abs = yasm_expr_create_ident(yasm_expr_int(delta),
975 jmp->target.abs =
977 yasm_expr_expr(jmp->target.abs),
980 jmp->target.size = i*8;
981 jmp->target.sign = 1;
982 if (output_value(&jmp->target, *bufp, i,