/openjdk7/hotspot/src/cpu/x86/vm/ |
H A D | interpreter_x86_32.cpp | 52 #define __ _masm-> macro 57 address entry = __ pc(); 62 __ mov(rcx, rsp); 63 __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::slow_signature_handler), rbx, rdi, rcx); 64 __ ret(0); 86 address entry_point = __ pc(); 91 __ cmp32(ExternalAddress(SafepointSynchronize::address_of_state()), 93 __ jcc(Assembler::notEqual, slow_path); 99 __ pop(rax); 100 __ mo [all...] |
H A D | templateInterpreter_x86_32.cpp | 48 #define __ _masm-> macro 59 address entry = __ pc(); 66 __ lea(rax, Address(rbp, 68 __ cmpptr(rax, rsp); // rax, = maximal rsp for current rbp, 70 __ jcc(Assembler::aboveEqual, L); // check if frame is complete 71 __ stop ("interpreter frame not set up"); 72 __ bind(L); 77 __ restore_bcp(); 81 __ empty_expression_stack(); 82 __ empty_FPU_stac [all...] |
H A D | interpreter_x86_64.cpp | 52 #define __ _masm-> macro 57 address entry = __ pc(); 62 __ mov(c_rarg3, rsp); 64 __ subptr(rsp, 4 * wordSize); 65 __ call_VM(noreg, 83 __ movl(c_rarg3, Address(rsp, 3 * wordSize)); // float/double identifiers 89 __ testl(c_rarg3, 1 << (i*2)); // Float or Double? 90 __ jcc(Assembler::notZero, isfloatordouble); 95 __ movl(rscratch1, Address(rbx, methodOopDesc::access_flags_offset())); 96 __ test [all...] |
H A D | stubGenerator_x86_64.cpp | 61 #define __ _masm-> macro 68 #define BLOCK_COMMENT(str) __ block_comment(str) 99 __ incrementl(ExternalAddress((address)&counter)); 233 address start = __ pc(); 256 __ enter(); 257 __ subptr(rsp, -rsp_after_call_off * wordSize); 261 __ movptr(parameters, c_rarg5); // parameters 262 __ movptr(entry_point, c_rarg4); // entry_point 265 __ movptr(method, c_rarg3); // method 266 __ mov 3617 #undef __ macro 3618 #define __ macro [all...] |
H A D | templateInterpreter_x86_64.cpp | 48 #define __ _masm-> macro 59 address entry = __ pc(); 64 __ lea(rax, Address(rbp, 67 __ cmpptr(rax, rsp); // rax = maximal rsp for current rbp (stack 69 __ jcc(Assembler::aboveEqual, L); // check if frame is complete 70 __ stop ("interpreter frame not set up"); 71 __ bind(L); 76 __ restore_bcp(); 80 __ empty_expression_stack(); 82 __ call_V [all...] |
H A D | templateTable_x86_32.cpp | 40 #define __ _masm-> macro 136 __ movl(rdx, obj.base()); 139 __ leal(rdx, obj); 141 __ get_thread(rcx); 142 __ save_bcp(); 143 __ g1_write_barrier_pre(rdx /* obj */, 153 __ movptr(Address(rdx, 0), NULL_WORD); 156 __ movl(Address(rdx, 0), val); 157 __ g1_write_barrier_post(rdx /* store_adr */, 163 __ restore_bc [all...] |
H A D | templateTable_x86_64.cpp | 40 #define __ _masm-> macro 145 __ movq(rdx, obj.base()); 148 __ leaq(rdx, obj); 150 __ g1_write_barrier_pre(rdx /* obj */, 157 __ store_heap_oop_null(Address(rdx, 0)); 163 __ movptr(new_val, val); 165 __ store_heap_oop(Address(rdx, 0), val); 166 __ g1_write_barrier_post(rdx /* store_adr */, 179 __ store_heap_oop_null(obj); 181 __ store_heap_oo [all...] |
H A D | icache_x86.cpp | 29 #define __ _masm-> macro 34 address start = __ pc(); 43 __ testl(lines, lines); 44 __ jcc(Assembler::zero, done); 48 __ mfence(); 50 __ bind(flush_line); 51 __ clflush(Address(addr, 0)); 52 __ addptr(addr, ICache::line_size); 53 __ decrementl(lines); 54 __ jc 71 #undef __ macro [all...] |
H A D | dump_x86_64.cpp | 55 #define __ masm-> macro 85 __ movl(rax, (i << 8) + j); 86 __ jmp(common_code); 90 __ bind(common_code); 96 __ push(c_rarg1); // save & free register 97 __ push(c_rarg0); // save "this" 98 __ mov(c_rarg0, rax); 99 __ shrptr(c_rarg0, 8); // isolate vtable identifier. 100 __ shlptr(c_rarg0, LogBytesPerWord); 101 __ le [all...] |
H A D | vm_version_x86.cpp | 79 # define __ _masm-> macro 81 address start = __ pc(); 88 __ push(rbp); 90 __ mov(rbp, c_rarg0); // cpuid_info address 92 __ movptr(rbp, Address(rsp, 8)); // cpuid_info address 94 __ push(rbx); 95 __ push(rsi); 96 __ pushf(); // preserve rbx, and flags 97 __ pop(rax); 98 __ pus 334 # undef __ macro [all...] |
H A D | cppInterpreter_x86.cpp | 65 #define __ _masm-> macro 123 address entry = __ pc(); 125 case T_BOOLEAN: __ c2bool(rax); break; 126 case T_CHAR : __ andl(rax, 0xFFFF); break; 127 case T_BYTE : __ sign_extend_byte (rax); break; 128 case T_SHORT : __ sign_extend_short(rax); break; 137 __ pop(t); // remove return address first 144 __ fld_d(Address(rsp, 0)); 146 __ fstp_s(Address(rsp, 0)); 149 __ movfl [all...] |
H A D | stubGenerator_x86_32.cpp | 61 #define __ _masm-> macro 67 #define BLOCK_COMMENT(str) __ block_comment(str) 100 __ incrementl(ExternalAddress((address)&counter)); 148 address start = __ pc(); 169 __ enter(); 170 __ movptr(rcx, parameter_size); // parameter counter 171 __ shlptr(rcx, Interpreter::logStackElementSize); // convert parameter count to bytes 172 __ addptr(rcx, locals_count_in_bytes); // reserve space for register saves 173 __ subptr(rsp, rcx); 174 __ andpt 2762 #undef __ macro 2763 #define __ macro [all...] |
H A D | runtime_x86_32.cpp | 43 #define __ masm-> macro 91 address start = __ pc(); 93 __ push(rdx); 94 __ subptr(rsp, return_off * wordSize); // Prolog! 97 __ movptr(Address(rsp,rbp_off *wordSize), rbp); 102 __ get_thread(rcx); 103 __ movptr(Address(rcx, JavaThread::exception_oop_offset()), rax); 104 __ movptr(Address(rcx, JavaThread::exception_pc_offset()), rdx); 112 __ movptr(Address(rsp, thread_off * wordSize), rcx); // Thread is first argument 113 __ set_last_Java_fram [all...] |
H A D | dump_x86_32.cpp | 55 #define __ masm-> macro 85 __ movl(rax, (i << 8) + j); 86 __ jmp(common_code); 90 __ bind(common_code); 104 __ push(rcx); // save "this" 106 __ mov(rcx, rax); 107 __ shrptr(rcx, 8); // isolate vtable identifier. 108 __ shlptr(rcx, LogBytesPerWord); 111 __ movptr(rdx, ArrayAddress(vtbl, index)); // get correct vtable address. 113 __ po [all...] |
H A D | jniFastGetField_x86_64.cpp | 32 #define __ masm-> macro 68 address fast_entry = __ pc(); 73 __ mov32 (rcounter, counter); 74 __ mov (robj, c_rarg1); 75 __ testb (rcounter, 1); 76 __ jcc (Assembler::notZero, slow); 78 __ xorptr(robj, rcounter); 79 __ xorptr(robj, rcounter); // obj, since 83 __ movptr(robj, Address(robj, 0)); // *obj 84 __ mo [all...] |
/openjdk7/hotspot/src/cpu/sparc/vm/ |
H A D | icache_sparc.cpp | 29 #define __ _masm-> macro 35 address start = __ pc(); 38 __ bind(L); 39 __ flush( O0, G0 ); 40 __ deccc( O1 ); 41 __ br(Assembler::positive, false, Assembler::pn, L); 42 __ delayed()->inc( O0, 8 ); 43 __ retl(false); 44 __ delayed()->mov( O2, O0 ); // handshake with caller to make sure it happened! 50 #undef __ macro [all...] |
H A D | runtime_sparc.cpp | 43 #define __ masm-> macro 80 int framesize_in_bytes = __ total_frame_size_in_bytes(0); 86 int start = __ offset(); 88 __ verify_thread(); 89 __ st_ptr(Oexception, G2_thread, JavaThread::exception_oop_offset()); 90 __ st_ptr(Oissuing_pc, G2_thread, JavaThread::exception_pc_offset()); 101 __ save_frame(0); 103 __ mov(G2_thread, O0); 104 __ set_last_Java_frame(SP, noreg); 105 __ save_threa [all...] |
H A D | templateInterpreter_sparc.cpp | 60 #define __ _masm-> macro 74 __ stf(FloatRegisterImpl::D, F0, d_tmp); 76 __ stx(O0, l_tmp); 78 __ std(O0, l_tmp); 87 __ ldf(FloatRegisterImpl::D, d_tmp, F0); 89 __ ldx(l_tmp, O0); 91 __ ldd(l_tmp, O0); 97 address entry = __ pc(); 99 __ empty_expression_stack(); 101 __ se [all...] |
H A D | stubGenerator_sparc.cpp | 55 #define __ _masm-> macro 60 #define BLOCK_COMMENT(str) __ block_comment(str) 96 __ inc_counter(&counter, t1, t2); 104 address start = __ pc(); 145 __ ld_ptr(thread.as_address(), G2_thread); 146 __ reinit_heapbase(); 152 __ ld_ptr(G2_thread, in_bytes(Thread::pending_exception_offset()), t); 153 __ br_null_short(t, Assembler::pt, L); 154 __ stop("StubRoutines::call_stub: entered with pending exception"); 155 __ bin 436 #undef __ macro 437 #define __ macro 508 #undef __ macro 509 #define __ macro [all...] |
H A D | interpreter_sparc.cpp | 59 #define __ _masm-> macro 90 address entry = __ pc(); 96 __ set_last_Java_frame(FP, noreg); 98 __ mov(O7, I7); 99 __ mov(Lmethod, G3_scratch); 100 __ mov(Llocals, G4_scratch); 101 __ save_frame(0); 102 __ mov(G2_thread, L7_thread_cache); 103 __ add(argv.address_in_frame(), O3); 104 __ mo [all...] |
H A D | jniFastGetField_sparc.cpp | 35 #define __ masm-> macro 60 address fast_entry = __ pc(); 65 __ sethi (cnt_addrlit, O3); 67 __ ld (cnt_addr, G4); 68 __ andcc (G4, 1, G0); 69 __ br (Assembler::notZero, false, Assembler::pn, label1); 70 __ delayed()->srl (O2, 2, O4); 71 __ ld_ptr (O1, 0, O5); 74 speculative_load_pclist[count] = __ pc(); 76 case T_BOOLEAN: __ ldu [all...] |
H A D | cppInterpreter_sparc.cpp | 68 #define __ _masm-> macro 89 __ stf(FloatRegisterImpl::D, F0, STATE(_native_fresult)); 91 __ stx(O0, STATE(_native_lresult)); 93 __ std(O0, STATE(_native_lresult)); 100 __ ldf(FloatRegisterImpl::D, STATE(_native_fresult), F0); 102 __ ldx(STATE(_native_lresult), O0); 104 __ ldd(STATE(_native_lresult), O0); 114 address entry = __ pc(); 120 case T_BOOLEAN: __ subcc(G0, O0, G0); __ add [all...] |
H A D | templateTable_sparc.cpp | 39 #define __ _masm-> macro 61 __ g1_write_barrier_pre(base, index, offset, 69 __ mov(val, new_val); 74 __ store_heap_oop(val, base, offset); 76 __ store_heap_oop(val, base, index); 83 __ add(base, offset, base); 85 __ add(base, index, base); 88 __ g1_write_barrier_post(base, new_val, tmp); 98 __ store_heap_oop(val, base, offset); 100 __ store_heap_oo [all...] |
H A D | dump_sparc.cpp | 55 #define __ masm-> macro 82 __ save(SP, -256, SP); 86 __ sethi(offset, L0); 90 __ brx(Assembler::always, false, Assembler::pt, common_code); 95 __ delayed()->or3(src, offset, L0); 99 __ bind(common_code); 107 __ set((intptr_t)vtbl_list, L2); // L2 = address of new vtable list. 108 __ srl(L0, 8, L3); // Isolate L3 = vtable identifier. 109 __ sll(L3, LogBytesPerWord, L3); 110 __ ld_pt [all...] |
/openjdk7/hotspot/src/os_cpu/solaris_x86/vm/ |
H A D | assembler_solaris_x86.cpp | 42 #define __ _masm-> macro 50 __ push(0); // allocate space for return value 51 if (thread != rax) __ push(rax); // save rax, if caller still wants it 52 __ push(rcx); // save caller save 53 __ push(rdx); // save caller save 55 __ lea(thread, Address(rsp, 3 * sizeof(int))); // address of return value 57 __ lea(thread, Address(rsp, 2 * sizeof(int))); // address of return value 59 __ push(thread); // and pass the address 60 __ push(ThreadLocalStorage::thread_index()); // the key 61 __ cal [all...] |