comparison src/cpu/x86/vm/c1_CodeStubs_x86.cpp @ 2181:e4fee0bdaa85

7008809: should report the class in ArrayStoreExceptions from compiled code Reviewed-by: iveresov, twisti
author never
date Mon, 24 Jan 2011 13:34:18 -0800
parents ac637b7220d1
children c7f3d0b4570f
comparison
equal deleted inserted replaced
12:1b0ad2d24c64 13:9d53fc43131b
1 /* 1 /*
2 * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
409 ce->add_call_info_here(_info); 409 ce->add_call_info_here(_info);
410 debug_only(__ should_not_reach_here()); 410 debug_only(__ should_not_reach_here());
411 } 411 }
412 412
413 413
414 ArrayStoreExceptionStub::ArrayStoreExceptionStub(CodeEmitInfo* info):
415 _info(info) {
416 }
417
418
419 void ArrayStoreExceptionStub::emit_code(LIR_Assembler* ce) {
420 assert(__ rsp_offset() == 0, "frame size should be fixed");
421 __ bind(_entry);
422 __ call(RuntimeAddress(Runtime1::entry_for(Runtime1::throw_array_store_exception_id)));
423 ce->add_call_info_here(_info);
424 debug_only(__ should_not_reach_here());
425 }
426
427
428 void ArrayCopyStub::emit_code(LIR_Assembler* ce) { 414 void ArrayCopyStub::emit_code(LIR_Assembler* ce) {
429 //---------------slow case: call to native----------------- 415 //---------------slow case: call to native-----------------
430 __ bind(_entry); 416 __ bind(_entry);
431 // Figure out where the args should go 417 // Figure out where the args should go
432 // This should really convert the IntrinsicID to the methodOop and signature 418 // This should really convert the IntrinsicID to the methodOop and signature