7256 Commits

Author SHA1 Message Date
Changpeng Fang
0429abd38a 6848466: frame::frame_size() assertion failure with -XX:+DebugDeoptimization
Add a RegisterMap* argument to frame::frame_size() to correctly compute the sender frame

Reviewed-by: never
2009-06-05 10:25:39 -07:00
Tom Rodriguez
73a6885c23 Merge 2009-06-03 18:15:25 -07:00
Changpeng Fang
f981546f2d 6837146: Should perform unswitch before maximally unroll in loop transformation
Move loop unswitch before maximally unroll

Reviewed-by: never
2009-05-28 09:37:18 -07:00
Vladimir Kozlov
802f3552f9 6843752: missing code for an anti-dependent Phi in GCM
Don't place a load below anti-dependent PHI.

Reviewed-by: never, twisti
2009-05-27 12:35:51 -07:00
John Coomes
a720198e39 Merge 2009-05-26 16:43:42 -07:00
Vladimir Kozlov
fdb3ca8708 6772683: Thread.isInterrupted() fails to return true on multiprocessor PC
Set the control edge for the field _interrupted load in inline_native_isInterrupted().

Reviewed-by: never
2009-05-21 10:05:36 -07:00
Tomas Hurka
6ee565c7b8 6839599: JVM crash while profiling Tomcat and Liferay
ConstantPoolOopDesc::copy_cpool_bytes() - do the brute-force search search through 'tbl' when SymbolTable::lookup_only() returns NULL

Reviewed-by: kamg
2009-05-20 09:36:53 +02:00
Andrey Petrusenko
b7eda61fb6 6819065: G1: eliminate high serial card table clearing time
Reviewed-by: iveresov, tonyp
2009-05-19 04:05:31 -07:00
Igor Veresov
4f6c7e4a14 6841831: G1: assert(contains_reference(from),"We just added it!") fires
During parallel rset updating we have to make sure that the worker ids of the refinement threads do not intersect with the worker ids that can be claimed by the mutator threads.

Reviewed-by: tonyp
2009-05-18 11:52:46 -07:00
Kelly O'Hair
affd74638e Merge 2009-05-15 18:14:44 -07:00
Christian Thalinger
8a262ce04b 6814842: Load shortening optimizations
6797305 handles load widening but no shortening which should be covered here.

Reviewed-by: never, kvn
2009-05-13 00:45:22 -07:00
Igor Veresov
702a13b785 6840196: NUMA allocator: crash in fastdebug during startup on Linux
With libnuma >1.2 explicity use 1.1 symbols

Reviewed-by: ysr
2009-05-12 15:55:56 -07:00
Vladimir Kozlov
e101bdf5df 6836054: java/util/Arrays/CopyMethods.java fails on solaris-sparc with IllegalArgumentException
Do not mark an allocation as scalar replaceable if its actual type in unknown statically.

Reviewed-by: never
2009-05-11 18:30:13 -07:00
Vladimir Kozlov
6202395cb2 6832293: JIT compiler got wrong result in type checking with -server
Check for an object array of interface in CmpPNode::sub().

Reviewed-by: never
2009-05-11 17:59:54 -07:00
Igor Veresov
8c764e214c 6484957: G1: parallel concurrent refinement
6826318: G1: remove traversal-based refinement code

Removed traversal-based refinement code as it's no longer used. Made the concurrent refinement (queue-based) parallel.

Reviewed-by: tonyp
2009-05-11 16:30:56 -07:00
Igor Veresov
dacaa6b65d 6838842: NUMA allocator: Segfault during startup on Linux
Restored os::free_memory() semantics

Reviewed-by: apetrusenko
2009-05-08 15:20:10 -07:00
Kelly O'Hair
a3ead33c8d 6839126: Type error found by newer windows compiler
Reviewed-by: never, kvn
2009-05-08 14:33:58 -07:00
Vladimir Kozlov
34ee921399 6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits
Cache Jvmti and DTrace flags used by Compiler.

Reviewed-by: never
2009-05-08 10:44:20 -07:00
Vladimir Kozlov
b5cff6a1a0 Merge 2009-05-08 10:34:31 -07:00
Vladimir Kozlov
955a453996 Merge 2009-05-07 17:09:48 -07:00
Christian Thalinger
1576a9be9e Merge 2009-05-07 00:28:13 -07:00
Christian Thalinger
96139033e6 6837011: SIGSEGV in PhaseIdealLoop in 32bit jvm
The CR's test crashes with SIGSEGV when running with "-server -Xcomp" using using 32bit jvm.

Reviewed-by: kvn, never, rasbold
2009-05-06 12:04:42 -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 Cuthbertson
92afe130d1 6833576: G1: assert illegal index, growableArray.hpp:186
The code that calculates the heap region index for an object address incorrectly used signed arithmetic.

Reviewed-by: jcoomes, ysr
2009-05-05 22:15:35 -07:00
Changpeng Fang
716c78f080 6833879: Assigning positive zero is ignored when old value is negative zero
Don't perform CMOVE identity optimization for floating point types

Reviewed-by: kvn, never
2009-05-05 11:02:10 -07:00
John Cuthbertson
55750920b4 6490395: G1: Tidy up command line flags
Change G1 flag names to be more consistent and disable some in 'product' mode.

Reviewed-by: tonyp, iveresov
2009-04-30 15:07:53 -07:00
Andrey Petrusenko
907a41e100 Merge 2009-05-04 02:57:39 -07:00
Vladimir Kozlov
e329e92190 Merge 2009-04-30 12:09:39 -07:00
Vladimir Kozlov
2c4602adb3 6834177: Running jsynprog on Solaris Nevada can cause JVM crash
Use CodeCache buffer blob instead of static buffer in AdapterHandlerLibrary.

Reviewed-by: never
2009-04-29 12:58:09 -07:00
Igor Veresov
db68fa7326 6819098: G1: reduce RSet scanning times
Added a feedback-driven exponential skipping for parallel RSet scanning.

Reviewed-by: tonyp, apetrusenko
2009-04-27 16:52:18 -07:00
Vladimir Kozlov
9e0929adba Merge 2009-04-27 12:55:28 -07:00
Vladimir Kozlov
a1533dafce 6834142: method->print_codes(): Error: ShouldNotReachHere()
Restore the call to Bytecodes::java_code() in BytecodePrinter::print_attributes().

Reviewed-by: jrose
2009-04-27 12:45:14 -07:00
Andrey Petrusenko
5213d97280 Merge 2009-04-27 12:33:57 -07:00
Tom Rodriguez
8e16f6b5c4 Merge 2009-04-24 18:45:14 -07:00
Tom Rodriguez
60e1a19b44 6833573: C2 sparc: assert(c < 64 && (c & 1) == 0,"bad double float register")
Reviewed-by: twisti
2009-04-24 15:08:30 -07:00
Changpeng Fang
04fdef79fa 6589834: deoptimization problem with -XX:+DeoptimizeALot
Relocate the stack pointer adjustment to where uncommon_trap is actually inserted for new_array.

Reviewed-by: kvn, jrose
2009-04-23 14:04:24 -07:00
Antonios Printezis
c2578847e2 6829013: G1: set the default value of G1VerifyConcMarkPrintRechable to false
Turn off G1VerifyConcMarkPrintReachable by default to minimize the amount of verbose output we generate by default.

Reviewed-by: jmasa
2009-04-23 16:58:16 -04:00
Vladimir Kozlov
273a47426e 6709742: find_base_for_derived's use of Ideal NULL is unsafe causing crashes during register allocation
Create a mach node corresponding to ideal node ConP #NULL specifically for derived pointers.

Reviewed-by: never
2009-04-22 17:03:18 -07:00
Christian Thalinger
b9f27b5eea Merge 2009-04-22 06:09:24 -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
Coleen Phillimore
2e43a0450f 6830069: UseLargePages is broken on Win64
Making VirtualAlloc/VirtualProtect two calls for PAGE_EXECUTE_READWRITE doesn't work for MEM_LARGE_PAGES.

Reviewed-by: xlu, kvn, jcoomes
2009-04-21 16:12:51 -04:00
Christian Thalinger
57d945fd3d 6822110: Add AddressLiteral class on SPARC
The Address class on SPARC currently handles both, addresses and address literals, what makes the Address class more complicated than it has to be.

Reviewed-by: never, kvn
2009-04-21 11:16:30 -07:00
Tom Rodriguez
fd05c28901 Merge 2009-04-20 14:48:03 -07:00
Tom Rodriguez
425fb8197e 6831604: missing null check in guarantee
Reviewed-by: kvn
2009-04-17 12:22:18 -07:00
Tom Rodriguez
617835c850 6741757: minor ctw improvements
Reviewed-by: kvn
2009-04-16 21:25:29 -07:00
Tom Rodriguez
88ac170f53 6828024: verification of fixed interval usage is too weak
Reviewed-by: kvn
2009-04-16 15:50:32 -07:00
Tom Rodriguez
970eb79fc4 6449385: JCK test dup2_x200106m1 fails with Segmentation Fault on x86
Reviewed-by: kvn
2009-04-16 10:40:42 -07:00
Tom Rodriguez
1097f94525 6684007: PrintAssembly plugin not available for linux or windows
Reviewed-by: rasbold, jrose, twisti
2009-04-15 09:53:54 -07:00
Tom Rodriguez
62717f091a Merge 2009-04-14 12:25:54 -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