Mercurial > hg > truffle
diff src/share/vm/runtime/objectMonitor.cpp @ 6725:da91efe96a93
6964458: Reimplement class meta-data storage to use native memory
Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author | coleenp |
---|---|
date | Sat, 01 Sep 2012 13:25:18 -0400 |
parents | 436b4a3231bf |
children | f34d701e952e |
line wrap: on
line diff
--- a/src/share/vm/runtime/objectMonitor.cpp Fri Aug 31 16:39:35 2012 -0700 +++ b/src/share/vm/runtime/objectMonitor.cpp Sat Sep 01 13:25:18 2012 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -69,11 +69,11 @@ // TODO-FIXME: probes should not fire when caller is _blocked. assert() accordingly. -#define DTRACE_MONITOR_PROBE_COMMON(klassOop, thread) \ +#define DTRACE_MONITOR_PROBE_COMMON(obj, thread) \ char* bytes = NULL; \ int len = 0; \ jlong jtid = SharedRuntime::get_java_tid(thread); \ - Symbol* klassname = ((oop)(klassOop))->klass()->klass_part()->name(); \ + Symbol* klassname = ((oop)obj)->klass()->name(); \ if (klassname != NULL) { \ bytes = (char*)klassname->bytes(); \ len = klassname->utf8_length(); \ @@ -92,19 +92,19 @@ HS_DTRACE_PROBE_DECL4(hotspot, monitor__contended__exit, jlong, uintptr_t, char*, int); -#define DTRACE_MONITOR_WAIT_PROBE(monitor, klassOop, thread, millis) \ +#define DTRACE_MONITOR_WAIT_PROBE(monitor, obj, thread, millis) \ { \ if (DTraceMonitorProbes) { \ - DTRACE_MONITOR_PROBE_COMMON(klassOop, thread); \ + DTRACE_MONITOR_PROBE_COMMON(obj, thread); \ HS_DTRACE_PROBE5(hotspot, monitor__wait, jtid, \ (monitor), bytes, len, (millis)); \ } \ } -#define DTRACE_MONITOR_PROBE(probe, monitor, klassOop, thread) \ +#define DTRACE_MONITOR_PROBE(probe, monitor, obj, thread) \ { \ if (DTraceMonitorProbes) { \ - DTRACE_MONITOR_PROBE_COMMON(klassOop, thread); \ + DTRACE_MONITOR_PROBE_COMMON(obj, thread); \ HS_DTRACE_PROBE4(hotspot, monitor__##probe, jtid, \ (uintptr_t)(monitor), bytes, len); \ } \ @@ -112,10 +112,10 @@ #else /* USDT2 */ -#define DTRACE_MONITOR_WAIT_PROBE(monitor, klassOop, thread, millis) \ +#define DTRACE_MONITOR_WAIT_PROBE(monitor, obj, thread, millis) \ { \ if (DTraceMonitorProbes) { \ - DTRACE_MONITOR_PROBE_COMMON(klassOop, thread); \ + DTRACE_MONITOR_PROBE_COMMON(obj, thread); \ HOTSPOT_MONITOR_WAIT(jtid, \ (monitor), bytes, len, (millis)); \ } \ @@ -127,10 +127,10 @@ #define HOTSPOT_MONITOR_notify HOTSPOT_MONITOR_NOTIFY #define HOTSPOT_MONITOR_notifyAll HOTSPOT_MONITOR_NOTIFYALL -#define DTRACE_MONITOR_PROBE(probe, monitor, klassOop, thread) \ +#define DTRACE_MONITOR_PROBE(probe, monitor, obj, thread) \ { \ if (DTraceMonitorProbes) { \ - DTRACE_MONITOR_PROBE_COMMON(klassOop, thread); \ + DTRACE_MONITOR_PROBE_COMMON(obj, thread); \ HOTSPOT_MONITOR_##probe(jtid, \ (uintptr_t)(monitor), bytes, len); \ } \ @@ -139,8 +139,8 @@ #endif /* USDT2 */ #else // ndef DTRACE_ENABLED -#define DTRACE_MONITOR_WAIT_PROBE(klassOop, thread, millis, mon) {;} -#define DTRACE_MONITOR_PROBE(probe, klassOop, thread, mon) {;} +#define DTRACE_MONITOR_WAIT_PROBE(obj, thread, millis, mon) {;} +#define DTRACE_MONITOR_PROBE(probe, obj, thread, mon) {;} #endif // ndef DTRACE_ENABLED