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
Tobias Hartmann
ea755702aa
8059468: Fix PrintCodeCache output changed by JDK-8059137
...
Change output of PrintCodeCache to print "CodeCache" instead of "Code Cache" and change name of non-method code heap to non-nmethod code heap.
Reviewed-by: vlivanov, anoll
2014-09-30 15:44:43 +02:00
Vladimir Ivanov
55291de970
8058825: EA: ConnectionGraph::split_unique_types does incorrect scalar replacement
...
Reviewed-by: kvn
2014-09-29 11:46:05 -07:00
Aleksey Shipilev
f824f8c3cb
8058968: Compiler time traces should be improved
...
Use CITime consistently, make C2 to report to CompilerBroker, more probes.
Reviewed-by: vlivanov, jrose
2014-09-25 12:10:57 +04:00
Tobias Hartmann
cd01de591a
8015774: Add support for multiple code heaps
...
Support for segmentation of the code cache. Separate code heaps are created and used to store code of different types.
Reviewed-by: kvn, iveresov, roland, anoll, egahlin, sla
2014-09-17 08:00:07 +02:00
Roland Westrelin
2d59d215e2
8057758: Tests run TypeProfileLevel=222 crash with guarantee(0) failed: must find derived/base pair
...
Use TypeAryPtr::INT type with offset 0 in inline_multiplyToLen().
Reviewed-by: kvn, iveresov
2014-09-09 15:47:18 -07:00
Niclas Adlertz
1b124f9f48
Merge
2014-09-09 16:14:40 +02:00
Vladimir Kozlov
98f413fa1f
Merge
2014-09-04 22:59:17 -07:00
Aleksey Shipilev
13329b5040
8050147: StoreLoad barrier interferes with stack usages
...
Reviewed-by: jrose, kvn, drchase
2014-09-04 13:11:25 +04:00
Serguei Spitsyn
f1aa6a6d0c
Merge
2014-08-29 11:35:03 -07:00
Coleen Phillimore
73d759e533
8049105: Move array component mirror to instance of java/lang/Class (hotspot part 2)
...
This removes component mirrors from arrayKlass metadata and the C2 intrinsic for them.
Reviewed-by: kvn, twisti, mgerdin
2014-08-28 11:29:09 -04:00
Zoltan Majo
6ec9232c46
8051415: TypeTuple::make_domain() and TypeTuple::make_range() allocate too much memory
...
Change memory allocation in TypeTuple::make_domain() and TypeTuple::make_range() to not allocate memory for TypeFunc::Parms.
Reviewed-by: kvn, roland
2014-08-27 10:02:58 +02:00
Roland Westrelin
400f0f7a8f
8055153: nsk/stress/jck60/jck60014 crashes on sparc
...
Missing control for LoadRange and LoadKlass nodes created during arraycopy node expansion
Reviewed-by: kvn, iveresov
2014-08-19 17:23:38 +02:00
Tobias Hartmann
8b9a829836
8048879: "unexpected yanked node" opto/postaloc.cpp:139
...
MemBarAcquireNode prevents deletion of dead LoadNNode. Added condition to 'has_special_unique_user' to trigger deletion.
Reviewed-by: kvn, iveresov
2014-08-19 07:36:11 +02:00
Vladimir Kozlov
b86cece468
Merge
2014-08-15 12:27:50 -07:00
Igor Veresov
8ed4cb5a02
8054883: Segmentation error while running program
...
Fix pattern matching of range check
Reviewed-by: kvn
2014-08-13 17:37:11 -07:00
Vladimir Kozlov
ed5be50e9e
8054927: Missing MemNode::acquire ordering in some volatile Load nodes
...
Fixed memory ordering parameter and added missing barriers for volatile loads.
Reviewed-by: roland, iveresov
2014-08-13 13:05:04 -07:00
Zhengyu Gu
8a690a1250
6424123: JVM crashes on failed 'strdup' call
...
Calling os::malloc()/os::strdup() and new os::strdup_check_oom() instead of ::malloc()/::strdup() for native memory tracking purpose
Reviewed-by: coleenp, ctornqvi, kvn
2014-08-11 10:18:09 -07:00
Zhengyu Gu
d595244c27
Merge
2014-08-11 07:20:39 -07:00
Roland Westrelin
dc1afd4abe
Merge
2014-08-11 13:02:44 +00:00
Roland Westrelin
a56ade07c7
7173584: Implement arraycopy as a macro node
...
Delay the conversion of arraycopy to stub calls to macro expansion
Reviewed-by: kvn, iveresov
2014-08-11 14:12:51 +02:00
Tobias Hartmann
a67aa1e3df
8043284: Optimize signed integer comparison
...
Folding of BoolNode if input add/sub of CmpI overflows and we can prove that compared value is not in the two resulting ranges. Added test for CmpI and CmpU optimizations.
Reviewed-by: kvn, rbackman, roland
2014-08-11 13:01:37 +02:00
Zhengyu Gu
f0cf82f571
8046598: Scalable Native memory tracking development
...
Enhance scalability of native memory tracking
Reviewed-by: coleenp, ctornqvi, gtriantafill
2014-08-07 12:18:58 -07:00
Vladimir Kozlov
c620214d18
8041984: CompilerThread seems to occupy all CPU in a very rare situation
...
Add new timeout checks to EA.
Reviewed-by: iveresov, drchase
2014-10-24 10:28:19 -07:00
Vladimir Ivanov
916697af2c
8036748: assert(_base == Int) failed: Not an Int w/ -XX:+TraceIterativeGVN
...
Reviewed-by: kvn, roland
2014-10-24 09:14:41 -07:00
Vladimir Ivanov
83181efbeb
8058847: C2: EliminateAutoBox regression after 8042786
...
Reviewed-by: kvn, roland
2014-10-24 09:13:12 -07:00
Albert Noll
6520320d1a
8046809: vm/mlvm/meth/stress/compiler/deoptimize CodeCache is full
...
Use separate sweeper thread; enables more aggressive sweeping.
Reviewed-by: kvn, jrose
2014-10-24 14:25:46 +02:00
Igor Veresov
7b42cc8306
8047383: SIGBUS in C2 compiled method weblogic.wsee.jaxws.framework.jaxrpc.EnvironmentFactory$SimulatedWsdlDefinitions.<init>
...
Do not rematerialize constant table loads in PhaseAggressiveCoalesce::insert_copies()
Reviewed-by: kvn
2014-10-23 09:41:59 -10:00
Roland Westrelin
355f6eb4ae
8046698: assert(false) failed: only Initialize or AddP expected macro.cpp:943
...
PhiNode inserted between AllocateNode and Initialization node confuses allocation elimination
Reviewed-by: kvn
2014-08-02 07:06:08 +02:00
Vladimir Kozlov
7764490363
8052081: Optimize generated by C2 code for Intel's Atom processor
...
Allow to execute vectorization and crc32 optimization on Atom. Enable UseFPUForSpilling by default on x86.
Reviewed-by: roland
2014-08-05 15:02:10 -07:00
Tobias Hartmann
70a55eac34
8054033: Remove unused references to Compile*
...
Removed unused references to Compile* missed by JDK-8034812.
Reviewed-by: kvn, roland
2014-08-05 09:58:52 +02:00
Roland Westrelin
fa27000f3c
8055910: closed/java/util/Collections/CheckedCollections.java failed with ClassCastException not thrown
...
Missing subtype check for Arrays.copyOf intrinsic
Reviewed-by: kvn, iveresov
2014-08-29 16:32:29 +02:00
Vladimir Kozlov
b9e949183d
8055494: Add C2 x86 intrinsic for BigInteger::multiplyToLen() method
...
Add new C2 intrinsic for BigInteger::multiplyToLen() on x86 in 64-bit VM.
Reviewed-by: roland
2014-09-02 12:48:45 -07:00
Vladimir Kozlov
8b93fb04cd
8056964: JDK-8055286 changes are incomplete
...
Added ccstr and ccstrlist types to compilerOracle 'option' command
Reviewed-by: roland
2014-09-02 10:26:48 -07:00
Tobias Hartmann
79be04020a
8056067: NodeHash debug variables are available in product build
...
Make NodeHash debug variables only available in debug/optimized build.
Reviewed-by: kvn, roland
2014-08-29 14:46:35 +02:00
Tobias Hartmann
e3073f2e53
8053915: bigapps assert failure in C2: modified node is not on IGVN._worklist
...
Add modified node to the IGVN worklist in 'PhaseIdealLoop::do_range_check'.
Reviewed-by: kvn, roland
2014-07-31 08:39:47 +02:00
Tobias Hartmann
efc7daaf82
8054081: Crashes with assert "modified node is not on IGVN._worklist"
...
Modified safepoint nodes are not added to the IGVN worklist by 'PhaseMacroExpand::scalar_replacement()'
Reviewed-by: kvn, roland
2014-08-05 08:25:10 +02:00
Roland Westrelin
e546e2a060
8054054: 8040121 is broken
...
C++ code pattern from 8040121 is incorrect
Reviewed-by: kvn
2014-07-31 19:59:36 +02:00
Tobias Hartmann
d2a5b70cdf
8040121: Load variable through a pointer of an incompatible type in src/hotspot/src/share/vm: opto/output.cpp, runtime/sharedRuntimeTrans.cpp, utilities/globalDefinitions_visCPP.hpp
...
Fixed parfait warnings in globalDefinitions files by using a union for casts.
Reviewed-by: kvn
2014-07-29 13:54:16 +02:00