1016 Commits

Author SHA1 Message Date
Filipp Zhinkin
e8d1955b5e 8051344: JVM crashed in Compile::start() during method parsing w/ UseRTMDeopt turned on
Call rtm_deopt() only if there were no compilation bailouts before.

Reviewed-by: kvn
2014-07-28 15:06:38 -07:00
Rickard Bäckman
84271f1c96 Merge 2014-07-24 14:38:26 +02:00
Serguei Spitsyn
b0367c3bea Merge 2014-07-18 23:53:59 -07:00
Albert Noll
0f4091ddaf Merge 2014-07-25 10:57:57 +00:00
Albert Noll
e4e0c214ff Merge 2014-07-25 10:04:36 +00:00
Albert Noll
cf7a398eea Merge 2014-07-25 09:44:53 +00:00
Tobias Hartmann
11eb4553c9 8040213: C2 does not put all modified nodes on IGVN worklist
Verification code is added that checks if modified nodes are put on the IGVN worklist and modified nodes are processed by 'PhaseIterGVN::transform_old()'

Reviewed-by: kvn, jrose
2014-07-25 10:06:17 +02:00
Zoltan Majo
1d44fa46f0 8050860: Cleanup TypeTuple and TypeFunc
Declared fields TypeFunc::_domain, TypeFunc::_range, TypeTuple::_cnt and TypeTuple::_fields private, changed direct accesses to fields to use accessor methods.

Reviewed-by: kvn, vlivanov
2014-07-24 09:15:38 +02:00
Zoltan Majo
33058abb3f 8051303: 'optimized' build broken by JDK-8039425
Changed preprocessor directive in PhaseIterGVN::optimize()

Reviewed-by: kvn, anoll
2014-07-21 10:25:58 +02:00
Coleen Phillimore
c9b2bc62c9 Merge 2014-07-14 10:15:21 -04:00
Vladimir Ivanov
db4aa1aa54 8048703: ReplacedNodes dumps it's content to tty
Reviewed-by: roland, iveresov, drchase
2014-07-14 03:29:42 -07:00
Vladimir Ivanov
34bf429064 8049528: Method marked w/ @ForceInline isn't inlined with "executed < MinInliningThreshold times" message
Reviewed-by: roland, jrose
2014-07-14 03:24:35 -07:00
David Chase
1379a7f2f0 8036588: VerifyFieldClosure fails instanceKlass:3133
Changed deopt live-pointer test to use returns-object instead of live-and-returns-object

Reviewed-by: iveresov, kvn, jrose
2014-07-11 19:51:36 -04:00
Goetz Lindenmaier
25f33c005d 8049325: Introduce and clean up umbrella headers for the files in the cpu subdirectories
Introduce and clean up umbrella headers for the files in the cpu subdirectories.

Reviewed-by: lfoltan, coleenp, dholmes
2014-07-04 11:46:01 +02:00
Jon Masamitsu
38aa661273 Merge 2014-06-26 18:55:29 -07:00
Rickard Bäckman
99ff96473e 8046289: compiler/6340864/TestLongVect.java timeout with
Reviewed-by: iveresov, vlivanov
2014-06-23 13:33:23 +02:00
Tobias Hartmann
fa6b220619 8022968: Some codecache allocation failures don't result in invoking the sweeper
Add calls to CompileBroker::handle_full_code_cache() or fail gracefully whenever allocation in the code cache fails.

Reviewed-by: iveresov, vlivanov
2014-07-03 08:46:44 +02:00
Roland Westrelin
b5e96ad985 8046542: [I.finalize() calls from methods compiled by C1 do not cause IllegalAccessError on Sparc
Call to Object.finalize() sometimes allowed by compilers on array type

Reviewed-by: iveresov, vlivanov
2014-07-02 22:54:18 +02:00
Tobias Hartmann
2626aed785 8008321: compile.cpp verify_graph_edges uses bool as int
The dead_nodes counter in verify_graph_edges(..) has the type bool but is used as int.

Reviewed-by: roland, anoll
2014-06-20 08:14:30 +02:00
Vladimir Kozlov
b571b4214a 8046516: Segmentation fault in JVM (easily reproducible)
Place new nodes on the previous loop exit in reorg_offsets().

Reviewed-by: roland
2014-06-12 10:15:43 -07:00
James Cheng
395560c428 8035968: Leverage CPU Instructions to Improve SHA Performance on SPARC
Add C2 SHA intrinsics on SPARC

Reviewed-by: kvn, roland
2014-06-11 11:05:10 -07:00
Vladimir Kozlov
56cea022c9 8035605: Expand functionality of PredictedIntrinsicGenerator
Allow several predicates and separate intrinsic methods per one intrinsified (virtual) method.

Reviewed-by: roland
2014-06-10 12:28:06 -07:00
Roland Westrelin
2838bcc3bf 8026796: Make replace_in_map() on parent maps generic
Propagate node replacements along control flow edges to callers

Reviewed-by: kvn, vlivanov
2014-06-10 13:37:16 +02:00
Vladimir Ivanov
ea0470002e 8033626: assert(ex_map->jvms()->same_calls_as(_exceptions->jvms())) failed: all collected exceptions must come from the same place
Reviewed-by: kvn, roland
2014-06-10 10:00:59 +00:00
Vladimir Kozlov
0853423f46 8046275: Fastdebug build failing on jdk9/hs/ control jobs after pulling some hs-comp changes
Add missing check for Opaque nodes from loop predicates in clone_loop().

Reviewed-by: iveresov
2014-06-09 15:42:31 -07:00
Goetz Lindenmaier
8e7c8f1d88 8044775: Improve usage of umbrella header atomic.inline.hpp
Reviewed-by: stefank, kvn
2014-06-04 11:56:44 +02:00
Rickard Bäckman
8bd4b5624c 8030976: Untaken paths should be more vigorously pruned at highest optimization level
Reviewed-by: roland, vlivanov
2014-05-22 13:42:44 +02:00
Igor Veresov
ddffd7c3f1 8044496: 8034812 broke build with clang
Remove superfluous clang-diagnostic-pop

Reviewed-by: kvn, drchase
2014-06-02 07:26:52 -10:00
Roland Westrelin
bdb8050bbf 8043413: REGRESSION: Hotspot causes segmentation fault in jdk8ux, but not in jdk7ux
Long series of lambda form calls trigger stack overflow in c2

Reviewed-by: kvn, vlivanov
2014-06-02 10:01:15 +02:00
Tobias Hartmann
2a0815a55e 8034812: remove IDX_INIT macro hack in Node class
The IDX_INIT macro used by Node::Node(...) to retrieve the Compile object is removed and replaced by a call to Compile::current(). The Node constructor, new operator and all calls to it are adapted accordingly.

Reviewed-by: kvn, jrose, iveresov, goetz
2014-06-02 08:07:29 +02:00
Albert Noll
a3b9ebba8d 8011646: SEGV in compiled code with loop predication
Remove control edge of load node to ensure that castPP removal sets the control edge correctly

Reviewed-by: kvn, roland
2014-05-30 06:50:38 +02:00
Roland Westrelin
ee80d81323 8043638: Multiple compilation attempts break LogCompulation, lead to confusing PrintInlining output
Dumps inlining only for last compilation attempt. Fix LogCompilation tool so it handles multiple compilation attempts.

Reviewed-by: vlivanov, kvn
2014-05-26 14:27:01 +02:00
Christian Thalinger
67ad89efd5 Merge 2014-05-22 16:26:05 -07:00
Coleen Phillimore
024bb79ec8 Merge 2014-05-17 19:34:38 -04:00
Yuri Gaevsky
cc3c656cf1 8025580: Temporary flags: UseNewReflection and ReflectionWrapResolutionErrors
The fix removes all UseNewReflection/ReflectionWrapResolutionErrors occurrences/logic and adds them into the list of obsolete_jvm_flags in arguments.cpp.

Reviewed-by: coleenp, hseigel
2014-05-15 17:38:50 -04:00
Christian Thalinger
115d44f61b Merge 2014-05-15 11:35:26 -07:00
Coleen Phillimore
388434f387 Merge 2014-05-12 09:47:57 -04:00
David Chase
305ec3bd3f 8037816: Fix for 8036122 breaks build with Xcode5/clang
Repaired or selectively disabled offending formats; future-proofed with additional checking

Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00
Christian Thalinger
12a085f587 Merge 2014-05-16 14:38:42 -07:00
Vladimir Kozlov
6bfc0288f3 8042786: Proper fix for 8032566
Check for overflow cases in range checks and collapse it if we can.

Reviewed-by: jrose, iveresov
2014-05-16 12:05:14 -07:00
Zhengyu Gu
adcde492fa 8041415: remove port.{cpp,hpp} files
Hotspot should use standard headers and types

Reviewed-by: coleenp, kvn
2014-05-07 06:03:31 -07:00
Tobias Hartmann
85296fec28 8036851: volatile double accesses are not explicitly atomic in C2
The C2 structure is adapted to distinguish between volatile and non-volatile double accesses.

Reviewed-by: twisti, kvn
2014-05-06 09:17:57 +02:00
Tobias Hartmann
ded0d16e25 8042052: assert(t != NULL) failed: must set before get
Added missing call to _gvn.transform to make sure the type of the PhiNode is recorded in the gvn.

Reviewed-by: kvn
2014-05-05 15:10:43 +02:00
Vladimir Kozlov
c909ac41de 8039298: assert(base == NULL || t_adr->isa_rawptr() || !phase->type(base)->higher_equal(TypePtr::NULL_PTR))
Convert the assert into the runtime check to skip IGVN optimizations for problematic memory nodes. Eliminate dead nodes more aggressively.

Reviewed-by: twisti, iveresov
2014-05-02 16:44:54 -07:00
Shrinivas Joshi
c0f886ec65 8035936: SIGBUS in StubRoutines::aesencryptBlock, solaris-sparc
Fix the arbitrary alignment issue in SPARC AES crypto stub routines.

Reviewed-by: kvn, iveresov
2014-04-30 14:14:01 -07:00
Niclas Adlertz
922879d58e 8029302: Performance regression in Math.pow intrinsic
Added special case for x^y where y == 2

Reviewed-by: kvn, roland
2014-04-25 12:48:34 +02:00
Vladimir Kozlov
26de6296e0 8041351: Crash in src/share/vm/opto/loopnode.cpp:3215 - assert(!had_error) failed: bad dominance
Add missing is_mem() check when we collect load nodes in SuperWord::co_locate_pack().

Reviewed-by: iveresov
2014-04-22 17:45:56 -07:00
Richard Reingruber
728ea561aa 8038048: assert(null_obj->escape_state() == PointsToNode::NoEscape,etc) runThese -full
Use correct set_escape_state() method.

Reviewed-by: kvn, iignatyev
2014-04-16 14:49:03 -07:00
Vladimir Kozlov
8badeecc2c 8039050: Crash in C2 compiler at Node::rematerialize
Added missing calls to record_for_igvn() in loop opts. Added verification of def-use domination.

Reviewed-by: iveresov
2014-04-15 14:34:48 -07:00
Roland Westrelin
f5adc57f94 8032410: compiler/uncommontrap/TestStackBangRbp.java times out on Solaris-Sparc V9
Make compiled code bang the stack by the worst case size of the interpreter frame at deoptimization points.

Reviewed-by: twisti, kvn
2014-04-01 09:36:49 +02:00