src/share/vm/c1/c1_LIRAssembler.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File c1-overflows-codebuffer Sdiff src/share/vm/c1

src/share/vm/c1/c1_LIRAssembler.cpp

Print this page




 104  , _frame_map(c->frame_map())
 105  , _current_block(NULL)
 106  , _pending_non_safepoint(NULL)
 107  , _pending_non_safepoint_offset(0)
 108 {
 109   _slow_case_stubs = new CodeStubList();
 110 }
 111 
 112 
 113 LIR_Assembler::~LIR_Assembler() {
 114 }
 115 
 116 
 117 void LIR_Assembler::append_patching_stub(PatchingStub* stub) {
 118   _slow_case_stubs->append(stub);
 119 }
 120 
 121 
 122 void LIR_Assembler::check_codespace() {
 123   CodeSection* cs = _masm->code_section();
 124   if (cs->remaining() < (int)(1*K)) {
 125     BAILOUT("CodeBuffer overflow");
 126   }
 127 }
 128 
 129 
 130 void LIR_Assembler::emit_code_stub(CodeStub* stub) {
 131   _slow_case_stubs->append(stub);
 132 }
 133 
 134 void LIR_Assembler::emit_stubs(CodeStubList* stub_list) {
 135   for (int m = 0; m < stub_list->length(); m++) {
 136     CodeStub* s = (*stub_list)[m];
 137 
 138     check_codespace();
 139     CHECK_BAILOUT();
 140 
 141 #ifndef PRODUCT
 142     if (CommentedAssembly) {
 143       stringStream st;
 144       s->print_name(&st);




 104  , _frame_map(c->frame_map())
 105  , _current_block(NULL)
 106  , _pending_non_safepoint(NULL)
 107  , _pending_non_safepoint_offset(0)
 108 {
 109   _slow_case_stubs = new CodeStubList();
 110 }
 111 
 112 
 113 LIR_Assembler::~LIR_Assembler() {
 114 }
 115 
 116 
 117 void LIR_Assembler::append_patching_stub(PatchingStub* stub) {
 118   _slow_case_stubs->append(stub);
 119 }
 120 
 121 
 122 void LIR_Assembler::check_codespace() {
 123   CodeSection* cs = _masm->code_section();
 124   if (cs->remaining() < (int)(NOT_LP64(1*K)LP64_ONLY(2*K))) {
 125     BAILOUT("CodeBuffer overflow");
 126   }
 127 }
 128 
 129 
 130 void LIR_Assembler::emit_code_stub(CodeStub* stub) {
 131   _slow_case_stubs->append(stub);
 132 }
 133 
 134 void LIR_Assembler::emit_stubs(CodeStubList* stub_list) {
 135   for (int m = 0; m < stub_list->length(); m++) {
 136     CodeStub* s = (*stub_list)[m];
 137 
 138     check_codespace();
 139     CHECK_BAILOUT();
 140 
 141 #ifndef PRODUCT
 142     if (CommentedAssembly) {
 143       stringStream st;
 144       s->print_name(&st);


src/share/vm/c1/c1_LIRAssembler.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File