Mercurial > hg > graal-jvmci-8
diff src/share/vm/graal/graalRuntime.cpp @ 14731:0cb5c4d276d4
use raw data support to fix incorrect use of String.intern() for embedding strings in code
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 25 Mar 2014 13:57:48 +0100 |
parents | 682fba1bcf95 |
children | 063ec2920d21 |
line wrap: on
line diff
--- a/src/share/vm/graal/graalRuntime.cpp Tue Mar 25 13:56:52 2014 +0100 +++ b/src/share/vm/graal/graalRuntime.cpp Tue Mar 25 13:57:48 2014 +0100 @@ -438,13 +438,12 @@ return (jint)ret; JRT_END -JRT_ENTRY(void, GraalRuntime::vm_error(JavaThread* thread, oopDesc* where, oopDesc* format, jlong value)) +JRT_ENTRY(void, GraalRuntime::vm_error(JavaThread* thread, jlong where, jlong format, jlong value)) ResourceMark rm; - assert(where == NULL || java_lang_String::is_instance(where), "must be"); - const char *error_msg = where == NULL ? "<internal Graal error>" : java_lang_String::as_utf8_string(where); + const char *error_msg = where == 0L ? "<internal Graal error>" : (char*) (address) where; char *detail_msg = NULL; - if (format != NULL) { - const char* buf = java_lang_String::as_utf8_string(format); + if (format != 0L) { + const char* buf = (char*) (address) format; size_t detail_msg_length = strlen(buf) * 2; detail_msg = (char *) NEW_RESOURCE_ARRAY(u_char, detail_msg_length); jio_snprintf(detail_msg, detail_msg_length, buf, value);