#
12779:e939acda146e |
|
30-May-2017 |
vlivanov |
8179882: C2: Stale control info after cast node elimination during loop optimization pass Reviewed-by: kvn, roland
|
#
12149:6214eb051a30 |
|
28-Sep-2016 |
rasbold |
8166742: SIGFPE in C2 Loop IV elimination Reviewed-by: kvn
|
#
11735:286ad75013e2 |
|
25-Jul-2016 |
roland |
8161147: jvm crashes when -XX:+UseCountedLoopSafepoints is enabled Summary: don't convert loop with safepoint on the backedge to Counted loop Reviewed-by: kvn
|
#
11525:c23bf7df628c |
|
20-Jun-2016 |
thartmann |
8159715: Fix for 8072422 is incorrect Summary: Fixed several issues introduced by 8072422. Reviewed-by: zmajo, kvn
|
#
10995:ccfc68592c92 |
|
18-Apr-2016 |
mcberg |
8153998: Masked vector post loops Summary: Masked vectorization for post loops to execute in a single iteration in place of fixup scalar loops which used to take many iterations to complete work for user loops. Reviewed-by: twisti, kvn
|
#
10810:1b2d19e6b14d |
|
07-Apr-2016 |
bharadwaj |
Merge
|
#
10806:7010ee970bfb |
|
05-Apr-2016 |
mcberg |
8151573: Multiversioning for range check elimination Summary: range check elimination in post loops Reviewed-by: kvn
|
#
10801:a1e41855499b |
|
03-Apr-2016 |
zmajo |
8072422: Cleanup: Remove some unused flags/code in loop optimizations Summary: Remove unused flags, change test using them. Reviewed-by: kvn, twisti
|
#
10762:ea81fe138932 |
|
03-Apr-2016 |
jprovino |
8132524: Missing includes to resourceArea.hpp Summary: Files that use ResourceMark are missing the include of resourceArea.hpp Reviewed-by: tschatzl, jwilhelm
|
#
10509:bcf5a0a5731b |
|
21-Mar-2016 |
zmajo |
8148754: C2 loop unrolling fails due to unexpected graph shape Summary: Check if graph shape is appropriate for optimization, bail out optimization if not. Reviewed-by: kvn, twisti, shade, dnsimon
|
#
10074:796b8077f6e6 |
|
03-Feb-2016 |
roland |
8147645: get_ctrl_no_update() code is wrong Summary: Array.fill intrinsification code doesn't mark replaced control as dead Reviewed-by: kvn
|
#
10006:d9d0a63499ce |
|
11-Jan-2016 |
thartmann |
8146629: Make phase->is_IterGVN() accessible from Node::Identity and Node::Value Summary: Change arguments of Node::Identity() and Node::Value() from PhaseTransform* to PhaseGVN*. Reviewed-by: kvn, roland
|
#
10004:c8b709902e0e |
|
11-Jan-2016 |
roland |
8145322: Code generated from unsafe loops can be slightly improved Summary: improve code generated from checkIndex and unsafe loops Reviewed-by: kvn, thartmann
|
#
9806:21689239c407 |
|
21-Dec-2015 |
thartmann |
8144487: PhaseIdealLoop::build_and_optimize() must restore major_progress flag if skip_loop_opts is true Summary: Restore the major_progress flag before calling igvn.optimize(). Reviewed-by: kvn
|
#
9772:a6eb7b850dbd |
|
10-Dec-2015 |
vlivanov |
8144935: C2: safepoint is pruned from a non-counted loop Reviewed-by: roland
|
#
9750:d84a55e7aaf8 |
|
04-Dec-2015 |
aeriksso |
6869327: Add new C2 flag to keep safepoints in counted loops. Reviewed-by: kvn, shade
|
#
9468:af5d7716ac09 |
|
16-Nov-2015 |
roland |
8042997: Make intrinsic some or all check index/range methods Summary: Objects.checkIndex() intrinsic Reviewed-by: vlivanov, shade
|
#
9462:231763c1883e |
|
11-Nov-2015 |
twisti |
8140424: don't prefix developer and notproduct flag variables with CONST_ in product builds Reviewed-by: goetz, stefank
|
#
9283:f31349f1215e |
|
03-Nov-2015 |
thartmann |
8141132: JEP 254: Compact Strings Summary: Adopt a more space-efficient internal representation for strings. Reviewed-by: alanb, bdelsart, coleenp, iklam, jiangli, jrose, kevinw, naoto, pliden, roland, smarks, twisti Contributed-by: Brent Christian <brent.christian@oracle.com>, Vivek Deshpande <vivek.r.deshpande@intel.com>, Tobias Hartmann <tobias.hartmann@oracle.com>, Charlie Hunt <charlie.hunt@oracle.com>, Vladimir Kozlov <vladimir.kozlov@oracle.com>, Roger Riggs <roger.riggs@oracle.com>, Xueming Shen <xueming.shen@oracle.com>, Aleksey Shipilev <aleksey.shipilev@oracle.com>, Sandhya Viswanathan <sandhya.viswanathan@intel.com>
|
#
8968:a5ae3454a758 |
|
14-Sep-2015 |
thartmann |
8135252: IdealLoopTree::dump_head() prints negative trip count Summary: IdealLoopTree::dump_head() should not cast float to int. Reviewed-by: kvn
|
#
8860:fe311de64c61 |
|
29-Jul-2015 |
roland |
8080289: Intermediate writes in a loop not eliminated by optimizer Summary: Move Stores out of loop (after or before) when possible Reviewed-by: kvn, vlivanov
|
#
8829:af60f1cb36f2 |
|
10-Aug-2015 |
kvn |
8011858: Use Compile::live_nodes() instead of Compile::unique() in appropriate places Reviewed-by: kvn, vlivanov Contributed-by: vlad.ureche@gmail.com
|
#
8724:a97452742de1 |
|
14-Jul-2015 |
kvn |
8085932: Fixing bugs in detecting memory alignments in SuperWord Reviewed-by: kvn Contributed-by: jan.civlin@intel.com
|
#
8688:94403236f303 |
|
10-Jul-2015 |
kvn |
8129920: Vectorized loop unrolling Summary: optimize loop opts for vectorizible loops. Reviewed-by: kvn, roland
|
#
8601:9251516ec93d |
|
16-Jun-2015 |
mcberg |
8080325: SuperWord loop unrolling analysis Summary: Determine loop unroll factor based on supported vectors sizes. Reviewed-by: roland, kvn
|
#
8348:2032f163aec9 |
|
05-May-2015 |
kvn |
8076284: Improve vectorization of parallel streams Summary: Improve vectorization of java/util/stream/Streams$RangeIntSpliterator::forEachRemaining() method and enable loop vectorization in a given method on demand. Reviewed-by: kvn Contributed-by: jan.civlin@intel.com
|
#
7870:f1b92b73e6aa |
|
17-Feb-2015 |
iveresov |
8072753: Nondeterministic wrong answer on arithmetic Summary: Check for overflow when inverting the loop during the counted loop conversion Reviewed-by: kvn
|
#
7590:fd55c0f2c200 |
|
19-Dec-2014 |
vlivanov |
8067338: compiler/debug/TraceIterativeGVN.java segfaults Reviewed-by: kvn
|
#
6820:c1d7ba5b5d45 |
|
25-Jul-2014 |
thartmann |
8040213: C2 does not put all modified nodes on IGVN worklist Summary: 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
|
#
6546:3533da0f7728 |
|
02-Jun-2014 |
thartmann |
8034812: remove IDX_INIT macro hack in Node class Summary: 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
|
#
6412:53a41e7cbe05 |
|
09-May-2014 |
drchase |
8037816: Fix for 8036122 breaks build with Xcode5/clang Summary: Repaired or selectively disabled offending formats; future-proofed with additional checking Reviewed-by: kvn, jrose, stefank
|
#
6393:bd1a985905ed |
|
02-May-2014 |
kvn |
8039298: assert(base == NULL || t_adr->isa_rawptr() || !phase->type(base)->higher_equal(TypePtr::NULL_PTR)) Summary: Convert the assert into the runtime check to skip IGVN optimizations for problematic memory nodes. Eliminate dead nodes more aggressively. Reviewed-by: twisti, iveresov
|
#
6309:218bc7e588be |
|
15-Apr-2014 |
kvn |
8039050: Crash in C2 compiler at Node::rematerialize Summary: Added missing calls to record_for_igvn() in loop opts. Added verification of def-use domination. Reviewed-by: iveresov
|
#
6219:12cd03f831d8 |
|
01-Apr-2014 |
morris |
8001532: C2 node files refactoring Summary: Split C2 node files into cast, convert, countbits, intrinsic, move, narrowptr and opaquenode classes Reviewed-by: kvn, morris
|
#
5546:3213ba4d3dff |
|
18-Oct-2013 |
roland |
8024069: replace_in_map() should operate on parent maps Summary: type information gets lost because replace_in_map() doesn't update parent maps Reviewed-by: kvn, twisti
|
#
4802:f2110083203d |
|
10-Jun-2013 |
sla |
8005849: JEP 167: Event-Based JVM Tracing Reviewed-by: acorn, coleenp, sla Contributed-by: Karen Kinnear <karen.kinnear@oracle.com>, Bengt Rutisson <bengt.rutisson@oracle.com>, Calvin Cheung <calvin.cheung@oracle.com>, Erik Gahlin <erik.gahlin@oracle.com>, Erik Helin <erik.helin@oracle.com>, Jesper Wilhelmsson <jesper.wilhelmsson@oracle.com>, Keith McGuigan <keith.mcguigan@oracle.com>, Mattias Tobiasson <mattias.tobiasson@oracle.com>, Markus Gronlund <markus.gronlund@oracle.com>, Mikael Auno <mikael.auno@oracle.com>, Nils Eliasson <nils.eliasson@oracle.com>, Nils Loodin <nils.loodin@oracle.com>, Rickard Backman <rickard.backman@oracle.com>, Staffan Larsen <staffan.larsen@oracle.com>, Stefan Karlsson <stefan.karlsson@oracle.com>, Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
|
#
4433:30f42e691e70 |
|
26-Mar-2013 |
kvn |
8004640: C2 assert failure in memnode.cpp: NULL+offs not RAW address Summary: always transform AddP nodes in IdealKit by calling _gvn.transform(). Reviewed-by: roland, twisti
|
#
4154:8b3da8d14c93 |
|
11-Feb-2013 |
roland |
7197327: 40% regression on 8 b41 comp 8 b40 on specjvm2008.mpegaudio on oob Summary: Add support for expensive nodes. Reviewed-by: kvn
|
#
3722:377508648226 |
|
08-Oct-2012 |
vlivanov |
8000313: C2 should use jlong for 64bit values Summary: Replace all occurrences of long with jlong in C2 code. Reviewed-by: kvn, twisti
|
#
3680:e626685e9f6c |
|
27-Sep-2012 |
kvn |
7193318: C2: remove number of inputs requirement from Node's new operator Summary: Deleted placement new operator of Node - node(size_t, Compile *, int). Reviewed-by: kvn, twisti Contributed-by: bharadwaj.yadavalli@oracle.com
|
#
3588:0acd345fd810 |
|
29-Aug-2012 |
kvn |
7160161: Missed safepoint in non-Counted loop Summary: Do not remove safepoints during peeling optimization. Reviewed-by: twisti
|
#
3566:006050192a5a |
|
20-Aug-2012 |
kvn |
6340864: Implement vectorization optimizations in hotspot-server Summary: Added asm encoding and mach nodes for vector arithmetic instructions on x86. Reviewed-by: roland
|
#
3447:8c92982cbbc4 |
|
15-Jun-2012 |
kvn |
7119644: Increase superword's vector size up to 256 bits Summary: Increase vector size up to 256-bits for YMM AVX registers on x86. Reviewed-by: never, twisti, roland
|
#
3412:5e990493719e |
|
12-Jun-2012 |
kvn |
7173340: C2: code cleanup: use PhaseIterGVN::replace_edge(Node*, int, Node*) where applicable Summary: replace frequent C2 optimizer code patterns with new methods calls Reviewed-by: kvn, twisti Contributed-by: vladimir.x.ivanov@oracle.com
|
#
3054:f457154eee8b |
|
29-Jan-2012 |
brutisso |
7140882: Don't return booleans from methods returning pointers Summary: Changed "return false" to "return NULL" Reviewed-by: dholmes, rottenha Contributed-by: dbhole@redhat.com
|
#
2973:c8d8e124380c |
|
12-Jan-2012 |
kvn |
7064302: JDK7 build 147 crashed after testing my java 6-compiled web app Summary: Don't split CMove node if it's control edge is different from split region. Reviewed-by: never
|
#
2876:1bd45abaa507 |
|
16-Nov-2011 |
kvn |
6890673: Eliminate allocations immediately after EA Summary: Try to eliminate allocations and related locks immediately after escape analysis. Reviewed-by: never
|
#
2873:e8fdaf4a66cb |
|
10-Nov-2011 |
kvn |
7110586: C2 generates incorrect results Summary: Exact limit of empty loop calculated incorrectly. Reviewed-by: iveresov, never
|
#
2825:670a74b863fc |
|
09-Nov-2011 |
kvn |
7107042: assert(no_dead_loop) failed: dead loop detected Summary: Use dead nodes elimination code in PhaseIdealLoop before executing EA. Reviewed-by: never, twisti
|
#
2700:2c24ef16533d |
|
09-Sep-2011 |
kvn |
7035946: Up to 15% regression on JDK 7 b136 vs b135 on specjvm2008.crypto.rsa on x64 Summary: Revert changes which caused regression. Reviewed-by: never
|
#
2613:6987871cfb9b |
|
10-Aug-2011 |
kvn |
7077439: Possible reference through NULL in loopPredicate.cpp:726 Summary: Use cl->is_valid_counted_loop() check. Reviewed-by: never
|
#
2608:c96c3eb1efae |
|
29-Jul-2011 |
kvn |
7068051: SIGSEGV in PhaseIdealLoop::build_loop_late_post Summary: Removed predicate cloning from loop peeling optimization and from split fall-in paths. Reviewed-by: never
|
#
2544:aacaff365100 |
|
20-Jun-2011 |
kvn |
7052494: Eclipse test fails on JDK 7 b142 Summary: Keep 'ne' test in Counted loop when we can't guarantee during compilation that init < limit. Reviewed-by: never
|
#
2442:bad7ecd0b6ed |
|
04-May-2011 |
kvn |
5091921: Sign flip issues in loop optimizer Summary: Fix integer overflow problem in the code generated by loop optimizer. Reviewed-by: never
|
#
2312:3af54845df98 |
|
08-Apr-2011 |
kvn |
7004555: Add new policy for one iteration loops Summary: Add new policy for one iteration loops (mostly formal pre- loops). Reviewed-by: never
|
#
2292:08eb13460b3a |
|
02-Apr-2011 |
kvn |
7004535: Clone loop predicate during loop unswitch Summary: Clone loop predicate for clonned loops Reviewed-by: never
|
#
2250:1927db75dd85 |
|
27-Mar-2011 |
never |
7024475: loop doesn't terminate when compiled Reviewed-by: kvn
|
#
2230:9dc311b8473e |
|
21-Mar-2011 |
kvn |
7008866: Missing loop predicate for loop with multiple entries Summary: Add predicates when loop head bytecode is parsed instead of when back branch bytecode is parsed. Reviewed-by: never
|
#
2120:194c9fdee631 |
|
07-Feb-2011 |
kvn |
7017240: C2: native memory leak in nsk/regression/b4675027 on windows-x86 in comp mode with G1 Summary: Add ResourceMark into PhaseIdealLoop::build_and_optimize(). Reviewed-by: never
|
#
1879:f95d63e2154a |
|
23-Nov-2010 |
stefank |
6989984: Use standard include model for Hospot Summary: Replaced MakeDeps and the includeDB files with more standardized solutions. Reviewed-by: coleenp, kvn, kamg
|
#
1683:d6f45b55c972 |
|
27-Aug-2010 |
never |
4809552: Optimize Arrays.fill(...) Reviewed-by: kvn
|
#
1541:6027dddc26c6 |
|
28-Jun-2010 |
kvn |
6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist() Summary: Use replace_node() method instead of subsume_node(). Reviewed-by: jrose, never
|
#
1472:c18cbe5936b8 |
|
27-May-2010 |
trims |
6941466: Oracle rebranding changes for Hotspot repositories Summary: Change all the Sun copyrights to Oracle copyright Reviewed-by: ohair
|
#
1172:b2b6a9bf6238 |
|
12-Jan-2010 |
cfang |
6894779: Loop Predication for Loop Optimizer in C2 Summary: Loop predication implementation Reviewed-by: never, kvn
|
#
1083:8b22f86d1740 |
|
02-Dec-2009 |
cfang |
6901572: JVM 1.6.16 crash on loops: assert(has_node(i),"") Summary: Skip the secondary induction variable handling if it is dead Reviewed-by: never, kvn
|
#
921:046932b72aa2 |
|
14-Aug-2009 |
never |
6862956: PhaseIdealLoop should have a CFG verification mode Reviewed-by: kvn, twisti
|
#
681:fbde8ec322d0 |
|
31-Mar-2009 |
cfang |
6761600: Use sse 4.2 in intrinsics Summary: Use SSE 4.2 in intrinsics for String.{compareTo/equals/indexOf} and Arrays.equals. Reviewed-by: kvn, never, jrose
|
#
628:7bb995fbd3c0 |
|
12-Mar-2009 |
trims |
Merge
|
#
605:98cb887364d3 |
|
27-Feb-2009 |
twisti |
6810672: Comment typos Summary: I have collected some typos I have found while looking at the code. Reviewed-by: kvn, never
|
#
579:0fbdb4381b99 |
|
09-Mar-2009 |
xdono |
6814575: Update copyright year Summary: Update copyright for files that have been modified in 2009, up to 03/09 Reviewed-by: katleman, tbell, ohair
|
#
558:3b5ac9e7e6ea |
|
26-Jan-2009 |
twisti |
6796746: rename LoadC (char) opcode class to LoadUS (unsigned short) Summary: Renaming LoadC to LoadUS would round up the planned introduction of LoadUB and LoadUI. Reviewed-by: phh, kvn
|
#
367:194b8e3a2fc4 |
|
17-Sep-2008 |
never |
6384206: Phis which are later unneeded are impairing our ability to inline based on static types Reviewed-by: rasbold, jrose
|
#
293:c3e045194476 |
|
01-Aug-2008 |
kvn |
6731641: assert(m->adr_type() == mach->adr_type(),"matcher should not change adr type") Summary: fixed few addP node type and narrow oop type problems. Reviewed-by: rasbold, never
|
#
235:9c2ecc2ffb12 |
|
11-Jul-2008 |
trims |
Merge
|
#
222:2a1a77d3458f |
|
24-Jun-2008 |
never |
6718676: putback for 6604014 is incomplete Reviewed-by: kvn, jrose
|
#
196:d1605aabd0a1 |
|
02-Jul-2008 |
xdono |
6719955: Update copyright year Summary: Update copyright year for files that have been modified in 2008 Reviewed-by: ohair, tbell
|
#
169:9148c65abefc |
|
29-May-2008 |
rasbold |
6695049: (coll) Create an x86 intrinsic for Arrays.equals Summary: Intrinsify java/util/Arrays.equals(char[], char[]) Reviewed-by: kvn, never
|
#
39:76256d272075 |
|
06-Mar-2008 |
kvn |
6667612: (Escape Analysis) disable loop cloning if it has a scalar replaceable allocation Summary: Cloning an allocation will not allow scalar replacement since memory operations could not be associated with one allocation. Reviewed-by: rasbold
|
#
17:ff5961f4c095 |
|
05-Dec-2007 |
never |
6395208: Elide autoboxing for calls to HashMap.get(int) and HashMap.get(long) Reviewed-by: kvn, rasbold
|
#
0:a61af66fc99e |
|
30-Nov-2007 |
duke |
Initial load
|