src/share/vm/asm/assembler.cpp
Print this page
rev 4202 : 8008555: Debugging code in compiled method sometimes leaks memory
Summary: support for strings that have same life-time as code that uses them.
Reviewed-by:
@@ -282,19 +282,23 @@
}
void AbstractAssembler::update_delayed_values() {
DelayedConstant::update_all();
}
-
-
-
void AbstractAssembler::block_comment(const char* comment) {
if (sect() == CodeBuffer::SECT_INSTS) {
code_section()->outer()->block_comment(offset(), comment);
}
}
+const char* AbstractAssembler::code_string(const char* str) {
+ if (sect() == CodeBuffer::SECT_INSTS || sect() == CodeBuffer::SECT_STUBS) {
+ return code_section()->outer()->code_string(str);
+ }
+ return NULL;
+}
+
bool MacroAssembler::needs_explicit_null_check(intptr_t offset) {
// Exception handler checks the nmethod's implicit null checks table
// only when this method returns false.
#ifdef _LP64
if (UseCompressedOops && Universe::narrow_oop_base() != NULL) {