Jan Civlin
c7d33de202
8076284: Improve vectorization of parallel streams
...
Improve vectorization of java/util/stream/Streams$RangeIntSpliterator::forEachRemaining() method and enable loop vectorization in a given method on demand.
Reviewed-by: kvn
2015-05-05 12:33:57 -07:00
Michael C Berg
a880f3d139
8078563: Restrict reduction optimization
...
Reviewed-by: kvn, twisti
2015-04-29 15:34:04 -07:00
Vladimir Kozlov
81bb7521bd
8076523: assert(((ABS(iv_adjustment_in_bytes) % elt_size) == 0)) fails in superword.cpp
...
Check that offset % mem_oper_size == 0 when alignment is verified during vectorization.
Reviewed-by: iveresov
2015-04-02 17:16:39 -07:00
Michael C Berg
9e55e44c85
8074981: Integer/FP scalar reduction optimization
...
Add scalar reduction optimization to C2 to take advantage of vector instructions in modern x86 CPUs.
Reviewed-by: kvn, twisti
2015-04-01 18:07:50 -07: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
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
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
Morris Meyer
6db303a301
8001532: C2 node files refactoring
...
Split C2 node files into cast, convert, countbits, intrinsic, move, narrowptr and opaquenode classes
Reviewed-by: kvn, morris
2014-04-01 09:05:20 -07:00
Niclas Adlertz
94a86285a7
8010500: [parfait] Possible null pointer dereference at hotspot/src/share/vm/opto/loopnode.hpp
...
Added NULL check for loopnode() in get_pre_loop_end()
Reviewed-by: kvn, roland
2014-02-26 07:46:46 +01:00
Mikael Vidstedt
a0da47fd66
8029233: Update copyright year to match last edit in jdk8 hotspot repository for 2013
...
Copyright year updated for files modified during 2013
Reviewed-by: twisti, iveresov
2013-12-24 11:48:39 -08:00
Vladimir Kozlov
656949d014
8004867: VM crashing with assert "share/vm/opto/node.hpp:357 - assert(i < _max) failed: oob"
...
Added few checks and early bailout from Superword optimization to avoid such cases in a future.
Reviewed-by: roland, twisti
2013-02-18 16:47:15 -08:00
Vladimir Kozlov
fc84b11227
8001635: assert(in_bb(n)) failed: must be
...
Added missed check that Load node is in processed loop block.
Reviewed-by: twisti
2012-10-26 11:48:04 -07:00
Vladimir Kozlov
a9c2b6a900
8001183: incorrect results of char vectors right shift operaiton
...
Do vector right shift operation for small int types only after loads
Reviewed-by: jrose, dlong
2012-10-23 13:06:37 -07:00
Vladimir Ivanov
6674423523
7199654: Remove LoadUI2LNode
...
Removed LoadUI2L node from Ideal nodes, use match rule in .ad files instead.
Reviewed-by: kvn
2012-10-09 12:40:05 -07:00
Vladimir Kozlov
e8332c76e9
7201026: add vector for shift count
...
Add generation of vectors for scalar shift count.
Reviewed-by: roland, twisti, dlong
2012-10-02 12:25:13 -07:00
Bharadwaj Yadavalli
d5d2e78faa
7193318: C2: remove number of inputs requirement from Node's new operator
...
Deleted placement new operator of Node - node(size_t, Compile *, int).
Reviewed-by: kvn, twisti
2012-09-27 09:38:42 -07:00
Vladimir Kozlov
973fdc81a1
7200264: 7192963 changes disabled shift vectors
...
Replaced is_vector_use() call with explicit check for vector shift's count.
Reviewed-by: twisti, roland, dlong, vlivanov
2012-09-25 15:48:17 -07:00
Vladimir Kozlov
25f18c20d9
7199010: incorrect vector alignment
...
Fixed vectors alignment when several arrays are accessed in one loop.
Reviewed-by: roland, twisti
2012-09-19 16:50:26 -07:00
Vladimir Kozlov
811c047ec1
7196199: java/text/Bidi/Bug6665028.java failed: Bidi run count incorrect
...
Save whole XMM/YMM registers in safepoint interrupt handler.
Reviewed-by: roland, twisti
2012-09-17 19:39:07 -07:00
Vladimir Kozlov
cbfca3259c
7192963: assert(_in[req-1] == this) failed: Must pass arg count to 'new'
...
Fixed Pack node generation. Not vectorize shift instructions if count is not the same for all shifts and if count is vector.
Reviewed-by: twisti
2012-08-22 11:55:40 -07:00
Vladimir Kozlov
ef4102148a
7192964: assert(false) failed: bad AD file
...
Shifts with loop variant counts "a[i]=1<<b[i];" should not be vectorized since hw does not support it.
Reviewed-by: twisti
2012-08-21 14:50:02 -07:00
Vladimir Kozlov
e3c3c8527e
6340864: Implement vectorization optimizations in hotspot-server
...
Added asm encoding and mach nodes for vector arithmetic instructions on x86.
Reviewed-by: roland
2012-08-20 09:07:21 -07:00
Vladimir Kozlov
b5b10846c2
7177923: SIGBUS on sparc in compiled code for java.util.Calendar.clear()
...
Disable vectorization of a memory access with more elements per vector than one which is used for alignment on sparc
Reviewed-by: twisti
2012-06-19 15:12:56 -07:00
Vladimir Kozlov
d1191bb4f4
7119644: Increase superword's vector size up to 256 bits
...
Increase vector size up to 256-bits for YMM AVX registers on x86.
Reviewed-by: never, twisti, roland
2012-06-15 01:25:19 -07:00
Vlaidmir Ivanov
dd85e2f356
7173340: C2: code cleanup: use PhaseIterGVN::replace_edge(Node*, int, Node*) where applicable
...
Replace frequent C2 optimizer code patterns with new methods calls
Reviewed-by: kvn, twisti
2012-06-12 16:23:31 -07:00
Vladimir Kozlov
904f53db88
7160610: Unknown Native Code compilation issue
...
When constructing input vector use type of vector's operation which use it since element's sizes should match.
Reviewed-by: never, twisti
2012-05-07 12:37:46 -07:00
Vladimir Kozlov
52f678435a
7077439: Possible reference through NULL in loopPredicate.cpp:726
...
Use cl->is_valid_counted_loop() check.
Reviewed-by: never
2011-08-10 14:06:57 -07:00
Vladimir Kozlov
18329266ea
7069452: Cleanup NodeFlags
...
Remove flags which duplicate information in Node::NodeClasses.
Reviewed-by: never
2011-07-27 17:28:36 -07:00
Vladimir Kozlov
00eca5e982
7004535: Clone loop predicate during loop unswitch
...
Clone loop predicate for clonned loops
Reviewed-by: never
2011-04-02 10:54:15 -07:00
Stefan Karlsson
8006fe8f75
6989984: Use standard include model for Hospot
...
Replaced MakeDeps and the includeDB files with more standardized solutions.
Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Vladimir Kozlov
448b83e288
6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist()
...
Use replace_node() method instead of subsume_node().
Reviewed-by: jrose, never
2010-06-28 14:54:39 -07:00
Tom Rodriguez
154ae789ef
6958485: fix for 6879921 was insufficient
...
Reviewed-by: kvn
2010-06-07 14:17:01 -07:00
Erik Trimble
ba7c173659
6941466: Oracle rebranding changes for Hotspot repositories
...
Change all the Sun copyrights to Oracle copyright
Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
Changpeng Fang
e3b5580ecc
6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash
...
Disable SuperWord optimization for unsafe read/write
Reviewed-by: kvn, phh
2009-10-30 10:12:52 -07:00
Changpeng Fang
1cf5b7ae11
6879921: CTW failure jdk6_18/hotspot/src/share/vm/utilities/globalDefinitions.cpp:268
...
Filter out non-primitives before deciding whether two ops can be packed
Reviewed-by: kvn, never
2009-09-15 11:09:34 -07:00
Changpeng Fang
c492f4cde5
6877254: Server vm crashes with no branches off of store slice" when run with CMS and UseSuperWord(default)
...
Design StoreCMNode::Ideal to promote its oopStore input if the input is a MergeMem node
Reviewed-by: kvn, never
2009-09-14 09:49:54 -07:00
Changpeng Fang
457be8ad49
6876276: assert(!is_visited,"visit only once")
...
Schedule the superword loads based on dependence constraints
Reviewed-by: kvn, never
2009-08-31 08:31:45 -07:00
Changpeng Fang
fface2e4ca
6636138: UseSuperWord enabled failure
...
Fixed SuperWord scheduling of memory operations.
Reviewed-by: kvn, never
2009-03-24 12:19:47 -07:00
Erik Trimble
8d6035660e
Merge
2009-03-12 18:16:36 -07:00
Xiomara Jayasena
2be2e027b0
6814575: Update copyright year
...
Update copyright for files that have been modified in 2009, up to 03/09
Reviewed-by: katleman, tbell, ohair
2009-03-09 13:28:46 -07:00
Christian Thalinger
05d1de7727
6810672: Comment typos
...
I have collected some typos I have found while looking at the code.
Reviewed-by: kvn, never
2009-02-27 13:27:09 -08:00
Christian Thalinger
3b8452da93
6796746: rename LoadC (char) opcode class to LoadUS (unsigned short)
...
Renaming LoadC to LoadUS would round up the planned introduction of LoadUB and LoadUI.
Reviewed-by: phh, kvn
2009-01-26 16:22:12 +01:00
Vladimir Kozlov
50c4a23cac
6726999: nsk/stress/jck12a/jck12a010 assert(n != null,"Bad immediate dominator info.")
...
Escape Analysis fixes.
Reviewed-by: never, rasbold
2008-07-28 17:12:52 -07:00
Erik Trimble
2d6f42d18c
Merge
2008-07-11 01:14:44 -07:00
Xiomara Jayasena
c96a95c4b8
6719955: Update copyright year
...
Update copyright year for files that have been modified in 2008
Reviewed-by: ohair, tbell
2008-07-02 12:55:16 -07:00
Vladimir Kozlov
a671e7c7b5
6710487: More than half of JDI Regression tests hang with COOPs in -Xcomp mode
...
Remove DecodeNNode::decode() and EncodePNode::encode() methods.
Reviewed-by: rasbold, never
2008-06-24 10:43:29 -07:00
Coleen Phillimore
4a831d45f0
6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
...
Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv
Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
2008-04-13 17:43:42 -04:00
Tom Rodriguez
3093e354db
6646020: assert(in_bb(n),"must be in block") in -Xcomp mode
...
Reviewed-by: kvn, rasbold
2008-04-03 21:26:03 -07:00
Tom Rodriguez
a2b4f55757
6663621: JVM crashes while trying to execute api/java_security/Signature/SignatureTests.html#initSign tests
...
Alignment expression with secondary induction variables is sometimes wrong
Reviewed-by: kvn, rasbold
2008-03-20 10:43:42 -07:00