Commit Graph

179 Commits

Author SHA1 Message Date
Vladimir Kozlov
5d3ab72d1d 7017746: Regression : C2 compiler crash due to SIGSEGV in PhaseCFG::schedule_early()
Add TEMP edges (and KILL projections) before duplicated operands are removed in Expand() methods.

Reviewed-by: never
2011-02-10 14:25:59 -08:00
Christian Thalinger
4c567f5969 7018277: JSR 292 change test/compiler/6987555/Test6987555.java to new MH syntax
Test/compiler/6987555/Test6987555.java currently does not compile because the MH return-type syntax has changed.

Reviewed-by: never
2011-02-10 00:47:59 -08:00
Erik Trimble
64115cbb85 Merge 2011-01-07 22:56:35 -08:00
Erik Trimble
3c6a7c89ff 7010068: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - first pass
Update the copyright to be 2010 on all changed files in OpenJDK

Reviewed-by: jcoomes
2011-01-03 15:30:05 -08:00
Vladimir Kozlov
4286ac7947 7009359: HS with -XX:+AggressiveOpts optimize new StringBuffer(null) so it does not throw NPE as expected
Bailout StringConcat optimization if null is passed to StringBuffer constructor.

Reviewed-by: iveresov
2010-12-28 17:34:02 -08:00
Igor Veresov
43280aa63e 7009231: C1: Incorrect CAS code for longs on SPARC 32bit
Fix CAS of longs on SPARC 32bit and cmove on SPARC 64bit.

Reviewed-by: kvn
2010-12-27 21:51:31 -08:00
Tom Rodriguez
ecddc15f7c 6579789: Internal error "c1_LinearScan.cpp:1429 Error: assert(false,"")" in debuggee with fastdebug VM
Reviewed-by: kvn, iveresov
2010-12-17 15:55:32 -08:00
Christian Thalinger
bd6731ae92 7003798: test/compiler/6991596 fails with true != false
The test of 6991596 fails on SPARCV9.

Reviewed-by: kvn, never, jrose
2010-12-03 06:14:37 -08:00
Tom Rodriguez
532dec3797 7002666: eclipse CDT projects crash with compressed oops
Reviewed-by: kvn, twisti
2010-12-01 10:16:31 -08:00
Igor Veresov
eb71d414e1 Merge 2010-11-11 17:36:50 -08:00
Vladimir Kozlov
ce2df719c6 6997311: SIGFPE in new long division asm code
Use unsigned DIV instruction

Reviewed-by: never
2010-11-06 18:52:07 -07:00
Lana Steuck
83b80f473c Merge 2010-11-04 15:32:01 -07:00
Pavel Tisnovsky
f37b5faab7 6997495: correction of regression test compiler/6857159/Test6857159
Testcase correction.

Reviewed-by: never
2010-11-04 14:03:12 +01:00
Christian Thalinger
14d9ac3169 6991596: JSR 292 unimplemented adapter_opt_i2i and adapter_opt_l2i on SPARC
Reviewed-by: kvn, jrose, dsamersoff
2010-10-18 01:54:24 -07:00
Christian Thalinger
98e9ecf9da 6987555: JSR 292 unboxing to a boolean value fails on big-endian SPARC
Reviewed-by: never, jrose
2010-10-13 01:19:43 -07:00
Tom Rodriguez
f591ed981d 6968348: Byteswapped memory access can point to wrong location after JIT
Reviewed-by: twisti, kvn, iveresov
2010-10-04 17:09:18 -07:00
Tom Rodriguez
e65f42fe5e 6982370: SIGBUS in jbyte_fill
Reviewed-by: kvn
2010-09-14 14:09:24 -07:00
Abhijit Saha
a3319eba8a 6977952: Test: Sync missing tests from hs16.3 to hs17.x
Reviewed-by: wrockett
2010-08-17 22:52:50 -07:00
Vladimir Kozlov
b092cb33e6 6973329: C2 with Zero based COOP produces code with broken anti-dependency on x86
Recompile without subsuming loads if RA try to clone a node with anti_dependence.

Reviewed-by: never
2010-08-11 10:48:20 -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
Hiroshi Yamauchi
cd48f31efe 6946040: add intrinsic for short and char reverseBytes
Reviewed-by: never, twisti
2010-04-26 11:27:21 -07:00
Abhijit Saha
0610f6846b Merge 2010-04-06 22:06:57 -07:00
Abhijit Saha
845f11dd17 Merge 2010-03-24 17:16:33 -07:00
Tom Rodriguez
dac78c30b9 6930043: C2: SIGSEGV in javasoft.sqe.tests.lang.arr017.arr01702.arr01702.loop_forw(II)I
Reviewed-by: kvn
2010-03-17 16:40:25 -07:00
Vladimir Kozlov
72a7a6ffcf 6935535: String.indexOf() returns incorrect result on x86 with SSE4.2
Added missing counter decrement when substring search restarted.

Reviewed-by: twisti
2010-03-17 10:47:03 -07:00
Roland Westrelin
7dcf59914e 6932496: c1: deoptimization of jsr subroutine fails on sparcv9
Store jsr ret bci as intptr constant in c1 debug info

Reviewed-by: never
2010-03-05 13:58:34 +01:00
Tom Rodriguez
3e1688a8cd 6663854: assert(n != __null,"Bad immediate dominator info.") in C2 with -Xcomp
Reviewed-by: kvn
2010-02-18 15:05:10 -08:00
Vladimir Kozlov
22409a5704 6910618: C2: Error: assert(d->is_oop(),"JVM_ArrayCopy: dst not an oop")
Mark in PcDesc call sites which return oop and save the result oop across objects reallocation during deoptimization.

Reviewed-by: never
2010-02-09 01:31:13 -08:00
Vladimir Kozlov
3f7a94c3f2 6910605: C2: NullPointerException/ClassCaseException is thrown when C2 with DeoptimizeALot is used
Set the reexecute bit for runtime calls _new_array_Java when they used for _multianewarray bytecode.

Reviewed-by: never
2010-02-08 12:20:09 -08:00
Hiroshi Yamauchi
688398edef 6921969: optimize 64 long multiply for case with high bits zero
Reviewed-by: never, twisti, kvn, rasbold
2010-02-03 15:56:37 -08:00
Tom Rodriguez
8cc63249e9 6916644: C2 compiler crash on x86
Reviewed-by: kvn, twisti
2010-01-29 22:51:41 -08:00
Tom Rodriguez
07c442542c 6792161: assert("No dead instructions after post-alloc")
Reviewed-by: kvn
2010-01-28 20:41:37 -08:00
Vladimir Kozlov
a0cb26b72d 6893701: compiler/6877254/Test.java fails because it combines -XX:+UseConcMarkSweepGC with other GC
Remove explicit GC flags in regression tests

Reviewed-by: never, ysr
2010-01-19 15:54:42 -08:00
Vladimir Kozlov
bb4f475e1b 6917931: compiler/6895383/Test.java don't compile due missed imports
Add missing imports.

Reviewed-by: never, twisti
2010-01-19 10:25:54 -08:00
Tom Rodriguez
96612c6e23 6909839: missing unsigned compare cases for some cmoves in sparc.ad
Reviewed-by: kvn, jrose
2010-01-09 00:59:35 -08:00
Vladimir Kozlov
eca996c10f 6910484: incorrect integer optimization (loosing and op-r in a given example)
Remove AND operation only if mask is equal to shift.

Reviewed-by: never
2010-01-08 09:51:24 -08:00
Vladimir Kozlov
8da8433a6f 6912517: JIT bug compiles out (and stops running) code that needs to be run. Causes NPE
Add missing check that value is used in memory expression in instructions with embedded load.

Reviewed-by: never, jrose
2010-01-07 16:26:31 -08:00
Vladimir Kozlov
00f583219f 6896727: nsk/logging/LoggingPermission/LoggingPermission/logperm002 fails with G1, EscapeAnalisys
Move instance store's memory users to corresponding memory slices when updating its memory edge.

Reviewed-by: never
2009-12-09 19:50:14 -08:00
Vladimir Kozlov
9f5ca0249d 6895383: JCK test throws NPE for method compiled with Escape Analysis
Add missing checks for MemBar nodes in EA.

Reviewed-by: never
2009-12-09 16:40:45 -08:00
Vladimir Kozlov
d19aa4e217 6892265: System.arraycopy unable to reference elements beyond Integer.MAX_VALUE bytes
Use size_t type cast to widen int values in typeArrayKlass::copy_array().

Reviewed-by: never, jcoomes
2009-12-03 14:20:22 -08:00
Changpeng Fang
8a9580b1a1 6901572: JVM 1.6.16 crash on loops: assert(has_node(i),"")
Skip the secondary induction variable handling if it is dead

Reviewed-by: never, kvn
2009-12-02 13:29:00 -08:00
Roland Westrelin
7eea7dcfe4 6769124: various 64-bit fixes for c1
Reviewed-by: never
2009-11-02 11:17:55 +01: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
Tom Rodriguez
8eace255e1 6891750: deopt blob kills values in O5
Reviewed-by: kvn, twisti
2009-10-15 11:47:13 -07:00
Tom Rodriguez
9b306d03ee 6885584: A particular class structure causes large allocation spike for jit
Reviewed-by: kvn
2009-10-07 15:38:37 -07:00
Volker Simonis
930f3d4570 6880034: SIGBUS during deoptimisation at a safepoint on 64bit-SPARC
Fix problem with the double register encodings in sparc.ad

Reviewed-by: never, jrose
2009-10-06 10:15:38 -07:00
Christian Thalinger
e4541dcd08 6879902: CTW failure jdk6_18/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp:845
For signatures with a large number of arguments the offset for the float store becomes too big and does not fit in 13-bit.

Reviewed-by: kvn, never
2009-10-06 02:11:49 -07:00
Changpeng Fang
9640e8148d 6886353: For DeoptimizeALot, JTreg tests should "IgnoreUnrecognizedVMOptions on a product build
Add IgnoreUnrecognizedVMOptions for JTreg tests (on a product build) to pass with DeoptimizeALot

Reviewed-by: kvn
2009-09-28 17:14:25 -07:00
Vladimir Kozlov
243514d483 6827605: new String intrinsics may prevent EA scalar replacement
6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2

Modify String intrinsic methods to pass char[] pointers instead of string oops.

Reviewed-by: never
2009-09-14 12:14:20 -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
Vladimir Kozlov
75e90c9027 6880533: test/compiler/6865031/Test.java miss -XX:+IgnoreUnrecognizedVMOptions
Add missing test option -XX:+IgnoreUnrecognizedVMOptions.

Reviewed-by: never
2009-09-09 16:28:03 -07:00
Tom Rodriguez
57a92290f4 6855215: Calculation error (NaN) after about 1500 calculations
Reviewed-by: kvn
2009-08-31 17:07:53 -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
Tom Rodriguez
cc01c0f4f6 6795465: Crash in assembler_sparc.cpp with client compiler on solaris-sparc
Reviewed-by: twisti, cfang
2009-08-17 14:45:02 -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
Vladimir Kozlov
ab7a29cdcc Merge 2009-08-06 09:37:26 -07:00
Vladimir Kozlov
adcbcc3cdc 6868486: timouts and outOfMemory in regression tests
Increase timeout for tests and heap size for 6851282 test.

Reviewed-by: never, cfang
2009-08-04 17:11:17 -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
Vladimir Kozlov
2641db378b 6863420: os::javaTimeNanos() go backward on Solaris x86
Use new atomic long load method Atomic::load() to load max_hrtime.

Reviewed-by: never, ysr, johnc, phh, dcubed, acorn
2009-07-26 16:40:14 -07:00
Vladimir Kozlov
b0f75657c5 6826736: CMS: core dump with -XX:+UseCompressedOops
Fix deoptimization code and OopMapSet::all_do() to check for oop = narrow_oop_base.

Reviewed-by: jcoomes, phh, ysr, never
2009-07-22 15:48:51 -07:00
Tom Rodriguez
62ca1df1dd 6857159: local schedule failed with checkcast of Thread.currentThread()
Reviewed-by: kvn
2009-07-21 16:42:58 -07:00
Vladimir Kozlov
7229ae9b95 Merge 2009-07-17 00:50:55 -07:00
Tom Rodriguez
1c4a7e95bb 6861513: correct copyright attribution in test for 6837094 and 6860469
Reviewed-by: rasbold
2009-07-16 17:59:27 -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
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
Tom Rodriguez
df1c3da3f8 Merge 2009-07-13 15:00:22 -07:00
Tom Rodriguez
5a409d142f 6859338: amd64 native unverified entry point pushes values before implicit null check
Reviewed-by: kvn, twisti
2009-07-13 14:58:17 -07:00
Changpeng Fang
92d332e08b 6857707: Add missing test case for CR 6855164 from its bug description
Add missing test case for CR 6855164 from its bug description.

Reviewed-by: never
2009-07-06 12:54:17 -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
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
Tom Rodriguez
0f4f530213 6849574: VM crash using NonBlockingHashMap (high_scale_lib)
Reviewed-by: kvn
2009-06-10 12:19:48 -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
Christian Thalinger
8a262ce04b 6814842: Load shortening optimizations
6797305 handles load widening but no shortening which should be covered here.

Reviewed-by: never, kvn
2009-05-13 00:45:22 -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
Christian Thalinger
a7d12b2fbf Merge 2009-05-07 04:16:53 -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
e53f13b49f 6837906: compiler tests of 6636138 fail with IllegalAccessException
The compiler tests of 6636138 fail with an IllegalAccessException.

Reviewed-by: kvn
2009-05-06 08:57:24 -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
003ca0f848 6833951: Extra ":" Causes Testcase in CR 6589834 "Parse Exception: Invalid tag: summary:"
Remove the colon

Reviewed-by: never
2009-04-24 09:14:39 -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
Changpeng Fang
08466ce0ca 6829021: tests for 6636138 use UseSuperword instead of UseSuperWord
Remove the wrong flag -XX:+UseSuperword to fix the Nightly failure

Reviewed-by: kvn, never
2009-04-10 15:01:14 -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
Tom Rodriguez
72afcb0285 6539464: Math.log() produces inconsistent results between successive runs
Reviewed-by: kvn
2009-04-06 11:53:17 -07:00
Vladimir Kozlov
090346b4e8 6823453: DeoptimizeALot causes fastdebug server jvm to fail with assert(false,"unscheduable graph")
Use a HaltNode on the fall through path of the AllocateArrayNode to indicate that it is unreachable if the array length is negative.

Reviewed-by: never, jrose
2009-04-03 13:33:32 -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
Vladimir Kozlov
41463d1d3a Merge 2009-03-19 09:13:24 -07:00
Christian Thalinger
de67e52949 6378821: bitCount() should use POPC on SPARC processors and AMD+10h
BitCount() should use POPC on SPARC processors where POPC is implemented directly in hardware.

Reviewed-by: kvn, never
2009-03-13 11:35:17 -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
89cea91c48 6797305: Add LoadUB and LoadUI opcode class
Add a LoadUB (unsigned byte) and LoadUI (unsigned int) opcode class so we have these load optimizations in the first place and do not need to handle them in the matcher.

Reviewed-by: never, kvn
2009-03-09 03:17:11 -07:00
Christian Thalinger
dd25f39709 6805724: ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant
C2, ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant.

Reviewed-by: rasbold
2009-02-16 07:19:26 -08:00
Christian Thalinger
a2ed00b650 6800154: Add comments to long_by_long_mulhi() for better understandability
This patch adds a comment pointing to the Hacker's Delight version of the algorithm plus a verbatim copy of it.  Furthermore it adds inline comments.

Reviewed-by: kvn, jrose
2009-02-13 09:09:35 -08:00
Vladimir Kozlov
94a461f4cb 6799693: Server compiler leads to data corruption when expression throws an Exception
Use merged memory state for an allocation's slow path.

Reviewed-by: never
2009-02-05 14:43:58 -08:00