1736 Commits

Author SHA1 Message Date
Keith McGuigan
222ac81222 7020373: JSR rewriting can overflow memory address size variables
Abort if incoming classfile's parameters would cause overflows

Reviewed-by: coleenp, dcubed, never
2011-04-12 16:42:26 -04:00
David Katleman
079c89189f 7044486: open jdk repos have files with incorrect copyright headers, which can end up in src bundles
Reviewed-by: ohair, trims
2011-05-25 13:31:51 -07:00
John Coomes
2af4bb66d4 6791672: enable 1G and larger pages on solaris
Reviewed-by: ysr, iveresov, johnc
2011-08-17 10:32:53 -07:00
Antonios Printezis
f482091133 7039627: G1: avoid BOT updates for survivor allocations and dirty survivor regions incrementally
Refactor the allocation code during GC to use the G1AllocRegion abstraction. Use separate subclasses of G1AllocRegion for survivor and old regions. Avoid BOT updates and dirty survivor cards incrementally for the former.

Reviewed-by: brutisso, johnc, ysr
2011-08-12 11:31:06 -04:00
John Cuthbertson
0da9dc64d2 7074579: G1: JVM crash with JDK7 running ATG CRMDemo Fusion App
Handlize MemoryUsage klass oop in createGCInfo routine

Reviewed-by: tonyp, fparain, ysr, jcoomes
2011-08-11 11:36:29 -07:00
Kevin Walls
e6603b37f2 Merge 2011-08-11 14:58:29 +01:00
John Cuthbertson
f7d3d2b63e 7069863: G1: SIGSEGV running SPECjbb2011 and -UseBiasedLocking
Align the reserved size of the heap and perm to the heap region size to get a preferred heap base that is aligned to the region size, and call the correct heap reservation constructor. Also add a check in the heap reservation code that the reserved space starts at the requested address (if any).

Reviewed-by: kvn, ysr
2011-08-02 12:13:13 -07:00
Krystal Mok
24e8905fdf 7072527: CMS: JMM GC counters overcount in some cases
Avoid overcounting when CMS has concurrent mode failure.

Reviewed-by: ysr
2011-08-02 14:37:35 +01:00
John Cuthbertson
144fb9dc25 7068240: G1: Long "parallel other time" and "ext root scanning" when running specific benchmark
In root processing, move the scanning of the reference processor's discovered lists to before RSet updating and scanning. When scanning the reference processor's discovered lists, use a buffering closure so that the time spent copying any reference object is correctly attributed. Also removed a couple of unused and irrelevant timers.

Reviewed-by: ysr, jmasa
2011-08-01 10:04:28 -07:00
David Holmes
536904f7d3 7046490: Preallocated OOME objects should obey Throwable stack trace protocol
Update the OOME stacktrace to contain Throwable.UNASSIGNED_STACK when the backtrace is filled in

Reviewed-by: mchung, phh
2011-07-22 00:29:01 -07:00
Coleen Phillimore
0d6e53412e Merge 2011-07-16 22:21:39 -04:00
Vladimir Kozlov
fcc8abec1e Merge 2011-07-13 10:48:42 -07:00
John Coomes
abe5e3a903 Merge 2011-07-12 16:32:25 -07:00
Igor Veresov
09a3aca98b 7058510: multinewarray with 6 dimensions uncommon traps in server compiler
Pass arguments to runtime via java array for arrays with > 5 dimensions

Reviewed-by: never, kvn, jrose, pbk
2011-07-08 15:33:03 -07:00
Vladimir Kozlov
20a26c54cd 7059034: Use movxtod/movdtox on T4
Use new VIS3 mov instructions on T4 for move data between general and float registers.

Reviewed-by: never, twisti
2011-07-08 09:38:48 -07:00
Coleen Phillimore
f854e0370d Merge 2011-07-07 22:34:34 -04:00
John Coomes
bf486b030a 7053189: remove some unnecessary platform-dependent includes
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-07 15:44:34 -07:00
Vladimir Kozlov
9120c1e85c Merge 2011-07-07 10:51:07 -07:00
Tom Rodriguez
d57ae98564 7062856: Disassembler needs to be smarter about finding hsdis after 1.7 launcher changes
Do explicit lookup emulating old LD_LIBRARY_PATH search

Reviewed-by: kvn, jrose
2011-07-06 18:15:21 -07:00
John Coomes
804e3e1d96 7061225: os::print_cpu_info() should support os-specific data
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 13:02:54 -07:00
John Coomes
73687afa5e 7061204: clean the chunk table synchronously in embedded builds
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:28:07 -07:00
John Coomes
769ba74d9c 7061192: option handling adjustments for oracle and embedded builds
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:17:44 -07:00
John Coomes
07d5e13794 7061187: need some includes for arm/ppc
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:03:01 -07:00
Tom Rodriguez
d23654d851 7061101: adlc should complain about mixing block and expression forms of ins_encode
Reviewed-by: kvn
2011-07-06 09:27:54 -07:00
John Coomes
ce3ae66eeb Merge 2011-07-06 08:43:01 -07:00
Tom Rodriguez
2337123692 6478991: C1 NullCheckEliminator yields incorrect exceptions
Reviewed-by: twisti, iveresov
2011-07-05 16:07:54 -07:00
Igor Veresov
47caaa4c06 7057120: Tiered: Allow C1 to inline methods with loops
Recompile the enclosing methods without inlining of the method that has OSRed to level 4 or recompile the enclosing method at level 4.

Reviewed-by: kvn, never
2011-07-01 10:37:37 -07:00
Igor Veresov
528a9bb452 7058689: Tiered: Reprofiling doesn't happen in presence of level 4 OSR methods
Take into account current state of profiling before believing that existing higher level versions are valid

Reviewed-by: kvn, never
2011-07-01 10:35:54 -07:00
Ashok Srinivasa Murthy
774aa0130a 6951623: 3/3 possible performance problems in FollowReferences() and GetObjectsWithTags()
Call collect_stack_roots() before collect_simple_roots() as an optimization.

Reviewed-by: ysr, dsamersoff, dcubed
2011-06-29 20:28:58 -07:00
Vladimir Kozlov
b443bf1f4c 7047954: VM crashes with assert(is_Mem()) failed
Cast constant array ptrs to bottom

Reviewed-by: never
2011-06-28 15:50:07 -07:00
Vladimir Kozlov
b3505a88a4 7044738: Loop unroll optimization causes incorrect result
Take into account memory dependencies when clonning nodes in clone_up_backedge_goo().

Reviewed-by: never
2011-06-28 15:24:29 -07:00
Krystal Mok
976fd97ddf 7058036: FieldsAllocationStyle=2 does not work in 32-bit VM
ParseClassFile() incorrectly uses nonstatic_oop_map_size() method instead of nonstatic_oop_map_count().

Reviewed-by: never
2011-06-28 14:30:27 -07:00
Bengt Rutisson
3aaa5fb06d 7016112: CMS: crash during promotion testing
Also reviewed by mikael.gerdin@oracle.com; stdlib:qsort() does byte-by-byte swapping on Windows. This leads to pointer shearing. Fix is to implement a quicksort that does full pointer updates.

Reviewed-by: never, coleenp, ysr
2011-06-28 14:23:27 +02:00
Antonios Printezis
4597e4c7a8 7049999: G1: Make the G1PrintHeapRegions output consistent and complete
Extend and make more consistent the output from the G1PrintHeapRegions flag.

Reviewed-by: johnc, jmasa
2011-06-24 12:38:49 -04:00
Ashok Srinivasa Murthy
bc408da53d 7043987: 3/3 JVMTI FollowReferences is slow
VM_HeapWalkOperation::doit() should only reset mark bits when necessary.

Reviewed-by: dsamersoff, ysr, dholmes, dcubed
2011-06-23 20:31:43 -07:00
John R Rose
8df44305c7 7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path
Reviewed-by: never
2011-06-23 17:14:06 -07:00
Tom Rodriguez
15161b8cd1 7057587: JSR 292 - crash with jruby in test/test_respond_to.rb
Don't skip receiver when GC'ing compiled invokedynamic callsites

Reviewed-by: twisti, kvn, jrose
2011-06-22 14:45:37 -07:00
Antonios Printezis
408e0b1bc1 7046182: G1: remove unnecessary iterations over the collection set
Remove two unnecessary iterations over the collection set which are supposed to prepare the RSet's of the CSet regions for parallel iterations (we'll make sure this is done incrementally). I'll piggyback on this CR the removal of the G1_REM_SET_LOGGING code.

Reviewed-by: brutisso, johnc
2011-06-21 15:23:07 -04:00
Antonios Printezis
7ceee7642b 7055073: G1: code cleanup in the concurrentMark.* files
Only cosmetic changes to make the concurrentMark.* more consistent, code-style-wise, with the rest of the codebase.

Reviewed-by: johnc, ysr
2011-06-20 22:03:13 -04:00
Vladimir Kozlov
d19a8f6e35 7052494: Eclipse test fails on JDK 7 b142
Keep 'ne' test in Counted loop when we can't guarantee during compilation that init < limit.

Reviewed-by: never
2011-06-20 16:45:35 -07:00
Y. Srinivas Ramakrishna
45f42598c1 6916968: CMS: freeList.cpp:304 assert(_allocation_stats.prevSweep() + ..., "Conservation Principle")
Fix assert and adjust demand volume computation by adding missing factor.

Reviewed-by: jmasa, tonyp
2011-06-20 09:42:26 -07:00
Tom Rodriguez
5d2e4e676b 7055355: JSR 292: crash while throwing WrongMethodTypeException
Reviewed-by: jrose, twisti, bdelsart
2011-06-16 13:46:55 -07:00
Antonios Printezis
937d6ded89 6994322: Remove the is_tlab and is_noref / is_large_noref parameters from the CollectedHeap
Remove two unused parameters from the mem_allocate() method and update its uses accordingly.

Reviewed-by: stefank, johnc
2011-06-16 15:51:57 -04:00
Tom Rodriguez
ca8939dd80 Merge 2011-06-15 10:20:03 -07:00
John Cuthbertson
43d9e95a42 7045751: G1: +ExplicitGCInvokesConcurrent causes excessive single region evacuation pauses
When ExplicitGCInvokesConcurrent is enabled, do not perform an evacuation pause if a marking cycle is already in progress and block the requesting thread until the marking cycle completes.

Reviewed-by: tonyp, ysr
2011-06-15 10:18:04 -07:00
Tom Rodriguez
a21aad64af Merge 2011-06-14 15:20:55 -07:00
Tom Rodriguez
0c0705ca8c 7052219: JSR 292: Crash in ~BufferBlob::MethodHandles adapters
Reviewed-by: twisti, kvn, jrose
2011-06-14 14:41:33 -07:00
Christian Thalinger
5919a613cc 7053520: JSR292: crash in invokedynamic with C1 using tiered and compressed oops
Reviewed-by: iveresov, never
2011-06-14 12:25:05 -07:00
John Cuthbertson
b94d0b830c 7004681: G1: Extend marking verification to Full GCs
Perform a heap verification after the first phase of G1's full GC using objects' mark words to determine liveness. The third parameter of the heap verification routines, which was used in G1 to determine which marking bitmap to use in liveness calculations, has been changed from a boolean to an enum with values defined for using the mark word, and the 'prev' and 'next' bitmaps.

Reviewed-by: tonyp, ysr
2011-06-14 11:01:10 -07:00
Antonios Printezis
015e872efe 7046558: G1: concurrent marking optimizations
Some optimizations to improve the concurrent marking phase: specialize the main oop closure, make sure a few methods in the fast path are properly inlined, a few more bits and pieces, and some cosmetic fixes.

Reviewed-by: stefank, johnc
2011-06-14 10:33:43 -04:00