832 void encode_klass_not_null(Register r);
833 void decode_klass_not_null(Register r);
834 void encode_klass_not_null(Register dst, Register src);
835 void decode_klass_not_null(Register dst, Register src);
836
837 void set_narrow_klass(Register dst, Klass* k);
838
839 // if heap base register is used - reinit it with the correct value
840 void reinit_heapbase();
841
842 DEBUG_ONLY(void verify_heapbase(const char* msg);)
843
844 void push_CPU_state(bool save_vectors = false);
845 void pop_CPU_state(bool restore_vectors = false) ;
846
847 // Round up to a power of two
848 void round_to(Register reg, int modulus);
849
850 // allocation
851 void eden_allocate(
852 Register thread,
853 Register obj, // result: pointer to object after successful allocation
854 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise
855 int con_size_in_bytes, // object size in bytes if known at compile time
856 Register t1, // temp register
857 Label& slow_case // continuation point if fast allocation fails
858 );
859 void tlab_allocate(
860 Register obj, // result: pointer to object after successful allocation
861 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise
862 int con_size_in_bytes, // object size in bytes if known at compile time
863 Register t1, // temp register
864 Register t2, // temp register
865 Label& slow_case // continuation point if fast allocation fails
866 );
867 void zero_memory(Register addr, Register len, Register t1);
868 void verify_tlab();
869
870 // interface method calling
871 void lookup_interface_method(Register recv_klass,
872 Register intf_klass,
|
832 void encode_klass_not_null(Register r);
833 void decode_klass_not_null(Register r);
834 void encode_klass_not_null(Register dst, Register src);
835 void decode_klass_not_null(Register dst, Register src);
836
837 void set_narrow_klass(Register dst, Klass* k);
838
839 // if heap base register is used - reinit it with the correct value
840 void reinit_heapbase();
841
842 DEBUG_ONLY(void verify_heapbase(const char* msg);)
843
844 void push_CPU_state(bool save_vectors = false);
845 void pop_CPU_state(bool restore_vectors = false) ;
846
847 // Round up to a power of two
848 void round_to(Register reg, int modulus);
849
850 // allocation
851 void eden_allocate(
852 Register obj, // result: pointer to object after successful allocation
853 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise
854 int con_size_in_bytes, // object size in bytes if known at compile time
855 Register t1, // temp register
856 Label& slow_case // continuation point if fast allocation fails
857 );
858 void tlab_allocate(
859 Register obj, // result: pointer to object after successful allocation
860 Register var_size_in_bytes, // object size in bytes if unknown at compile time; invalid otherwise
861 int con_size_in_bytes, // object size in bytes if known at compile time
862 Register t1, // temp register
863 Register t2, // temp register
864 Label& slow_case // continuation point if fast allocation fails
865 );
866 void zero_memory(Register addr, Register len, Register t1);
867 void verify_tlab();
868
869 // interface method calling
870 void lookup_interface_method(Register recv_klass,
871 Register intf_klass,
|