256 Commits

Author SHA1 Message Date
Roland Westrelin
9429c17b35 8205574: Loop predication "assert(f <= 1 && f >= 0) failed Incorrect frequency"
Reviewed-by: kvn
2018-11-09 10:52:15 +01:00
Martin Doerr
598f595947 8213604: Fix missing includes after JDK-8212673
Reviewed-by: tschatzl, roland
2018-11-09 15:19:11 +01:00
Roman Kennke
9e754390c6 8213489: GC/C2 abstraction for Compile::final_graph_reshaping()
Reviewed-by: kvn, roland
2018-11-09 10:38:07 +01:00
Roland Westrelin
b2541f90e6 8212673: jtreg/applications/runthese/RunThese30M.java fails in C2 with "assert(!had_error) failed: bad dominance"
Reviewed-by: thartmann, kvn, shade
2018-11-08 10:08:52 +01:00
Roman Kennke
31cfeabc46 8213469: Remove/fix leftovers from JDK-8213384: Move G1/C2 barrier verification into G1BarrierSetC2
Reviewed-by: kvn, roland
2018-11-07 20:24:44 +01:00
Roman Kennke
bb792b0337 8213371: GC/C2 abstraction and cleanup to handle custom offset for GC memory accesses
Reviewed-by: kvn, roland
2018-11-07 20:21:35 +01:00
Martin Doerr
e0369ea66f 8213464: Fix missing include after JDK-8212243
Reviewed-by: roland
2018-11-07 15:13:12 +01:00
Roman Kennke
9ba72c0c2c 8213381: Hook to allow GC to inject Node::Ideal() calls
Reviewed-by: kvn, eosterlund, roland
2018-11-06 23:03:05 +01:00
Roman Kennke
29f03ebf2c 8213384: Move G1/C2 barrier verification into G1BarrierSetC2
Reviewed-by: kvn, roland, eosterlund
2018-11-06 17:28:14 +01:00
Roland Westrelin
8ab8d45552 8212243: More gc interface tweaks for arraycopy
Reviewed-by: kvn, eosterlund
2018-11-06 10:01:27 +01:00
Roland Westrelin
8e57878e0a 8212610: Fix handling of memory in PhaseIdealLoop::clone_loop_predicates()
Reviewed-by: kvn, thartmann
2018-11-05 13:13:29 +01:00
Kuai Wei
dcb6e1dda8 8210853: JIT: C2 doesn't skip post barrier for new allocated objects
Skip copy Region node when look for last allocation

Reviewed-by: thartmann, kvn
2018-10-30 14:38:59 -07:00
Tobias Hartmann
4b27547977 8177899: Tests fail due to code cache exhaustion on machines with many cores
Implemented upper limit on CICompilerCount based on code cache size.

Reviewed-by: kvn, mdoerr
2018-10-30 09:06:08 +01:00
Thomas Stuefe
2c208aa563 8212896: AIX build breaks after 8212611
Reviewed-by: simonis, dholmes
2018-10-24 10:42:12 +02:00
Roland Westrelin
b4c401fa37 8212611: Small collection of simple changes from shenandoah
Reviewed-by: thartmann, kvn, eosterlund
2018-10-17 10:19:13 +02:00
Mandy Chung
5e6d6b8642 8207146: Rename jdk.internal.misc.Unsafe::xxxObject to xxxReference
Reviewed-by: dholmes, thartmann
2018-10-22 17:00:04 -07:00
Roman Kennke
cb17e450b3 8212603: Need to step over GC barriers in Node::eqv_uncast()
Reviewed-by: shade, kvn, eosterlund
2018-10-18 21:14:49 +02:00
Tobias Hartmann
6b83ac96ab 8210215: C2 should optimize trichotomy calculations
Ideal transformation to optimize trichotomic comparisons.

Reviewed-by: kvn, jrose
2018-10-16 14:17:19 +02:00
Roland Westrelin
2ab522db78 8211233: MemBarNode::trailing_membar() and MemBarNode::leading_membar() need to handle dying subgraphs better
Reviewed-by: kvn, thartmann
2018-09-27 17:46:01 +02:00
Roland Westrelin
17f301f734 8210389: C2: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc
Reviewed-by: kvn, thartmann
2018-09-18 20:41:17 +02:00
Matthias Baesken
e2d7983ab8 8211929: hotspot/share/opto/parse2.cpp compile error with gcc 7.3.1
Reviewed-by: kvn, stuefe
2018-10-10 16:56:18 +02:00
Roland Westrelin
a2d1b6b720 8211232: GraphKit::make_runtime_call() sometimes attaches wrong memory state to call
Reviewed-by: kvn
2018-09-28 14:24:22 +02:00
Roland Westrelin
ce59b4b472 8210887: Tweak C2 gc api for arraycopy
Reviewed-by: kvn, thartmann
2018-09-28 10:42:40 +02:00
Roland Westrelin
03e4400864 8210885: Convert left over loads/stores to access api
Reviewed-by: thartmann, rkennke
2018-09-18 20:49:44 +02:00
Pengfei Li
dd4961b5aa 8210152: Optimize integer divisible by power-of-2 check
Integer conditional negation operation before zero check is eliminated

Reviewed-by: kvn, thartmann
2018-09-25 14:16:33 +02:00
Mikael Vidstedt
25295df059 8210848: Obsolete SyncKnobs
Reviewed-by: redestad, coleenp, dholmes, dcubed
2018-09-24 22:12:07 -07:00
Roman Kennke
0055586b61 8210752: Remaining explicit barriers for C2
Reviewed-by: roland, shade
2018-09-14 14:43:40 +02:00
Roland Westrelin
04c961659f 8210390: C2 still crashes with "assert(mode == ControlAroundStripMined && use == sfpt) failed: missed a node"
Reviewed-by: thartmann, kvn
2018-09-12 16:38:13 +02:00
Aleksey Shipilev
1194d162cb 8210963: Build failures after "8210829: Modularize allocations in C2"
Reviewed-by: rkennke, thartmann
2018-09-20 21:14:38 +02:00
Roman Kennke
8ce9db9ed5 8210829: Modularize allocations in C2
Reviewed-by: kvn, roland
2018-09-19 21:31:33 +02:00
Tobias Hartmann
8e0e188abd 8210387: C2 compilation fails with "assert(node->_last_del == _last) failed: must have deleted the edge just produced"
Refresh iterator and start from the beginning while there is progress when removing dead regions.

Reviewed-by: kvn
2018-09-12 09:23:36 +02:00
Roman Kennke
a9f2e04d54 8210187: Explicit barriers for C2
Reviewed-by: eosterlund, shade, roland, pliden
2018-08-31 16:28:52 +02:00
Roland Westrelin
052a740695 8209544: AES encrypt performance regression in jdk11b11
Reviewed-by: kvn, vlivanov
2018-09-06 16:27:07 +02:00
Erik Österlund
1c727102ab 8210158: Accessorize JFR getEventWriter() intrinsics
Reviewed-by: kvn, neliasso, roland, rbackman
2018-09-05 10:11:42 +02:00
Vladimir Kozlov
6f8114227c 8209594: guarantee(this->is8bit(imm8)) failed: Short forward jump exceeds 8-bit offset
Replace short jumps and fix other issues when generated code exceed expected range.

Reviewed-by: dlong, rasbold
2018-09-04 12:44:02 -07:00
Roland Westrelin
7135605c6f 8209691: Allow MemBar on single memory slice
Reviewed-by: kvn, vlivanov
2018-08-22 10:29:17 +02:00
Roland Westrelin
423c207dc7 8209639: assert failure in coalesce.cpp: attempted to spill a non-spillable item
Reviewed-by: neliasso, kvn
2018-08-17 17:13:12 +02:00
Tobias Hartmann
a494a819eb 8209833: C2 compilation fails with "assert(ex_map->jvms()->same_calls_as(_exceptions->jvms())) failed: all collected exceptions must come from the same place"
Deoptimize if exception is thrown in _clone intrinsic.

Reviewed-by: kvn
2018-08-24 08:17:23 +02:00
Roland Westrelin
40af989884 8209686: cleanup arguments to PhaseIdealLoop() constructor
Reviewed-by: thartmann, kvn, pliden
2018-08-22 10:36:39 +02:00
Erik Österlund
ce61e39060 8208601: Introduce native oop barriers in C2 for OopHandle
Reviewed-by: neliasso, kvn
2018-08-22 13:06:33 +02:00
Roland Westrelin
417149e74a 8209684: Intrinsics that assume some input non null should use GraphKit::must_be_not_null()
Reviewed-by: kvn, thartmann
2018-08-22 10:09:06 +02:00
Roland Westrelin
f3e518394b 8209420: Track membars for volatile accesses so they can be properly optimized
Reviewed-by: adinn, aph, thartmann
2018-08-14 16:54:47 +02:00
Lois Foltan
75ed173e15 8209301: JVM rename is_anonymous, host_klass to unsafe specific terminology ahead of Unsafe.defineAnonymousClass deprecation
Clean up VM anonymous class terminology.

Reviewed-by: coleenp, dholmes, mchung
2018-08-20 08:25:57 -04:00
Tobias Hartmann
73bcb0507e 8208275: C2 crash in Node::add_req(Node*)
Split-if optimization should not process (dead) counted loops.

Reviewed-by: roland
2018-08-17 08:21:20 +02:00
Dmitrij Pochepko
4377d3abe2 8209439: C2 library_call can potentially ignore Math.pow intrinsic or use null pointer
Reviewed-by: kvn, thartmann
2018-08-15 14:48:12 +03:00
Thomas Schatzl
e98c176026 8208670: Compiler changes to allow enabling -Wreorder
Reviewed-by: kvn
2018-08-08 15:31:06 +02:00
Jesper Wilhelmsson
4fc510cc89 Merge 2018-07-14 02:14:54 +02:00
Roland Westrelin
6dc1ccac6b 8200282: Serializing non-zero byte as zero to ByteBuffer
Arraycopy converted as a series of loads/stores uses wrong slice for loads

Reviewed-by: kvn, thartmann
2018-07-13 15:44:54 +02:00
Goetz Lindenmaier
2e682fa3cd 8207049: Minor improvements of compiler code
Reviewed-by: kvn, mdoerr
2018-07-12 16:31:28 +02:00
Roland Westrelin
8c2d9b5ff0 8202123: C2 Crash in Node::in(unsigned int) const+0x14
Reviewed-by: kvn, thartmann
2018-06-29 17:59:44 +02:00