X86_PRE 55 core/vm-x86.c #define X86_MOV_RBP(reg, x) X86_PRE(); ASM(reg); ASM_MOV_EBP(0x45,x) X86_PRE 62 core/vm-x86.c X86_PRE(); ASM(0xb8); ASMN((PN)(x)); /* movq x, %rax */ \ X86_PRE 63 core/vm-x86.c X86_PRE(); ASM(0x89); ASM_MOV_EBP(0x45,reg) /* movq %rax, -A(%rbp) */ X86_PRE 107 core/vm-x86.c if (two) { X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55,op.b) } /* mov -B(%rbp) %edx */ \ X86_PRE 118 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(dbl_func); /* mov &dbl_func %rax */ \ X86_PRE 135 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55,op.a) /* mov -A(%rbp) %rdx */ \ X86_PRE 142 core/vm-x86.c X86_PRE(); ASM(0x39); ASM(0xC2); /* both_int: cmp %rax, %rdx */ \ X86_PRE 151 core/vm-x86.c X86_PRE(); ASMS("\xd1\xf8"); /* sar %rax */ \ X86_PRE 152 core/vm-x86.c ASM(0xF2);X86_PRE();ASMS("\x0f\x2a\xc8"); /* cvtsi2sd %rax, %xmm1 [b] */ \ X86_PRE 160 core/vm-x86.c X86_PRE(); ASMS("\xd1\xfa"); /* sar %rdx */ \ X86_PRE 161 core/vm-x86.c ASM(0xF2);X86_PRE();ASMS("\x0f\x2a\xc2"); /* cvtsi2sd %rdx, %xmm0 [a] */ \ X86_PRE 180 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55,op.a) /* mov -A(%rbp) %rdx */ \ X86_PRE 182 core/vm-x86.c X86_PRE(); ASM(0x39); ASM(0xC2); /* cmpq %rax, %rdx */ \ X86_PRE 189 core/vm-x86.c X86_PRE(); ASM(0xa9), ASMI(-8); /* testq $-8, %rax */ \ X86_PRE 194 core/vm-x86.c X86_PRE();ASMS("\x8b\x40");ASM(PN_SIZE_T); /* movl 8(%rax), %rax */ \ X86_PRE 204 core/vm-x86.c X86_PRE(); ASM(0xa9), ASMI(-8); /* testq $-8, %rax */ \ X86_PRE 209 core/vm-x86.c X86_PRE();ASMS("\x8b\x40");ASM(PN_SIZE_T); /* movl 8(%rax), %rax */ \ X86_PRE 220 core/vm-x86.c X86_PRE();ASMS("\xd1\xf8"); /* sarq %rax */ \ X86_PRE 221 core/vm-x86.c ASM(0xF2);X86_PRE();ASMS("\x0f\x2a\xc8"); /* cvtsi2sd %rax, %xmm1 [a] */ \ X86_PRE 228 core/vm-x86.c X86_PRE();ASMS("\xd1\xf8"); /* sarq %rax */ \ X86_PRE 229 core/vm-x86.c ASM(0xF2);X86_PRE();ASMS("\x0f\x2a\xc0"); /* cvtsi2sd %rax, %xmm0 [b] */ \ X86_PRE 268 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_x86_debug); \ X86_PRE 358 core/vm-x86.c X86_PRE(); ASM(0xc7); ASM(0xc7); ASMI(regn); X86_PRE 360 core/vm-x86.c X86_PRE(); ASM(out ? 0x8b : 0x89); ASM_MOV_EBP(0x7d,regn) // mov -regn(%rbp), %rdi X86_PRE 365 core/vm-x86.c X86_PRE(); ASM(0xc7); ASM(0xc6); ASMI(regn); X86_PRE 367 core/vm-x86.c X86_PRE(); ASM(out ? 0x8b : 0x89); ASM_MOV_EBP(0x75,regn) X86_PRE 372 core/vm-x86.c X86_PRE(); ASM(0xc7); ASM(0xc2); ASMI(regn); X86_PRE 374 core/vm-x86.c X86_PRE(); ASM(out ? 0x8b : 0x89); ASM_MOV_EBP(0x55,regn) X86_PRE 379 core/vm-x86.c X86_PRE(); ASM(0xc7); ASM(0xc1); ASMI(regn); X86_PRE 381 core/vm-x86.c X86_PRE(); ASM(out ? 0x8b : 0x89); ASM_MOV_EBP(0x4d,regn) X86_PRE 400 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x5d,regn) // mov %rbp(A) %rbx X86_PRE 402 core/vm-x86.c X86_PRE(); ASMS("\x89\x1c\x24"); // mov %rbx (%rsp) X86_PRE 404 core/vm-x86.c X86_PRE(); ASMS("\x89\x5c\x24"); ASM((argn - 6) * sizeof(PN)); // mov %rbx N(%rsp) X86_PRE 407 core/vm-x86.c X86_PRE(); ASM(0x8b); ASM(0x5d); ASM((argn - 4) * sizeof(PN)); X86_PRE 408 core/vm-x86.c X86_PRE(); ASM(0x89); ASM_MOV_EBP(0x5d,regn) // mov %rbp(A) %rbx X86_PRE 417 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0xE5); // mov %rsp,%rbp X86_PRE 427 core/vm-x86.c X86_PRE(); ASM(0x81); ASM(0xEC); ASMI(rsp); // sub rsp, %esp X86_PRE 429 core/vm-x86.c X86_PRE(); ASM(0x83); ASM(0xEC); ASM(rsp); // sub rsp, %esp X86_PRE 459 core/vm-x86.c X86_PRE(); ASM(0x8B); // mov n(%eax), %eax X86_PRE 489 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_f_values); // mov &potion_f_values %rax X86_PRE 491 core/vm-x86.c X86_PRE(); ASM(0x05); ASMI(sizeof(struct PNTuple) X86_PRE 493 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM(0); // mov (%rax) %rax X86_PRE 516 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM(0x40); X86_PRE 527 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55, op.a) // mov %rsp(A) %rdx X86_PRE 536 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0x50); X86_PRE 539 core/vm-x86.c X86_PRE(); ASM(0x89); ASM_MOV_EBP(0x55, regs + op.b)// a: mov %rdx %rsp(B) X86_PRE 546 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM(0x40); ASM(sizeof(struct PNObject)); X86_PRE 554 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55, op.a) // mov -A(%rbp) %edx X86_PRE 556 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0x50); ASM(sizeof(struct PNObject));// mov %rdx %rax.data X86_PRE 564 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_define_global); // mov &potion_define_global, %rax X86_PRE 567 core/vm-x86.c X86_PRE(); ASM(0x89); ASM_MOV_EBP(0x45, op.a) // mov %eax -A(%rbp) X86_PRE 573 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_tuple_empty);// mov &potion_tuple_empty %rax X86_PRE 583 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_fwd); // mov &potion_fwd, %rax X86_PRE 586 core/vm-x86.c X86_PRE();ASM(0x8b);ASM_MOV_EBP(0x55,op.b-ASM_TPL_IMM); // mov -B-1024(%rbp) %rdx X86_PRE 587 core/vm-x86.c X86_PRE();ASMS("\xd1\xea"); // shr %rdx,1 X86_PRE 589 core/vm-x86.c X86_PRE();ASM(0x8b);ASM(0x44);ASM((5+PN_SIZE_T)<<4);ASM(0x10);// mov 0x10(%rax,%rdx,PN_SIZE_T),%rax X86_PRE 591 core/vm-x86.c X86_PRE();ASM(0xc7);ASM(0xc2);ASMI(op.b+2); // mov B+$2, %rdx #PNTuple+2 X86_PRE 592 core/vm-x86.c X86_PRE();ASM(0x8b);ASM(0x04);ASM((5+PN_SIZE_T)<<4);// mov (%rax,%rdx,PN_SIZE_T),%rax X86_PRE 603 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_tuple_push);// mov &potion_tuple_push %rax X86_PRE 614 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_table_at); // mov &potion_table_set %rax X86_PRE 625 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_table_set); // mov &potion_table_set %rax X86_PRE 648 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_lick); // mov &potion_lick %rax X86_PRE 658 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_obj_get); // mov &potion_obj_get %rax X86_PRE 669 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_obj_set); // mov &potion_obj_set %rax X86_PRE 676 core/vm-x86.c X86_PRE(); ASMS("\x8D\x44\x10\xFF"); // lea -1(%eax,%edx,1),%eax X86_PRE 684 core/vm-x86.c X86_PRE(); ASM(0x29); ASM(0xD0); // sub %edx %eax X86_PRE 686 core/vm-x86.c X86_PRE(); ASM(0xFF); ASM(0xC0); // inc %eax X86_PRE 693 core/vm-x86.c X86_PRE(); ASMS("\xD1\xFA"); // sar %rdx X86_PRE 694 core/vm-x86.c X86_PRE(); ASMS("\xFF\xC8"); // dec %rax X86_PRE 695 core/vm-x86.c X86_PRE(); ASMS("\x0F\xAF\xC2"); // imul %rdx %rax X86_PRE 697 core/vm-x86.c X86_PRE(); ASMS("\xFF\xC0"); // inc %rax X86_PRE 732 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_num_pow);// mov &potion_num_pow %rax X86_PRE 742 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_vm_neq); // mov &potion_vm_neq %rax X86_PRE 754 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_vm_eq); // mov &potion_vm_eq %rax X86_PRE 792 core/vm-x86.c X86_PRE(); ASM(0xF7); ASM(0xD0); // not %eax X86_PRE 793 core/vm-x86.c X86_PRE(); ASM(0xFF); ASM(0xC0); // inc %rax X86_PRE 829 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_def_method); // mov &potion_def_method %rax X86_PRE 839 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_bind); // mov &potion_bind %rax X86_PRE 849 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_message); // mov &potion_message %rax X86_PRE 863 core/vm-x86.c X86_PRE(); ASM(0x83); ASM(0xF8); ASM(PN_FALSE); // cmp FALSE %rax X86_PRE 865 core/vm-x86.c X86_PRE(); ASM(0x85); ASM(0xC0); // test %rax %rax X86_PRE 889 core/vm-x86.c X86_PRE(); ASM(0x83); ASM(0xF8); ASM(PN_FALSE); // cmp FALSE %rax X86_PRE 891 core/vm-x86.c X86_PRE(); ASM(0x85); ASM(0xC0); // test %rax %rax X86_PRE 900 core/vm-x86.c X86_PRE(); ASM(0x83); ASM(0xF8); ASM(PN_FALSE); // cmp FALSE %rax X86_PRE 902 core/vm-x86.c X86_PRE(); ASM(0x85); ASM(0xC0); // test %rax %rax X86_PRE 914 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_sig_find); // mov &potion_sig_find %rax X86_PRE 919 core/vm-x86.c X86_PRE(); ASM(0xF7); ASM(0xD8); // neg %rax X86_PRE 920 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55, op.b) // mov -B(%rbp) %rdx X86_PRE 926 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0x94); ASM(0xC5); ASM(RBP(op.a + 2)); ASM(0xff); ASM(0xff); X86_PRE 928 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0x54); ASM(0xC5); ASM(RBP(op.a + 2)); // mov %rdx -A(%rbp,%rax,8) X86_PRE 941 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x45, op.a) // mov %rbp(A) %rax X86_PRE 948 core/vm-x86.c X86_PRE(); ASM(0x83); ASM(0xE0); ASM(0xF8); // and ~PRIMITIVE %rax X86_PRE 956 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_object_new); // mov &potion_object_new %rax X86_PRE 959 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x45, op.a) // mov %rbp(A) %rax X86_PRE 960 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM(0x40); X86_PRE 963 core/vm-x86.c X86_PRE(); ASM(0x89); ASM_MOV_EBP(0x45, op.a) // mov %rax %rbp(A) X86_PRE 977 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_obj_get_call); // mov &potion_obj_get_call %rax X86_PRE 984 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x45, op.a) // d: mov %rbp(A) %rax X86_PRE 987 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM(0x40); X86_PRE 1016 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0x45); ASM(RBP(op.a)); // mov %rbp(A) %rax X86_PRE 1023 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_obj_get_callset); // mov &potion_obj_get %rax X86_PRE 1055 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_f_protos); // mov &potion_f_values %rax X86_PRE 1064 core/vm-x86.c X86_PRE(); ASM(0x8B); ASM_MOV_EBP(0x55, lregs + opp.b) // mov upval %rdx X86_PRE 1068 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_ref); // mov &potion_ref %rax X86_PRE 1070 core/vm-x86.c X86_PRE(); ASM(0x89); ASM(0xC2); // mov %rax %rdx X86_PRE 1076 core/vm-x86.c X86_PRE(); ASM(0x89); // mov %rdx N(%rax) X86_PRE 1088 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(potion_vm_class); // mov &potion_vm_class %rax X86_PRE 1108 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(kh_val(PN, vt->methods, k - 1)); // mov CL %rax X86_PRE 1147 core/vm-x86.c X86_PRE(); ASM(0xB8); ASMN(-1); // mov -1 %rax