76 Commits

Author SHA1 Message Date
John R Rose
d6a9b93b5a Merge 2010-06-02 22:45:42 -07:00
John R Rose
be95b163a6 6957080: MethodComparator needs stress testing
Add a stress-test flag for running MethodComparator over many inputs.  Fix bugs that crop up.

Reviewed-by: kvn
2010-05-29 19:22:32 -07:00
Erik Trimble
ba7c173659 6941466: Oracle rebranding changes for Hotspot repositories
Change all the Sun copyrights to Oracle copyright

Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
John R Rose
581521ba96 6939207: refactor constant pool index processing
Factored cleanup of instruction decode which prepares for enhanced ldc semantics.

Reviewed-by: twisti
2010-05-23 01:38:26 -07:00
John R Rose
4eb75c2df3 6939134: JSR 292 adjustments to method handle invocation
Split MethodHandle.invoke into invokeExact and invokeGeneric; also clean up JVM-to-Java interfaces

Reviewed-by: twisti
2010-05-01 02:42:18 -07:00
Karen Kinnear
7aaaad73cf Merge 2010-03-26 11:10:26 -04:00
Andrey Petrusenko
531591c2b9 Merge 2010-03-22 02:40:53 -07:00
Frederic Parain
2450ae35a1 6935224: Adding new DTrace probes to work with Palantir
Adding probes related to thread scheduling and class initialization

Reviewed-by: kamg, never
2010-03-17 11:01:05 +01:00
Christian Thalinger
82e9e2b4af 6934494: JSR 292 MethodHandles adapters should be generated into their own CodeBlob
Passing a null pointer to an InvokeDynamic function call should lead to a NullPointerException.

Reviewed-by: kvn, never
2010-03-16 11:52:17 +01:00
Christian Thalinger
ffec4c00c4 6919934: JSR 292 needs to support x86 C1
This implements JSR 292 support for C1 x86.

Reviewed-by: never, jrose, kvn
2010-03-09 20:16:19 +01:00
John Coomes
4f82340476 4396719: Mark Sweep stack overflow on deeply nested Object arrays
Use an explicit stack for object arrays and process them in chunks.

Reviewed-by: iveresov, apetrusenko
2010-03-03 14:48:26 -08:00
John Cuthbertson
76881615ca Merge 2010-03-02 13:57:46 -08:00
Jon Masamitsu
f254745228 6928081: G1: rename parameters common with CMS
Rename marking stack sizing flags to be common between G1 and CMS

Reviewed-by: ysr, tonyp
2010-02-24 07:00:33 -08:00
Vladimir Kozlov
e599f6c927 6928717: HS17 fails to build with SS11 C++
Add missing handles.inline.hpp for codeCache.cpp.

Reviewed-by: never
2010-02-22 16:56:49 -08:00
John Cuthbertson
e475437c5a Merge 2010-02-16 14:11:44 -08:00
Vladimir Kozlov
9110d86267 Merge 2010-02-12 15:27:36 -08:00
Vladimir Kozlov
22409a5704 6910618: C2: Error: assert(d->is_oop(),"JVM_ArrayCopy: dst not an oop")
Mark in PcDesc call sites which return oop and save the result oop across objects reallocation during deoptimization.

Reviewed-by: never
2010-02-09 01:31:13 -08:00
John Cuthbertson
e003616106 Merge 2010-02-08 09:58:32 -08:00
Antonios Printezis
c157b744ed 6920977: G1: guarantee(k == probe->klass(),"klass should be in dictionary") fails
The guarantee is too strict and the test will fail (incorrectly) if the class is not in the system dictionary but in the placeholders.

Reviewed-by: acorn, phh
2010-02-05 11:05:50 -05:00
John Cuthbertson
b34027a600 6885297: java -XX:RefDiscoveryPolicy=2 or -XX:TLABWasteTargetPercent=0 cause VM crash
Interval checking is now being performed on the values passed in for these two flags. The current acceptable range for RefDiscoveryPolicy is [0..1], and for TLABWasteTargetPercent it is [1..100].

Reviewed-by: apetrusenko, ysr
2010-01-29 14:51:38 -08:00
Eric Caspole
a57d68e35b 4360113: Evict nmethods when code cache gets full
Speculatively unload the oldest nmethods when code cache gets full.

Reviewed-by: never, kvn
2010-01-29 09:27:22 -08:00
Igor Veresov
43b70061e4 Merge 2010-01-27 14:06:27 -08:00
Tom Rodriguez
bac125984c 6911204: generated adapters with large signatures can fill up the code cache
Reviewed-by: kvn, jrose
2010-01-20 22:10:33 -08:00
Daniel D. Daugherty
ecbf962c7b Merge 2010-01-20 11:32:41 -07:00
Vasanth Venkatachalam
a5e58e8d53 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
Add support for additional implementation specific info to the JVM/TI CompiledMethodLoad event via the compile_info parameter.

Reviewed-by: never, ohair, tbell, tdeneau
2010-01-13 09:39:46 -07:00
John R Rose
fdbb64ef71 6912062: disassembler plugin needs to produce symbolic information in product mode
More informative disassembly in product mode.  Also, a more consistent CompileCommand syntax.

Reviewed-by: never
2010-01-08 13:47:01 -08:00
Christian Thalinger
e5fb2ad1c4 6914206: change way of permission checking for generated MethodHandle adapters
Put generated MH adapter in InvokeDynamic/MethodHandle classes to be able to indentify them easily in the compiler.

Reviewed-by: kvn, never, jrose
2010-01-08 11:09:46 +01:00
Christian Thalinger
47f2433a58 6893268: additional dynamic language related optimizations in C2
C2 needs some additional optimizations to be able to handle MethodHandle invokes and invokedynamic instructions at the best performance.

Reviewed-by: kvn, never
2010-01-05 15:21:25 +01:00
Christian Thalinger
375527d84e 6829187: compiler optimizations required for JSR 292
C2 implementation for invokedynamic support.

Reviewed-by: kvn, never
2010-01-05 13:05:58 +01:00
Christian Thalinger
3a896a1408 6894206: JVM needs a way to traverse method handle structures
We need a way to walk chained method handles in the JVM to call the right methods and to generate required bytecode adapters for the compilers.

Reviewed-by: kvn
2010-01-04 15:52:40 +01:00
Jon Masamitsu
c5b5e2e3a7 Merge 2009-12-11 08:39:30 -08:00
Y. Srinivas Ramakrishna
d875a8e0f1 6906727: UseCompressedOops: some card-marking fixes related to object arrays
Introduced a new write_ref_array(HeapWords* start, size_t count) method that does the requisite MemRegion range calculation so (some of the) clients of the erstwhile write_ref_array(MemRegion mr) do not need to worry. This removed all external uses of array_size(), which was also simplified and made private. Asserts were added to catch other possible issues. Further, less essential, fixes stemming from this investigation are deferred to CR 6904516 (to follow shortly in hs17).

Reviewed-by: kvn, coleenp, jmasa
2009-12-03 15:01:57 -08:00
Tom Rodriguez
9db2092b1b 6892658: C2 should optimize some stringbuilder patterns
Reviewed-by: kvn, twisti
2009-11-12 09:24:21 -08:00
John R Rose
903247cf85 6858164: invokedynamic code needs some cleanup (post-6655638)
Fix several crashers, remove needless paths for boxed-style bootstrap method call, refactor & simplify APIs for rewriter constantPoolOop, remove sun.dyn.CallSiteImpl

Reviewed-by: kvn
2009-10-30 16:22:59 -07:00
Y. Srinivas Ramakrishna
c6763b5bad 4957990: Perm heap bloat in JVM
Treat ProfileData in MDO's as a source of weak, not strong, roots. Fixes the bug for stop-world collection -- the case of concurrent collection will be fixed separately.

Reviewed-by: jcoomes, jmasa, kvn, never
2009-09-02 00:04:29 -07:00
Coleen Phillimore
3e69a71772 Merge 2009-07-27 17:23:52 -04:00
Y. Srinivas Ramakrishna
075c1335cb 6700789: G1: Enable use of compressed oops with G1 heaps
Modifications to G1 so as to allow the use of compressed oops.

Reviewed-by: apetrusenko, coleenp, jmasa, kvn, never, phh, tonyp
2009-07-14 15:40:39 -07:00
Mandy Chung
08f5aeffc1 6857194: Add hotspot perf counters to aid class loading performance measurement
Add new jvmstat counters to measure detailed class loading time

Reviewed-by: acorn, kamg
2009-07-10 11:10:00 -07:00
John R Rose
34c1d72421 6655646: dynamic languages need dynamically linked call sites
Invokedynamic instruction (JSR 292 RI)

Reviewed-by: twisti, never
2009-04-21 23:21:04 -07:00
John R Rose
ce0c084720 6655638: dynamic languages need method handles
Initial implementation, with known omissions (x86/64, sparc, compiler optim., c-oops, C++ interp.)

Reviewed-by: kvn, twisti, never
2009-04-08 10:56:49 -07:00
Tom Rodriguez
134debb0ba 6822204: volatile fences should prefer lock:addl to actual mfence instructions
Reviewed-by: kvn, phh
2009-03-26 14:31:45 -07:00
Christian Thalinger
66cecec230 6812587: Use auxv to determine SPARC hardware features on Solaris
A similar function to getisax(2) should be used to determine all possible instruction set extensions.

Reviewed-by: never, kvn
2009-03-11 14:16:13 -07:00
Karen Kinnear
a23cbf5b96 Merge 2009-03-05 22:07:29 -05:00
Daniel D. Daugherty
8c0f3ead78 Merge 2009-03-02 16:56:51 -07:00
Daniel D. Daugherty
8aa430beb0 Merge 2009-03-02 14:43:36 -07:00
Daniel D. Daugherty
da3f81559f 6805864: 4/3 Problem with jvmti->redefineClasses: some methods don't get redefined
Remove incorrect optimization in klassItable::adjust_method_entries(). Add RedefineClasses() tracing support for obsolete method entry.

Reviewed-by: acorn, swamyv
2009-03-02 14:03:03 -07:00
Lillian Angel
d6cdfde9d9 6778669: Patch from Red Hat -- fixes compilation errors
Some fixes which are required to build on recent GCCs.

Reviewed-by: never, kvn
2009-02-27 03:35:40 -08:00
Christian Thalinger
0723dab28b 6808589: Merge vm_version_x86_{32,64}.{cpp,hpp}
There is very much duplicated code in vm_version_x86_{32,64}.{cpp,hpp}.  Refactoring these would help maintainability.

Reviewed-by: kvn, never
2009-02-23 12:02:30 -08:00
Coleen Phillimore
f79090efe7 6793825: Missing include dependancies for GCC without predefined headers
With predefined headers off for gcc, some .inline.hpp files aren't included to make definition visible for inline functions

Reviewed-by: jcoomes, xlu
2009-01-14 20:14:19 -05:00
Lev Serebryakov
1d59997abe Merge 2008-12-05 15:06:37 -05:00