History log of /openjdk9/hotspot/src/share/vm/opto/compile.hpp
Revision Date Author Comments
# 11866:abeecea0351c 23-Aug-2016 egahlin

8164523: Clean up metadata for event based tracing
Reviewed-by: mlarsson, mgronlun


# 11688:37efe81d1858 30-Jun-2016 thartmann

8160425: Vectorization with signalling NaN returns wrong result
Summary: Should not use doubles/floats for vector constants in the C code.
Reviewed-by: kvn, vlivanov


# 11527:a3f37fa839a1 20-Jun-2016 cvarming

8159720: Failure of C2 compilation with tiered prevents some C1 compilations.
Summary: If C2 fails to compile a method with tiered compilation, then it should mark the method as not compileable on the C2 tier only.
Reviewed-by: twisti, thartmann


# 11232:064d18bc1889 09-May-2016 roland

8154826: AArch64: take advantage better of base + shifted offset addressing mode
Summary: reshape address subtree to fit aarch64 addressing mode
Reviewed-by: kvn, aph


# 11174:1b316f7a9893 02-May-2016 goetz

8155738: C2: fix frame_complete_offset
Summary: During scratch_emit_size wrong value was set. Also set offset of ppc.
Reviewed-by: kvn, dlong


# 11077:79dae2cd00ef 25-Apr-2016 vlivanov

8134918: C2: Type speculation produces mismatched unsafe accesses
Reviewed-by: kvn


# 10675:8fced5cac71c 15-Mar-2016 rehn

8150015: Integrate TraceTime with Unified Logging more seamlessly
Reviewed-by: coleenp, dholmes


# 10434:687c4d83a4cc 07-Mar-2016 kvn

8150353: PPC64LE: Support RTM on linux
Reviewed-by: mdoerr, kvn
Contributed-by: gromero@linux.vnet.ibm.com


# 10327:dfa7d9934ab4 23-Feb-2016 roland

8007986: GrowableArray should implement binary search
Summary: binary search method for GrowableArray
Reviewed-by: vlivanov, jrose


# 10029:bfb7a8a004de 18-Jan-2016 thartmann

6675699: need comprehensive fix for unconstrained ConvI2L with narrowed type
Summary: Emit CastII to make narrow ConvI2L dependent on the corresponding range check.
Reviewed-by: kvn, roland


# 9737:e286c9ccd58d 11-Dec-2015 fparain

8046936: JEP 270: Reserved Stack Areas for Critical Sections
Reviewed-by: acorn, dcubed


# 9281:e33baf2cad34 05-Nov-2015 jwilhelm

Merge


# 9244:825cee2cd7a6 22-Oct-2015 goetz

8139040: Fix initializations before ShouldNotReachHere() etc. and enable -Wuninitialized on linux.
Reviewed-by: stuefe, coleenp, roland


# 9209:ae64ff428e18 26-Oct-2015 iveresov

8139340: SuperWord enhancement to support vector conditional move (CMovVD) on Intel AVX cpu
Summary: Emit vector conditional moves
Reviewed-by: kvn
Contributed-by: jan.civlin@intel.com


# 9191:a176d4737606 20-Oct-2015 neliasso

8137167: JEP165: Compiler Control: Implementation task
Summary: Compiler Control JEP
Reviewed-by: roland, twisti, zmajo, simonis


# 9080:00e5743fd189 06-Oct-2015 jwilhelm

Merge


# 9056:dc9930a04ab0 29-Sep-2015 david

8080775: Better argument formatting for assert() and friends
Reviewed-by: kbarrett, pliden


# 9014:cc267038a9c1 15-Sep-2015 kvn

8136406: Remove ZapDeadCompiledLocals code
Summary: Dead code elimination.
Reviewed-by: roland, twisti


# 8911:8f5648c43725 03-Sep-2015 neliasso

8135067: Preparatory refactorings for compiler control
Summary: Extract CompileTask and clean up
Reviewed-by: roland


# 8881:73e6afceb02e 19-Aug-2015 zmajo

8133625: src/share/vm/opto/compile.hpp:96: error: integer constant is too large for ?long? type
Summary: Wrap constant causing the failure into into CONST64(). Update comments.
Reviewed-by: kvn


# 8724:a97452742de1 14-Jul-2015 kvn

8085932: Fixing bugs in detecting memory alignments in SuperWord
Reviewed-by: kvn
Contributed-by: jan.civlin@intel.com


# 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


# 8208:528423a8c09f 14-Apr-2015 vlivanov

8062280: C2: inlining failure due to access checks being too strict
Reviewed-by: kvn


# 7935:54e0f8b411a8 18-Feb-2015 roland

6912521: System.arraycopy works slower than the simple loop for little lengths
Summary: convert small array copies to series of loads and stores
Reviewed-by: kvn, vlivanov


# 7448:7dd010c9fab1 24-Nov-2014 vlivanov

8058148: MaxNodeLimit and LiveNodeCountInliningCutoff
Reviewed-by: kvn, roland


# 7218:8a8f6e7c5180 15-Oct-2014 zmajo

8060215: per-method PrintIdealGraphLevel
Summary: 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


# 7201:67bac0961e96 06-Oct-2014 anoll

8059331: Print additional information for the assert in Compile::start()
Summary: Add additional output that shows the failure reason
Reviewed-by: kvn


# 7145:e17112236cba 24-Sep-2014 shade

8058968: Compiler time traces should be improved
Summary: Use CITime consistently, make C2 to report to CompilerBroker, more probes.
Reviewed-by: vlivanov, jrose


# 6996:a9581f019c38 02-Sep-2014 kvn

8056964: JDK-8055286 changes are incomplete.
Summary: added ccstr and ccstrlist types to compilerOracle 'option' command
Reviewed-by: roland


# 6903:190b0e9d0ad1 11-Aug-2014 roland

7173584: Implement arraycopy as a macro node
Summary: delay the conversion of arraycopy to stub calls to macro expansion
Reviewed-by: kvn, iveresov


# 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


# 6709:6edfcaac0639 02-Jul-2014 roland

8046542: [I.finalize() calls from methods compiled by C1 do not cause IllegalAccessError on Sparc
Summary: call to Object.finalize() sometimes allowed by compilers on array type
Reviewed-by: iveresov, vlivanov


# 6569:e38bb04f030d 10-Jun-2014 roland

8026796: Make replace_in_map() on parent maps generic
Summary: propagate node replacements along control flow edges to callers
Reviewed-by: kvn, vlivanov


# 6496:3a210a641062 26-May-2014 roland

8043638: Multiple compilation attempts break LogCompulation, lead to confusing PrintInlining output
Summary: dumps inlining only for last compilation attempt. Fix LogCompilation tool so it handles multiple compilation attempts.
Reviewed-by: vlivanov, kvn


# 6434:466b58fa837b 15-May-2014 twisti

Merge


# 6430:975d903e1de3 13-May-2014 iveresov

8032463: VirtualDispatch test timeout with DeoptimizeALot
Summary: Introduce code aging for warm method detection
Reviewed-by: kvn, twisti


# 6417:aa3adb6da964 12-May-2014 coleenp

Merge


# 6413:f88688d5c78c 07-May-2014 zgu

8041415: remove port.{cpp,hpp} files
Summary: Hotspot should use standard headers and types
Reviewed-by: coleenp, kvn


# 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


# 6307:cfa802bad1d8 01-Apr-2014 roland

8032410: compiler/uncommontrap/TestStackBangRbp.java times out on Solaris-Sparc V9
Summary: make compiled code bang the stack by the worst case size of the interpreter frame at deoptimization points.
Reviewed-by: twisti, kvn


# 6291:b722c15be816 10-Apr-2014 roland

8005079: fix LogCompilation for incremental inlining
Summary: report late inlining as part of the rest of the inlining output
Reviewed-by: twisti, kvn


# 6248:33cc0d9740a8 09-Apr-2014 roland

8007988: PrintInlining output is inconsistent with incremental inlining
Summary: fix duplicate and conflicting inlining output
Reviewed-by: kvn, vlivanov


# 6182:2f459c5235f9 20-Mar-2014 kvn

8031320: Use Intel RTM instructions for locks
Summary: Use RTM for inflated locks and stack locks.
Reviewed-by: iveresov, twisti, roland, dcubed


# 6010:abec000618bf 28-Jan-2014 kvn

Merge


# 6003:ad6695638a35 20-Dec-2013 goetz

8030863: PPC64: (part 220): ConstantTableBase for calls between args and jvms
Summary: Add ConstantTableBase node edge after parameters and before jvms. Adapt jvms offsets.
Reviewed-by: kvn


# 5996:1174c8abbdb6 05-Dec-2013 kvn

Merge


# 5994:41b780b43b74 27-Nov-2013 goetz

8029015: PPC64 (part 216): opto: trap based null and range checks
Summary: On PPC64 use tdi instruction that does a compare and raises SIGTRAP for NULL and range checks.
Reviewed-by: kvn


# 5992:4cdf4f71177d 22-Nov-2013 goetz

8029025: PPC64 (part 203): opto: Move static _in_dump_cnt to Compile object.
Summary: Also introduces the compiler oracle 'option' feature for PrintAssembly.
Reviewed-by: kvn


# 5785:183bd5c00828 08-Jan-2014 kvn

8028468: Add inlining information into ciReplay
Summary: Allow dump and replay inlining for specified method during a program execution.
Reviewed-by: roland, twisti


# 5696:86e6d691f2e1 22-Nov-2013 mgronlun

8028128: Add a type safe alternative for working with counter based data
Reviewed-by: dholmes, egahlin


# 5635:94a83e0f9ce1 05-Nov-2013 iveresov

8017065: C2 allows safepoint checks to leak into G1 pre-barriers
Summary: Make all raw loads strictly respect control dependencies, make sure RCE doesn't move raw loads, add verification of G1 pre-barriers.
Reviewed-by: kvn, roland


# 5556:b2ee5dc63353 22-Oct-2013 roland

8024070: C2 needs some form of type speculation
Summary: record unused type profile information with type system, propagate and use it.
Reviewed-by: kvn, twisti


# 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


# 5328:1b64d46620a3 24-Sep-2013 kvn

8022585: VM crashes when ran with -XX:+PrintInlining
Summary: use adr_at() to access inline info structures in growableArray. Add ability to specify print inlining per method.
Reviewed-by: twisti


# 5223:edb5ab0f3fe5 10-Sep-2013 vlivanov

8001107: @Stable annotation for constant folding of lazily evaluated variables
Reviewed-by: rbackman, twisti, kvn
Contributed-by: john.r.rose@oracle.com, vladimir.x.ivanov@oracle.com


# 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>


# 4675:6f3fd5150b67 08-May-2013 kvn

6934604: enable parts of EliminateAutoBox by default
Summary: Resurrected autobox elimination code and enabled part of it by default.
Reviewed-by: roland, twisti


# 4260:ff55877839bc 06-Mar-2013 kvn

8009472: Print additional information for 8004640 failure
Summary: dump nodes and types in 8004640 case.
Reviewed-by: roland


# 4256:571076d3c79d 05-Mar-2013 shade

8009120: Fuzz instruction scheduling in HotSpot compilers
Reviewed-by: kvn, vlivanov


# 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


# 3979:5698813d45eb 09-Jan-2013 twisti

8005418: JSR 292: virtual dispatch bug in 292 impl
Reviewed-by: jrose, kvn


# 3974:d092d1b31229 23-Dec-2012 roland

8005071: Incremental inlining for JSR 292
Summary: post parse inlining driven by number of live nodes.
Reviewed-by: twisti, kvn, jrose


# 3922:ad5dd04754ee 18-Dec-2012 roland

8005031: Some cleanup in c2 to prepare for incremental inlining support
Summary: collection of small changes to prepare for incremental inlining.
Reviewed-by: twisti, kvn


# 3880:2aff40cb4703 27-Nov-2012 bharadwaj

7092905: C2: Keep track of the number of dead nodes
Summary: keep an (almost) accurate running count of the reachable (live) flow graph nodes.
Reviewed-by: kvn, twisti, jrose, vlivanov


# 3764:cfe522e6461c 17-Oct-2012 kvn

8000623: tools/javac/Diagnostics/6769027/T6769027.java crashes in PSPromotionManager::copy_to_survivor_space
Summary: Fix type of method pointer load from vtable.
Reviewed-by: twisti, johnc, roland


# 3668:137868b7aa6f 17-Sep-2012 kvn

7196199: java/text/Bidi/Bug6665028.java failed: Bidi run count incorrect
Summary: Save whole XMM/YMM registers in safepoint interrupt handler.
Reviewed-by: roland, twisti


# 3602:da91efe96a93 01-Sep-2012 coleenp

6964458: Reimplement class meta-data storage to use native memory
Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>


# 3196:b40ac3579043 05-Mar-2012 never

6658428: C2 doesn't inline java method if corresponding intrinsic failed to inline.
Summary: Allow fallback to non-intrinsic inline case
Reviewed-by: kvn, jrose, never
Contributed-by: nils.eliasson@oracle.com


# 2875:6729bbc1fcd6 16-Nov-2011 twisti

7003454: order constants in constant table by number of references in code
Reviewed-by: kvn, never, bdelsart


# 2703:f6f3bb0ee072 11-Sep-2011 never

7088955: add C2 IR support to the SA
Reviewed-by: kvn


# 2620:739a9abbbd4b 18-Aug-2011 kvn

7080431: VM asserts if specified size(x) in .ad is larger than emitted size
Summary: Move code from finalize_offsets_and_shorten() to fill_buffer() to restore previous behavior.
Reviewed-by: never


# 2614:95134e034042 11-Aug-2011 kvn

7063629: use cbcond in C2 generated code on T4
Summary: Use new short branch instruction in C2 generated code.
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


# 2223:c7f3d0b4570f 18-Mar-2011 never

7017732: move static fields into Class to prepare for perm gen removal
Reviewed-by: kvn, coleenp, twisti, stefank


# 1915:2f644f85485d 03-Dec-2010 twisti

6961690: load oops from constant table on SPARC
Summary: oops should be loaded from the constant table of an nmethod instead of materializing them with a long code sequence.
Reviewed-by: never, kvn


# 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


# 1554:60a14ad85270 02-Jul-2010 kvn

6966411: escape.cpp:450 assert(base->Opcode() == Op_ConP
Summary: Execute IGVN optimization before and after Escape Analysis
Reviewed-by: 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


# 1397:b4776199210f 27-Apr-2010 never

6943485: JVMTI always on capabilities change code generation too much
Reviewed-by: twisti, dcubed


# 1265:b4b440360f1e 18-Feb-2010 twisti

6926782: CodeBuffer size too small after 6921352
Summary: After 6921352 the CodeBuffer size was too small.
Reviewed-by: kvn, never


# 1172:b2b6a9bf6238 12-Jan-2010 cfang

6894779: Loop Predication for Loop Optimizer in C2
Summary: Loop predication implementation
Reviewed-by: never, kvn


# 1080:7c57aead6d3e 12-Nov-2009 never

6892658: C2 should optimize some stringbuilder patterns
Reviewed-by: kvn, twisti


# 948:89e0543e1737 22-Sep-2009 xdono

6884624: Update copyright year
Summary: Update copyright for files that have been modified in 2009 through Septermber
Reviewed-by: tbell, ohair


# 859:ea3f9723b5cf 23-Jul-2009 kvn

6860599: nodes limit could be reached during Output phase
Summary: Bailout compilation if nodes limit could be reached during Output phase.
Reviewed-by: never, twisti


# 418:72c5366e5d86 06-Nov-2008 rasbold

6743900: frequency based block layout
Summary: post-register allocation pass that drives block layout by edge frequencies
Reviewed-by: never, 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


# 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


# 65:99269dbf4ba8 14-Mar-2008 kvn

6674588: (Escape Analysis) Improve Escape Analysis code
Summary: Current EA code has several problems which have to be fixed.
Reviewed-by: jrose, sgoldman


# 63:eac007780a58 13-Mar-2008 kvn

6671807: (Escape Analysis) Add new ideal node to represent the state of a scalarized object at a safepoint
Summary: Values of non-static fields of a scalarized object should be saved in debug info to reallocate the object during deoptimization.
Reviewed-by: never


# 38:b789bcaf2dd9 06-Mar-2008 kvn

6667610: (Escape Analysis) retry compilation without EA if it fails
Summary: During split unique types EA could exceed nodes limit and fail the method compilation.
Reviewed-by: rasbold


# 0:a61af66fc99e 30-Nov-2007 duke

Initial load