Mercurial > hg > graal-compiler
comparison src/share/vm/ci/ciMethod.cpp @ 27:1f530c629c7d
6498878: client compiler crashes on windows when dealing with breakpoint instructions
Summary: _is_compilable check prevents breakpoint bytecodes reversion when loading bytecodes for ciMethod.
Reviewed-by: never
author | kvn |
---|---|
date | Thu, 21 Feb 2008 19:03:44 -0800 |
parents | a61af66fc99e |
children | 44abbb0d4c18 |
comparison
equal
deleted
inserted
replaced
26:0871d5cd64cd | 27:1f530c629c7d |
---|---|
144 // Load the bytecodes. | 144 // Load the bytecodes. |
145 _code = (address)arena->Amalloc(code_size()); | 145 _code = (address)arena->Amalloc(code_size()); |
146 memcpy(_code, me->code_base(), code_size()); | 146 memcpy(_code, me->code_base(), code_size()); |
147 | 147 |
148 // Revert any breakpoint bytecodes in ci's copy | 148 // Revert any breakpoint bytecodes in ci's copy |
149 if (_is_compilable && me->number_of_breakpoints() > 0) { | 149 if (me->number_of_breakpoints() > 0) { |
150 BreakpointInfo* bp = instanceKlass::cast(me->method_holder())->breakpoints(); | 150 BreakpointInfo* bp = instanceKlass::cast(me->method_holder())->breakpoints(); |
151 for (; bp != NULL; bp = bp->next()) { | 151 for (; bp != NULL; bp = bp->next()) { |
152 if (bp->match(me)) { | 152 if (bp->match(me)) { |
153 code_at_put(bp->bci(), bp->orig_bytecode()); | 153 code_at_put(bp->bci(), bp->orig_bytecode()); |
154 } | 154 } |