147 Commits

Author SHA1 Message Date
Tom Rodriguez
6aeaca98d1 6939861: JVM should handle more conversion operations
Reviewed-by: twisti, jrose
2011-05-06 16:33:13 -07:00
Jon Masamitsu
8328bb291e Merge 2011-04-20 20:32:45 -07:00
John Cuthbertson
7c844aba67 Merge 2011-04-14 13:45:41 -07:00
Coleen Phillimore
3c4d3002f2 Merge 2011-04-12 14:18:53 -07:00
David Holmes
09c93cbb25 7034585: Adjust fillInStackTrace filtering to assist 6998871
Allow for one or more fillInStackTrace frames to be skipped

Reviewed-by: mchung, kvn
2011-04-12 02:53:06 -04:00
John R Rose
16784a72e8 6981791: remove experimental code for JSR 292
Reviewed-by: twisti
2011-04-07 17:02:30 -07:00
John Cuthbertson
a08e1ce906 7009266: G1: assert(obj->is_oop_or_null(true )) failed: Error
A referent object that is only weakly reachable at the start of concurrent marking but is re-attached to the strongly reachable object graph during marking may not be marked as live. This can cause the reference object to be processed prematurely and leave dangling pointers to the referent object. Implement a read barrier for the java.lang.ref.Reference::referent field by intrinsifying the Reference.get() method, and intercepting accesses though JNI, reflection, and Unsafe, so that when a non-null referent object is read it is also logged in an SATB buffer.

Reviewed-by: kvn, iveresov, never, tonyp, dholmes
2011-04-07 09:53:20 -07:00
John R Rose
f6344076f2 7012648: move JSR 292 to package java.lang.invoke and adjust names
Package and class renaming only; delete unused methods and classes

Reviewed-by: twisti
2011-03-11 22:34:57 -08:00
John R Rose
6146dffe45 6839872: remove implementation inheritance from JSR 292 APIs
Consolidate runtime support in java.dyn.MethodHandleNatives; include transitional compatibility logic

Reviewed-by: twisti
2011-03-11 22:33:47 -08:00
Mandy Chung
9eecf686c5 7017673: Remove setting of the sun.jkernel.DownloadManager as a boot classloader hook
Reviewed-by: alanb, dcubed, coleenp
2011-02-08 09:11:37 -08:00
Coleen Phillimore
7b4f8073f0 6990754: Use native memory and reference counting to implement SymbolTable
Move symbols from permgen into C heap and reference count them

Reviewed-by: never, acorn, jmasa, stefank
2011-01-27 16:11:27 -08:00
Kevin Walls
b6d2068ee2 6994753: Implement optional hook to a Java method at VM startup
Reviewed-by: mchung, acorn
2011-01-12 15:44:16 +00:00
John R Rose
cc7c58e166 7001379: bootstrap method data needs to be moved from constant pool to a classfile attribute
Reviewed-by: twisti
2010-12-03 15:53:57 -08:00
Stefan Karlsson
8006fe8f75 6989984: Use standard include model for Hospot
Replaced MakeDeps and the includeDB files with more standardized solutions.

Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
John R Rose
52e3d262a1 6939224: MethodHandle.invokeGeneric needs to perform the correct set of conversions
Reviewed-by: never
2010-09-13 23:24:30 -07:00
John R Rose
1f4cfb029b 6939203: JSR 292 needs method handle constants
Add new CP types CONSTANT_MethodHandle, CONSTANT_MethodType; extend 'ldc' bytecode.

Reviewed-by: twisti, never
2010-06-09 18:50:45 -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
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
Hiroshi Yamauchi
cd48f31efe 6946040: add intrinsic for short and char reverseBytes
Reviewed-by: never, twisti
2010-04-26 11:27:21 -07:00
Igor Veresov
5bec0d60ab Merge 2010-01-06 22:21:39 -08: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
caf28727eb 6893081: method handle & invokedynamic code needs additional cleanup (post 6815692, 6858164)
During the work for 6829187 we have fixed a number of basic bugs which are logically grouped with 6815692 and 6858164 but which must be reviewed and pushed separately.

Reviewed-by: kvn, never
2010-01-04 18:38:08 +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
Erik Trimble
4909043745 Merge 2009-12-23 03:12:16 -08:00
Mandy Chung
b409d16477 6888880: JKernel VM to inject the sun.jkernel.DownloadManager as a boot classloader hook
Call sun.jkernel.DownloadManager.setBootClassLoaderHook during the kernel VM initialization

Reviewed-by: alanb, coleenp, acorn
2009-11-25 08:37:04 -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
John R Rose
6515225d49 6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics
Remove useless lazy evaluation of intrinsics; add LAST_COMPILER_INLINE to help categorize them

Reviewed-by: kvn
2009-07-21 16:56:06 -07:00
Christian Thalinger
6a270f9f19 6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}()
These methods can be instrinsified by using bit scan, bit test, and population count instructions.

Reviewed-by: kvn, never
2009-05-06 00:27:52 -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
Changpeng Fang
c0d62ad9e6 6761600: Use sse 4.2 in intrinsics
Use SSE 4.2 in intrinsics for String.{compareTo/equals/indexOf} and Arrays.equals.

Reviewed-by: kvn, never, jrose
2009-03-31 14:07:08 -07:00
Vladimir Kozlov
aee9449305 Merge 2009-03-31 10:02:01 -07:00
Vladimir Kozlov
705188bb7b 6821700: tune VM flags for peak performance
Tune C2 flags default values for performance.

Reviewed-by: never, phh, iveresov, jmasa, ysr
2009-03-30 18:19:31 -07:00
Paul Hohensee
5231fcdc40 6810653: Change String cache class used by Hotspot from String to StringValue
Change create_vm() to load and initialize StringValue rather than String.

Reviewed-by: kvn
2009-03-24 21:56:53 -04:00
Karen Kinnear
472349069b Merge 2009-03-23 10:42:20 -04:00
Karen Kinnear
fba4182589 6819853: VM does not detect JDK which supports parallel class loaders
Reviewed-by: coleenp, pbk, xlu, alanb
2009-03-20 11:23:24 -04:00
Christian Thalinger
de67e52949 6378821: bitCount() should use POPC on SPARC processors and AMD+10h
BitCount() should use POPC on SPARC processors where POPC is implemented directly in hardware.

Reviewed-by: kvn, never
2009-03-13 11:35:17 -07:00
Xiomara Jayasena
2be2e027b0 6814575: Update copyright year
Update copyright for files that have been modified in 2009, up to 03/09

Reviewed-by: katleman, tbell, ohair
2009-03-09 13:28:46 -07:00
Karen Kinnear
315de68fc0 4670071: loadClassInternal is too restrictive
VM support for deadlock fix. Library fix in 4735126. See API proposal.

Reviewed-by: dholmes, blacklion
2009-01-05 13:44:03 -05:00
Xiomara Jayasena
c96a95c4b8 6719955: Update copyright year
Update copyright year for files that have been modified in 2008

Reviewed-by: ohair, tbell
2008-07-02 12:55:16 -07:00
Vladimir Kozlov
afbdf29629 6714404: Add UseStringCache switch to enable String caching under AggressiveOpts
Poke String.stringCacheEnabled during vm initialization

Reviewed-by: never
2008-06-13 14:49:07 -07:00
Chuck Rasbold
2e672ac9bf 6695049: (coll) Create an x86 intrinsic for Arrays.equals
Intrinsify java/util/Arrays.equals(char[], char[])

Reviewed-by: kvn, never
2008-05-29 16:22:09 -07:00
Vladimir Kozlov
b64d5e4209 6667615: (Escape Analysis) extend MDO to cache arguments escape state
Use MDO to cache arguments escape state determined by the byte code escape analyzer.

Reviewed-by: never
2008-03-11 19:00:38 -07:00
Paul Hohensee
4abbae1fc2 6621621: HashMap front cache should be enabled only with AggressiveOpts
Reviewed-by: sbohne, xlu
2007-12-05 09:02:00 -08:00
Tom Rodriguez
10c473e425 6395208: Elide autoboxing for calls to HashMap.get(int) and HashMap.get(long)
Reviewed-by: kvn, rasbold
2007-12-05 09:01:00 -08:00
J. Duke
8153779ad3 Initial load 2007-12-01 00:00:00 +00:00