Vladimir Kozlov
f0f6f93143
6880052: SIGSEGV in GraphKit::null_check_common()
...
Check that a klass is not NULL before the is_loaded() call.
Reviewed-by: never
2009-09-08 16:56:31 -07:00
Vladimir Kozlov
d486b5f5fd
6875619: CTW fails with /hotspot/src/share/vm/opto/type.hpp
...
In load_array_length() cast array's type to TypeOopPtr when calling make_ideal_length() method.
Reviewed-by: never
2009-09-08 10:42:50 -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
Vladimir Kozlov
343b5b0bef
6875577: CTW fails with /hotspot/src/share/vm/opto/memnode.cpp
...
Fix do_null_check to check for unloaded klass for all oop pointers.
Reviewed-by: never, cfang
2009-08-28 11:19:33 -07:00
Changpeng Fang
ff9a1bddb5
6873116: Modify reexecute implementation to use pcDesc to record the reexecute bit
...
Use PcDesc to keep record of the reexecute bit instead of using DebugInfoStreams
Reviewed-by: kvn, never, twisti
2009-08-20 12:42:57 -07:00
Vladimir Kozlov
15b6cdf897
6873799: enable escape analysis by default
...
Enable escape analysis by default
Reviewed-by: never
2009-08-19 19:05:18 -07:00
Tom Rodriguez
0217f432c2
6873777: FPU control word optimization still performed with SSE
...
Reviewed-by: kvn
2009-08-19 18:54:35 -07:00
Changpeng Fang
05c34e93bd
6866651: Regression: simple int sum crashes jvm (build 1.6.0_14-b08 and 1.7.0-ea-b59)
...
Delay dead code elimination in set_req_X to make it safe
Reviewed-by: kvn, never
2009-08-17 12:11:06 -07:00
Tom Rodriguez
7d0158d27f
Merge
2009-08-14 15:55:26 -07:00
Tom Rodriguez
398fffa232
6862863: C2 compiler fails in elide_copy()
...
Reviewed-by: kvn
2009-08-14 15:53:46 -07:00
Tom Rodriguez
c94a076d34
6862956: PhaseIdealLoop should have a CFG verification mode
...
Reviewed-by: kvn, twisti
2009-08-14 00:02:12 -07:00
Vladimir Kozlov
ab7a29cdcc
Merge
2009-08-06 09:37:26 -07:00
Changpeng Fang
3e7e112ee5
6868269: CompileTheWorld assertion failure introduced by the reexecute bit implementation
...
Improvement on reexecute implementation to fix the assertion failure
Reviewed-by: kvn, never
2009-08-04 21:32:08 -07:00
Changpeng Fang
ae00753bf7
6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot
...
Developed a reexecute logic for the interpreter to reexecute the bytecode when deopt happens
Reviewed-by: kvn, never, jrose, twisti
2009-07-31 17:12:33 -07:00
Vladimir Kozlov
f2ea22a547
6865031: Application gives bad result (throws bad exception) with compressed oops
...
Produce narrow type for new Phi from the original Phi type.
Reviewed-by: cfang
2009-07-31 12:04:07 -07:00
Erik Trimble
e846382e12
Merge
2009-07-29 16:00:35 -07:00
Xiomara Jayasena
a63ef10004
6862919: Update copyright year
...
Update copyright for files that have been modified in 2009, up to 07/09
Reviewed-by: tbell, ohair
2009-07-28 12:12:40 -07:00
Christian Thalinger
6dd47535cd
6863155: Server compiler generates incorrect code (x86, long, bitshift, bitmask)
...
Code compiled with server compiler generates an incorrect result.
Reviewed-by: cfang, never, kvn
2009-07-28 09:02:30 +02:00
Christian Thalinger
714db48492
Merge
2009-07-27 06:15:29 -07:00
Vladimir Kozlov
9387db9948
6851386: assert(b->find_node(def) < j,"uses must follow definitions")
...
Add additional check for a tight loop.
Reviewed-by: never
2009-07-26 12:59:41 -07:00
Vladimir Kozlov
8dd34cd52f
6860599: nodes limit could be reached during Output phase
...
Bailout compilation if nodes limit could be reached during Output phase.
Reviewed-by: never, twisti
2009-07-23 14:53:56 -07:00
John R Rose
6515225d49
6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics
...
Remove useless lazy evaluation of intrinsics; add LAST_COMPILER_INLINE to help categorize them
Reviewed-by: kvn
2009-07-21 16:56:06 -07:00
Christian Thalinger
6b849a12a0
6860920: serialize.cpp shouldn't use objArrayOopDesc::base_offset_in_bytes(T_BYTE)
...
Serialize.cpp currently uses objArrayOopDesc::base_offset_in_bytes(T_BYTE), which seems to be wrong.
Reviewed-by: coleenp, kvn
2009-07-20 08:20:00 -07:00
Vladimir Kozlov
2e2f60507e
6851282: JIT miscompilation results in null entry in array when using CompressedOops
...
Get type for new Phi from non dead path.
Reviewed-by: never
2009-07-16 16:29:55 -07:00
Vladimir Kozlov
c3efa899b6
6851742: (EA) allocation elimination doesn't work with UseG1GC
...
Fix eliminate_card_mark() to eliminate G1 pre/post barriers.
Reviewed-by: never
2009-07-16 14:10:42 -07:00
Hiroshi Yamauchi
a24ea182cc
6860469: remix_address_expressions sets incorrect control causing crash in split_if_with_block_post
...
Co-authored-by: Chuck Rasbold <rasbold@google.com>
Reviewed-by: never, kvn
2009-07-15 13:37:35 -07:00
Vladimir Kozlov
5a1032d9e6
6857661: 64-bit server VM: assert(is_Initialize(),"invalid node class")
...
Move the secondary raw memory barrier to the correct place in generate_arraycopy().
Reviewed-by: never
2009-07-06 15:53:30 -07:00
Changpeng Fang
7a36ade1ec
6855164: SIGSEGV during compilation of method involving loop over CharSequence
...
Don not split a block if it contains a FastLockNode with a PhiNode input.
Reviewed-by: kvn, never
2009-07-02 16:18:19 -07:00
Vladimir Kozlov
bb726c6f28
6840775: Multiple JVM crashes seen with 1.6.0_10 through 1.6.0_14
...
Put missed reference to allocated array in copyOf() intrinsic into OopMap for the call slow_arraycopy().
Reviewed-by: never
2009-07-01 20:22:18 -07:00
Tom Rodriguez
da11e65fa4
6856025: assert(_base >= OopPtr && _base <= KlassPtr,"Not a Java pointer")
...
Reviewed-by: kvn
2009-07-01 12:22:23 -07:00
Tom Rodriguez
3bdd70fe18
6818666: G1: Type lost in g1 pre-barrier
...
Reviewed-by: kvn
2009-06-26 13:03:29 -07:00
Christian Thalinger
a9ad90fa87
5057225: Remove useless I2L conversions
...
The optimizer should be told to normalize (AndL (ConvI2L x) 0xFF) to (ConvI2L (AndI x 0xFF)), and then the existing matcher rule will work for free.
Reviewed-by: kvn
2009-06-26 07:26:10 -07:00
Vladimir Kozlov
8f6070ce0e
6841800: Incorrect boundary values behavior for option -XX:MaxLabelRootDepth=0-6 leads to jvm crash
...
MaxLabelRootDepth value less then 10 is invalid.
Reviewed-by: never
2009-06-24 12:00:51 -07:00
Chuck Rasbold
2c5f52b511
6837094: False positive for "meet not symmetric" failure
...
Have the meet not symmetric check recursively do the interface-vs-oop check on array subtypes.
Reviewed-by: jrose
2009-06-23 17:52:29 -07:00
Vladimir Kozlov
7b9d6a79ac
6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14
...
Disable escape analysis when jvmti/debugger is used. Add support for EA ibto SA.
Reviewed-by: never
2009-06-09 16:19:10 -07:00
Changpeng Fang
f981546f2d
6837146: Should perform unswitch before maximally unroll in loop transformation
...
Move loop unswitch before maximally unroll
Reviewed-by: never
2009-05-28 09:37:18 -07:00
Vladimir Kozlov
802f3552f9
6843752: missing code for an anti-dependent Phi in GCM
...
Don't place a load below anti-dependent PHI.
Reviewed-by: never, twisti
2009-05-27 12:35:51 -07:00
Vladimir Kozlov
fdb3ca8708
6772683: Thread.isInterrupted() fails to return true on multiprocessor PC
...
Set the control edge for the field _interrupted load in inline_native_isInterrupted().
Reviewed-by: never
2009-05-21 10:05:36 -07:00
Vladimir Kozlov
e101bdf5df
6836054: java/util/Arrays/CopyMethods.java fails on solaris-sparc with IllegalArgumentException
...
Do not mark an allocation as scalar replaceable if its actual type in unknown statically.
Reviewed-by: never
2009-05-11 18:30:13 -07:00
Vladimir Kozlov
6202395cb2
6832293: JIT compiler got wrong result in type checking with -server
...
Check for an object array of interface in CmpPNode::sub().
Reviewed-by: never
2009-05-11 17:59:54 -07:00
Vladimir Kozlov
34ee921399
6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits
...
Cache Jvmti and DTrace flags used by Compiler.
Reviewed-by: never
2009-05-08 10:44:20 -07:00
Christian Thalinger
1576a9be9e
Merge
2009-05-07 00:28:13 -07:00
Christian Thalinger
96139033e6
6837011: SIGSEGV in PhaseIdealLoop in 32bit jvm
...
The CR's test crashes with SIGSEGV when running with "-server -Xcomp" using using 32bit jvm.
Reviewed-by: kvn, never, rasbold
2009-05-06 12:04:42 -07:00
Christian Thalinger
6a270f9f19
6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}()
...
These methods can be instrinsified by using bit scan, bit test, and population count instructions.
Reviewed-by: kvn, never
2009-05-06 00:27:52 -07:00
Changpeng Fang
716c78f080
6833879: Assigning positive zero is ignored when old value is negative zero
...
Don't perform CMOVE identity optimization for floating point types
Reviewed-by: kvn, never
2009-05-05 11:02:10 -07:00
Changpeng Fang
04fdef79fa
6589834: deoptimization problem with -XX:+DeoptimizeALot
...
Relocate the stack pointer adjustment to where uncommon_trap is actually inserted for new_array.
Reviewed-by: kvn, jrose
2009-04-23 14:04:24 -07:00
Vladimir Kozlov
273a47426e
6709742: find_base_for_derived's use of Ideal NULL is unsafe causing crashes during register allocation
...
Create a mach node corresponding to ideal node ConP #NULL specifically for derived pointers.
Reviewed-by: never
2009-04-22 17:03:18 -07:00
John R Rose
34c1d72421
6655646: dynamic languages need dynamically linked call sites
...
Invokedynamic instruction (JSR 292 RI)
Reviewed-by: twisti, never
2009-04-21 23:21:04 -07:00
Vladimir Kozlov
ca3a3504be
6711117: Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr")
...
Delay a memory node transformation if its control or address on IGVN worklist.
Reviewed-by: never
2009-04-07 19:04:24 -07:00
Vladimir Kozlov
014e5cdefb
6826960: C2 Sparc: assert(bb->_nodes(_bb_end)->is_Proj(),"skipping projections after expected call")
...
Add the check when a Halt node is placed in a separate block.
Reviewed-by: twisti
2009-04-07 10:05:04 -07:00