39 #define __ ce->masm()-> |
39 #define __ ce->masm()-> |
40 #undef CHECK_BAILOUT |
40 #undef CHECK_BAILOUT |
41 #define CHECK_BAILOUT() { if (ce->compilation()->bailed_out()) return; } |
41 #define CHECK_BAILOUT() { if (ce->compilation()->bailed_out()) return; } |
42 |
42 |
43 RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index, LIR_Opr array) |
43 RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index, LIR_Opr array) |
44 : _throw_index_out_of_bounds_exception(false), _index(index), _array(array) { |
44 : _index(index), _array(array), _throw_index_out_of_bounds_exception(false) { |
45 assert(info != NULL, "must have info"); |
45 assert(info != NULL, "must have info"); |
46 _info = new CodeEmitInfo(info); |
46 _info = new CodeEmitInfo(info); |
47 } |
47 } |
48 |
48 |
49 RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index) |
49 RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index) |
50 : _throw_index_out_of_bounds_exception(true), _index(index), _array(NULL) { |
50 : _index(index), _array(NULL), _throw_index_out_of_bounds_exception(true) { |
51 assert(info != NULL, "must have info"); |
51 assert(info != NULL, "must have info"); |
52 _info = new CodeEmitInfo(info); |
52 _info = new CodeEmitInfo(info); |
53 } |
53 } |
54 |
54 |
55 void RangeCheckStub::emit_code(LIR_Assembler* ce) { |
55 void RangeCheckStub::emit_code(LIR_Assembler* ce) { |