Vladimir Kozlov
9f97cf13e8
6864914: SPECjvm2008 produces invalid result with zero based Compressed Oops
...
Always use "lea" instruction for narrow oop decoding instead of "shift".
Reviewed-by: never
2009-07-30 16:05:56 -07: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
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
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
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
John R Rose
cfb08c72ba
6814659: separable cleanups and subroutines for 6655638
...
Preparatory but separable changes for method handles
Reviewed-by: kvn, never
2009-03-20 23:19:36 -07:00
John R Rose
b8dbe8d8f6
6813212: factor duplicated assembly code for general subclass check (for 6655638)
...
Code in interp_masm, stubGenerator, c1_LIRAssembler, and AD files moved into MacroAssembler.
Reviewed-by: kvn
2009-03-13 18:39:22 -07: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
Vladimir Kozlov
69f9ddee90
6791178: Specialize for zero as the compressed oop vm heap base
...
Use zero based compressed oops if java heap is below 32gb and unscaled compressed oops if java heap is below 4gb.
Reviewed-by: never, twisti, jcoomes, coleenp
2009-03-12 10:37:46 -07:00
Christian Thalinger
89cea91c48
6797305: Add LoadUB and LoadUI opcode class
...
Add a LoadUB (unsigned byte) and LoadUI (unsigned int) opcode class so we have these load optimizations in the first place and do not need to handle them in the matcher.
Reviewed-by: never, kvn
2009-03-09 03:17:11 -07:00
John R Rose
26d192003f
6812831: factor duplicated assembly code for megamorphic invokeinterface (for 6655638)
...
Code in vtableStubs and templateTable moved into MacroAssembler.
Reviewed-by: kvn
2009-03-06 21:36:50 -08:00
John R Rose
07321dec65
6812678: macro assembler needs delayed binding of a few constants (for 6655638)
...
Minor assembler enhancements preparing for method handles
Reviewed-by: kvn
2009-03-04 09:58:39 -08:00
Tom Rodriguez
48d4a43c2a
6811384: MacroAssembler::serialize_memory may touch next page on amd64
...
Reviewed-by: kvn, phh, twisti
2009-03-01 20:49:46 -08:00
Coleen Phillimore
a1442ea7ff
6791168: Fix invalid code in bytecodeInterpreter that can cause gcc ICE
...
Fix compilation errors from latest gcc in CC_INTERP including offending missing void* cast.
Reviewed-by: xlu
2009-01-13 14:41:44 -05:00
Xiaobin Lu
1362b9fd1d
6787106: Hotspot 32 bit build fails on platforms having different definitions for intptr_t & int32_t
...
Avoid casting between int32_t and intptr_t specifically for MasmAssembler::movptr in 32 bit platforms.
Reviewed-by: jrose, kvn
2008-12-24 13:06:09 -08:00
Vladimir Kozlov
7aae40a95f
6462850: generate biased locking code in C2 ideal graph
...
Inline biased locking code in C2 ideal graph during macro nodes expansion
Reviewed-by: never
2008-11-07 09:29:38 -08:00
Vladimir Kozlov
55925534ec
6532536: Optimize arraycopy stubs for Intel cpus
...
Use SSE2 movdqu in arraycopy stubs on newest Intel's cpus
Reviewed-by: rasbold
2008-10-14 15:10:26 -07:00
Andrey Petrusenko
b6aabd98fc
Merge
2008-09-17 16:49:18 +04:00
Tom Rodriguez
26c780da72
5108146: Merge i486 and amd64 cpu directories
...
6459804: Want client (c1) compiler for x86_64 (amd64) for faster start-up
Reviewed-by: kvn
2008-08-27 00:21:55 -07:00