1305 Commits

Author SHA1 Message Date
Igor Veresov
aca3a19f56 8068881: SIGBUS in C2 compiled method weblogic.wsee.jaxws.framework.jaxrpc.EnvironmentFactory$SimulatedWsdlDefinitions.<init>
Use MachMerge to hook together defs of the same multidef value in a block

Reviewed-by: kvn, vlivanov
2015-01-19 12:29:50 -08:00
Tobias Hartmann
e40b9593ca Merge 2015-01-19 11:35:45 +00:00
Coleen Phillimore
ee01e4e88b Merge 2015-06-24 21:58:05 -04:00
Bill Pittore
304b59b0c8 8081202: Hotspot compile warning: "Invalid suffix on literal; C++11 requires a space between literal and identifier"
Need to add a space between macro identifier and string literal

Reviewed-by: stefank, dholmes, kbarrett
2015-06-24 12:12:25 -04:00
Zoltan Majo
eb5be4c2fe 8066312: Add new Node* Node::find_out(int opc) method
Added methods find_user_with() and has_user_with() for searching for a particular out type.

Reviewed-by: kvn, jrose
2015-01-19 09:32:40 +01:00
Axel Siebenborn
0520df8a92 8068909: SIGSEGV in c2 compiled code with OptimizeStringConcat
Reviewed-by: kvn
2015-01-16 13:58:22 +01:00
Zoltan Majo
9d6b3c1d71 8067374: Use %f instead of %g for LogCompilation output
Changed format string from %g to %f.

Reviewed-by: kvn
2015-01-15 11:30:13 +01:00
Vladimir Kozlov
834ff91cc5 8068864: C2 failed: modified node is not on IGVN._worklist
Use igvn.replace_input_of() instead of set_req().

Reviewed-by: iveresov, vlivanov
2015-01-14 17:27:00 -08:00
Dean Long
7002708d14 Merge 2015-01-09 13:28:02 -05:00
Dean Long
f5750b67fd Merge 2015-01-08 17:45:10 -05:00
Roland Westrelin
d2891a37e7 8027626: assert(Opcode() != Op_If || outcnt() == 2) failed: bad if #1
IGVN encounters IfNode with single projection when optimizing dying subgraph

Reviewed-by: kvn
2015-01-08 11:00:38 +01:00
Goetz Lindenmaier
1c18aef92c 8064457: Introduce compressed oops mode disjoint base and improve compressed heap handling
Introduce compressed oops mode disjoint base and improve compressed heap handling.

Reviewed-by: kvn, coleenp
2015-01-05 12:07:37 -05:00
Vladimir Ivanov
5fd1e54fc1 8067338: compiler/debug/TraceIterativeGVN.java segfaults
Reviewed-by: kvn
2014-12-19 16:42:40 -08:00
Roland Westrelin
2e82794bfa 6700100: optimize inline_native_clone() for small objects with exact klass
Optimize small instance clones as loads/stores

Reviewed-by: kvn, iveresov
2014-12-16 13:49:36 +01:00
Roland Westrelin
186ca57447 8055530: assert(_exits.control()->is_top() || !_gvn.type(ret_phi)->empty()) failed: return value must be well defined
Concurrent class loading causes return phi to become top

Reviewed-by: kvn
2014-12-22 11:21:20 +01:00
Tobias Hartmann
09aa6561da 8066763: fatal error "assert(false) failed: unexpected yanked node" in postaloc.cpp:139
Check for dead input nodes after replacing compare node with implicit null check.

Reviewed-by: kvn
2014-12-12 09:07:54 +01:00
Vladimir Kozlov
48b6c6007f Merge 2014-12-11 15:06:12 -08:00
Andrew Haley
0b30e012ee 8064611: AARCH64: Changes to HotSpot shared code
Everything except cpu/ and os_cpu/

Reviewed-by: dholmes, goetz, dlong, coleenp, kvn
2014-12-11 13:11:53 -08:00
Roland Westrelin
caa8dcea64 8066103: C2's range check smearing allows out of bound array accesses
Range check smearing uncorrectly adjust first range check in a list of range checks to cover all of them

Reviewed-by: jrose, kvn, iveresov
2014-12-09 18:49:13 +01:00
Roland Westrelin
5974dd3005 8066775: opto/node.hpp:355, assert(i < _max) failed: oob: i=1, _max=1
Bad assumption on graph shape in CastIINode::Value if that part of the graph is becoming dead.

Reviewed-by: kvn
2014-12-05 18:03:15 +01:00
Roland Westrelin
686e5a0a6f 8064703: crash running specjvm98's javac following 8060252
Uncommon trap between arraycopy and initialization may leave array initialized

Reviewed-by: kvn, vlivanov, goetz
2014-12-01 11:59:56 +01:00
Vladimir Kozlov
65fe921d3d 8066199: C2 escape analysis prevents VM from exiting quickly
Check for safepoint and block during EA Connection graph construction.

Reviewed-by: roland, vlivanov, shade
2014-12-02 12:24:31 -08:00
Roland Westrelin
6d20d3298a 8066045: opto/node.hpp:355, assert(i < _max) failed: oob: i=1, _max=1
Code in PhaseIterGVN::add_users_to_worklist() from 8054478 makes incorrect assumption about graph shape

Reviewed-by: iveresov
2014-11-27 16:54:49 +01:00
Roland Westrelin
15dcd41e87 6898462: The escape analysis with G1 cause crash assertion src/share/vm/runtime/vframeArray.cpp:94
OOM during reallocation of scalar replaced objects in deoptimization causes crashes

Reviewed-by: kvn, jrose
2014-11-25 17:33:59 +01:00
Roland Westrelin
07537703cc 8048170: Test closed/java/text/Normalizer/ConformanceTest.java failed
PhaseIdealLoop::split_if_with_blocks_post() shoulnd't reorder range checks adjusted by range check smearing

Reviewed-by: kvn, jrose
2014-12-04 14:34:11 +01:00
David Chase
f454e5e02c Merge 2014-11-13 11:35:15 -05:00
Jesper Wilhelmsson
c72d5c48e2 Merge 2014-11-13 12:29:09 +01:00
Roland Westrelin
4bc2edad15 8054478: C2: Incorrectly compiled char[] array access crashes JVM
Dead backbranch in main loop results in erroneous array access

Reviewed-by: kvn, iveresov
2014-11-13 09:19:46 +01:00
Vladimir Ivanov
5a00d5f6b5 8058148: MaxNodeLimit and LiveNodeCountInliningCutoff
Reviewed-by: kvn, roland
2014-11-24 07:29:03 -08:00
Tobias Hartmann
9adb455ba8 8065339: Failed compilation does not always trigger a JFR event 'CompilerFailure'
CompilerFailure JFR event should be triggered in ciEnv.

Reviewed-by: kvn
2014-11-24 08:48:15 +01:00
Vladimir Kozlov
f36e847523 8065618: C2 RA incorrectly removes kill projections
Don't remove KILL projections if their "defining" nodes have SCMemProj projection (memory side effects).

Reviewed-by: iveresov
2014-11-21 17:17:41 -08:00
Vladimir Ivanov
f3d9096e4d 8062258: compiler/debug/TraceIterativeGVN.java segfaults in trace_PhaseIterGVN
Reviewed-by: kvn
2014-11-17 14:02:45 -08:00
David Chase
fbe3993153 Merge 2014-11-07 13:58:52 -05:00
Staffan Larsen
bcb6a1586a Merge 2014-11-06 19:59:32 +00:00
Zoltan Majo
49b224a4f7 8057622: java/util/stream/test/org/openjdk/tests/java/util/stream/InfiniteStreamWithLimitOpTest: SEGV inside compiled code (sparc)
In Parse::array_store_check(), add control edge FROM IfTrue branch of runtime type check of the destination array TO loading _element_klass from destination array.

Reviewed-by: kvn, roland, anoll
2014-11-06 09:40:58 +01:00
Goetz Lindenmaier
0aa09022fa 8062370: Various minor code improvements
A lot of fixes useful to improve the code quality.

Reviewed-by: coleenp, dholmes
2014-10-29 10:13:24 +01:00
Jesper Wilhelmsson
b59b80b068 Merge 2014-11-03 15:53:48 +01:00
Bengt Rutisson
4601eb634a 8061308: Remove iCMS
Reviewed-by: mgerdin, jmasa
2014-10-31 09:10:51 +01:00
Roland Westrelin
79738069b0 8060252: JDK-7173584 compiler changes regress SPECjvm2008 on SPARC
Arraycopy code misses opportunities to optimize copies to just allocated array.

Reviewed-by: kvn
2014-10-20 22:53:37 +02:00
Vladimir Kozlov
8cd1a874e8 8059780: SPECjvm2008-MPEG performance regressions on x64 platforms
Back-out 8052081 changes made in lcm.cpp.

Reviewed-by: iveresov, roland
2014-11-03 12:02:40 -08:00
Vladimir Kozlov
74def215cd 8054492: Casting can result in redundant null checks in generated code
Add C2 intrinsic for Class.cast() method and force inline it too.

Reviewed-by: jrose, roland, drchase, iignatyev
2014-10-31 16:51:57 -07:00
Jesper Wilhelmsson
1570e4c406 Merge 2014-10-16 15:59:39 +00:00
Zoltan Majo
ed26c7e640 8059604: Add CompileThresholdScaling flag to control when methods are first compiled (with and withour TieredCompilation)
This patch adds a new flag (CompileThresholdScaling) to control when methods are first compiled

Reviewed-by: anoll, iveresov, kvn
2014-10-15 14:00:41 +02:00
Zoltan Majo
bde7fd61b4 8060215: per-method PrintIdealGraphLevel
Use CompileCommand=option to set PrintIdealGraphLevel on a per-method level. Introduce the PrintIdealGraph develop to control/check if printing the graph is enabled for any method

Reviewed-by: kvn, dlong, thartmann
2014-10-15 10:51:43 +02:00
Jesper Wilhelmsson
1934c66969 Merge 2014-10-13 16:05:46 +02:00
Staffan Friberg
8b424b422f 8057737: Avoid G1 write barriers on newly allocated objects
Reviewed-by: mgerdin, kvn, iveresov
2014-10-09 13:06:15 -07:00
Albert Noll
82171aa7ab 8059331: Print additional information for the assert in Compile::start()
Add additional output that shows the failure reason

Reviewed-by: kvn
2014-10-06 06:51:37 -07:00
Roland Westrelin
f575843d51 8058746: escape analysis special case code for array copy broken by 7173584
Escape analysis doesn't handler arraycopy nodes properly

Reviewed-by: kvn, iveresov, vlivanov
2014-10-06 14:53:30 +02:00
Vladimir Kozlov
d124a839ce 8059299: assert(adr_type != NULL) failed: expecting TypeKlassPtr
Use top() for dead paths when initializing Phi node of exceptions klasses in Parse::catch_inline_exceptions().

Reviewed-by: jrose, vlivanov
2014-10-02 11:36:44 -07:00
Vladimir Ivanov
5a5f718b6f 8059556: C2: crash while inlining MethodHandle invocation w/ null receiver
Reviewed-by: kvn, jrose
2014-10-01 12:34:45 -07:00