comparison src/cpu/x86/vm/c1_LIRAssembler_x86.cpp @ 6831:d8ce2825b193

8000213: NPG: Should have renamed arrayKlass and typeArrayKlass Summary: Capitalize these metadata types (and objArrayKlass) Reviewed-by: stefank, twisti, kvn
author coleenp
date Sat, 29 Sep 2012 06:40:00 -0400
parents 7eca5de9e0b6
children d804e148cff8
comparison
equal deleted inserted replaced
6811:1b582b1bf7cb 6831:d8ce2825b193
1879 add_debug_info_for_null_check_here(op->info_for_exception()); 1879 add_debug_info_for_null_check_here(op->info_for_exception());
1880 __ load_klass(k_RInfo, array); 1880 __ load_klass(k_RInfo, array);
1881 __ load_klass(klass_RInfo, value); 1881 __ load_klass(klass_RInfo, value);
1882 1882
1883 // get instance klass (it's already uncompressed) 1883 // get instance klass (it's already uncompressed)
1884 __ movptr(k_RInfo, Address(k_RInfo, objArrayKlass::element_klass_offset())); 1884 __ movptr(k_RInfo, Address(k_RInfo, ObjArrayKlass::element_klass_offset()));
1885 // perform the fast part of the checking logic 1885 // perform the fast part of the checking logic
1886 __ check_klass_subtype_fast_path(klass_RInfo, k_RInfo, Rtmp1, success_target, failure_target, NULL); 1886 __ check_klass_subtype_fast_path(klass_RInfo, k_RInfo, Rtmp1, success_target, failure_target, NULL);
1887 // call out-of-line instance of __ check_klass_subtype_slow_path(...): 1887 // call out-of-line instance of __ check_klass_subtype_slow_path(...):
1888 __ push(klass_RInfo); 1888 __ push(klass_RInfo);
1889 __ push(k_RInfo); 1889 __ push(k_RInfo);
3347 store_parameter(src_pos, 3); 3347 store_parameter(src_pos, 3);
3348 store_parameter(src, 4); 3348 store_parameter(src, 4);
3349 3349
3350 #ifndef _LP64 3350 #ifndef _LP64
3351 __ movptr(tmp, dst_klass_addr); 3351 __ movptr(tmp, dst_klass_addr);
3352 __ movptr(tmp, Address(tmp, objArrayKlass::element_klass_offset())); 3352 __ movptr(tmp, Address(tmp, ObjArrayKlass::element_klass_offset()));
3353 __ push(tmp); 3353 __ push(tmp);
3354 __ movl(tmp, Address(tmp, Klass::super_check_offset_offset())); 3354 __ movl(tmp, Address(tmp, Klass::super_check_offset_offset()));
3355 __ push(tmp); 3355 __ push(tmp);
3356 __ push(length); 3356 __ push(length);
3357 __ lea(tmp, Address(dst, dst_pos, scale, arrayOopDesc::base_offset_in_bytes(basic_type))); 3357 __ lea(tmp, Address(dst, dst_pos, scale, arrayOopDesc::base_offset_in_bytes(basic_type)));
3373 3373
3374 #ifdef _WIN64 3374 #ifdef _WIN64
3375 // Allocate abi space for args but be sure to keep stack aligned 3375 // Allocate abi space for args but be sure to keep stack aligned
3376 __ subptr(rsp, 6*wordSize); 3376 __ subptr(rsp, 6*wordSize);
3377 __ load_klass(c_rarg3, dst); 3377 __ load_klass(c_rarg3, dst);
3378 __ movptr(c_rarg3, Address(c_rarg3, objArrayKlass::element_klass_offset())); 3378 __ movptr(c_rarg3, Address(c_rarg3, ObjArrayKlass::element_klass_offset()));
3379 store_parameter(c_rarg3, 4); 3379 store_parameter(c_rarg3, 4);
3380 __ movl(c_rarg3, Address(c_rarg3, Klass::super_check_offset_offset())); 3380 __ movl(c_rarg3, Address(c_rarg3, Klass::super_check_offset_offset()));
3381 __ call(RuntimeAddress(copyfunc_addr)); 3381 __ call(RuntimeAddress(copyfunc_addr));
3382 __ addptr(rsp, 6*wordSize); 3382 __ addptr(rsp, 6*wordSize);
3383 #else 3383 #else
3384 __ load_klass(c_rarg4, dst); 3384 __ load_klass(c_rarg4, dst);
3385 __ movptr(c_rarg4, Address(c_rarg4, objArrayKlass::element_klass_offset())); 3385 __ movptr(c_rarg4, Address(c_rarg4, ObjArrayKlass::element_klass_offset()));
3386 __ movl(c_rarg3, Address(c_rarg4, Klass::super_check_offset_offset())); 3386 __ movl(c_rarg3, Address(c_rarg4, Klass::super_check_offset_offset()));
3387 __ call(RuntimeAddress(copyfunc_addr)); 3387 __ call(RuntimeAddress(copyfunc_addr));
3388 #endif 3388 #endif
3389 3389
3390 #endif 3390 #endif