comparison src/hotspot/cpu/x86/macroAssembler_x86.hpp @ 51327:db0a17475826

8205336: Modularize allocations in assembler Reviewed-by: aph, eosterlund
author rkennke
date Tue, 19 Jun 2018 13:03:12 -0400
parents 8434981a4137
children 480a96a43b62
comparison
equal deleted inserted replaced
12:7d48fdba641f 13:e94e7667a7e6
502 void push_callee_saved_registers(); 502 void push_callee_saved_registers();
503 void pop_callee_saved_registers(); 503 void pop_callee_saved_registers();
504 504
505 // allocation 505 // allocation
506 void eden_allocate( 506 void eden_allocate(
507 Register thread, // Current thread
507 Register obj, // result: pointer to object after successful allocation 508 Register obj, // result: pointer to object after successful allocation
508 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise 509 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise
509 int con_size_in_bytes, // object size in bytes if known at compile time 510 int con_size_in_bytes, // object size in bytes if known at compile time
510 Register t1, // temp register 511 Register t1, // temp register
511 Label& slow_case // continuation point if fast allocation fails 512 Label& slow_case // continuation point if fast allocation fails
512 ); 513 );
513 void tlab_allocate( 514 void tlab_allocate(
515 Register thread, // Current thread
514 Register obj, // result: pointer to object after successful allocation 516 Register obj, // result: pointer to object after successful allocation
515 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise 517 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise
516 int con_size_in_bytes, // object size in bytes if known at compile time 518 int con_size_in_bytes, // object size in bytes if known at compile time
517 Register t1, // temp register 519 Register t1, // temp register
518 Register t2, // temp register 520 Register t2, // temp register
519 Label& slow_case // continuation point if fast allocation fails 521 Label& slow_case // continuation point if fast allocation fails
520 ); 522 );
521 void zero_memory(Register address, Register length_in_bytes, int offset_in_bytes, Register temp); 523 void zero_memory(Register address, Register length_in_bytes, int offset_in_bytes, Register temp);
522
523 void incr_allocated_bytes(Register thread,
524 Register var_size_in_bytes, int con_size_in_bytes,
525 Register t1 = noreg);
526 524
527 // interface method calling 525 // interface method calling
528 void lookup_interface_method(Register recv_klass, 526 void lookup_interface_method(Register recv_klass,
529 Register intf_klass, 527 Register intf_klass,
530 RegisterOrConstant itable_index, 528 RegisterOrConstant itable_index,