Goetz Lindenmaier
1d9e66c743
8058880: Introduce identifier TEMP_DEF for effects in adl
...
Modified adlc sources.
Reviewed-by: kvn, drchase
2014-09-29 16:03:30 -04:00
David Chase
305ec3bd3f
8037816: Fix for 8036122 breaks build with Xcode5/clang
...
Repaired or selectively disabled offending formats; future-proofed with additional checking
Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00
Igor Veresov
768beb9a23
8031321: Support Intel bit manipulation instructions
...
Add support for BMI1 instructions
Reviewed-by: kvn, roland
2014-03-12 11:24:26 -07:00
Vladimir Kozlov
c3a0e80e0b
Merge
2014-01-28 12:25:34 -08: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
Goetz Lindenmaier
fe89766184
8028515: PPPC64 (part 113.2): opto: Introduce LoadFence/StoreFence
...
Use new nodes for loadFence/storeFence intrinsics in C2.
Reviewed-by: kvn, dholmes
2013-11-26 18:38:19 -08:00
Goetz Lindenmaier
d22bde2c91
8028580: PPC64 (part 114/120): Support for Call nodes with constants
...
Extends MachCall nodes so that they can issue constants to the constant table
Reviewed-by: kvn
2013-11-20 11:08:09 -08:00
Goetz Lindenmaier
f9a0d6a4b5
8028401: PPC (part 117): Improve usability of adlc and format() functionality
...
Add additional, more verbose syntax checks in adlc. Fix printing constant's problem in format().
Reviewed-by: kvn
2013-11-15 12:01:00 -08:00
Goetz Lindenmaier
12b298218d
8003854: PPC64 (part 115): Introduce PostallocExpand that expands nodes after register allocation
...
Added ability in C2 to expand mach nodes to several mach nodes after register allocation
Reviewed-by: kvn
2013-11-14 19:24:59 -08:00
Niclas Adlertz
3838ed7b68
8022783: Nashorn test fails with: assert(!def_outside->member(r))
...
Enables private copies of inputs for recent spill copies as well
Reviewed-by: kvn, twisti
2013-10-18 10:50:17 +02:00
Rickard Bäckman
441f1d74cf
8024924: Intrinsify java.lang.Math.addExact
...
Reviewed-by: kvn, twisti
2013-09-27 08:39:19 +02:00
Niclas Adlertz
9129e6dc2b
8016157: During CTW: C2: assert(!def_outside->member(r)) failed: Use of external LRG overlaps the same LRG defined in this block
...
Disable rematerialization for negD node
Reviewed-by: kvn, roland
2013-06-14 01:19:56 +02:00
Christian Thalinger
337a9c1432
8015266: fix some -Wsign-compare warnings in adlc
...
Reviewed-by: kvn
2013-05-30 08:37:08 -07:00
Roland Westrelin
c84424d4af
8007722: C2: "assert(tp->base() != Type::AnyPtr) failed: not a bare pointer" at machnode.cpp:376
...
GetAndSetP's MachNode should capture bottom type.
Reviewed-by: kvn
2013-02-26 12:18:30 +01:00
Vladimir Kozlov
9e0c61f822
6896617: Optimize sun.nio.cs.ISO_8859_1$Encode.encodeArrayLoop() on x86
...
Use SSE4.2 and AVX2 instructions for encodeArray intrinsic.
Reviewed-by: roland
2013-01-22 15:34:16 -08:00
Goetz Lindenmaier
f28ac57f94
8000592: Improve adlc usability
...
Several changes to adlc to improve its usability
Reviewed-by: kvn
2012-10-09 16:09:31 -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
Roland Westrelin
61eb5a0549
7054512: Compress class pointers after perm gen removal
...
Support of compress class pointers in the compilers.
Reviewed-by: kvn, twisti
2012-10-09 10:11:38 +02: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
Vladimir Kozlov
9c3545d4fb
7200233: C2: can't use expand rules for vector instruction rules
...
Added missed _bottom_type set in ArchDesc::defineExpand() and missed vector nodes in MatchRule::is_vector().
Reviewed-by: twisti, roland, dlong
2012-09-25 10:41:15 -07:00
Roland Westrelin
302540691b
7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
...
Use shorter instruction sequences for atomic add and atomic exchange when possible.
Reviewed-by: kvn, jrose
2012-09-20 16:49:17 +02:00
Jon Masamitsu
5c58d27aac
6964458: Reimplement class meta-data storage to use native memory
...
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com>
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
2012-09-01 13:25:18 -04: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
Krystal Mok
529b370174
7174218: remove AtomicLongCSImpl intrinsics
...
Reviewed-by: kvn, twisti
2012-06-12 14:31:44 -07:00
Roland Westrelin
97439fb4ff
7121140: Allocation paths require explicit memory synchronization operations for RMO systems
...
Adds store store barrier after initialization of header and body of objects.
Reviewed-by: never, kvn
2011-12-20 16:56:50 +01:00
Roland Westrelin
9d8e44db59
7077312: Provide a CALL effect for instruct declaration in the ad file
...
Abstracted way to declare that the MachNode has the effect of a call (kills caller save registers, preserves callee save registers)
Reviewed-by: twisti, never
2011-09-14 09:22:51 +02:00
Roland Westrelin
8ae50d45a4
7096010: c2: running with +PrintOptoAssembly crashes the VM when $constanttablebase is used
...
ADLC generates code to prepare the register string to be printed in a char array but then calls print without the char array as an argument.
Reviewed-by: never
2011-09-30 13:47:26 +02:00
Vladimir Kozlov
90651b2666
7079329: Adjust allocation prefetching for T4
...
On T4 2 BIS instructions should be issued to prefetch 64 bytes
Reviewed-by: iveresov, phh, twisti
2011-08-16 16:59:46 -07:00
Vladimir Kozlov
080f790edc
7079317: Incorrect branch's destination block in PrintoOptoAssembly output
...
Save/restore label and block in scratch_emit_size()
Reviewed-by: never
2011-08-16 11:53:57 -07:00
Vladimir Kozlov
ac99f413d7
7063629: use cbcond in C2 generated code on T4
...
Use new short branch instruction in C2 generated code.
Reviewed-by: never
2011-08-11 12:08:11 -07:00
Roland Westrelin
b543a07b9a
7074017: Introduce MemBarAcquireLock/MemBarReleaseLock nodes for monitor enter/exit code paths
...
Replace MemBarAcquire/MemBarRelease nodes on the monitor enter/exit code paths with new MemBarAcquireLock/MemBarReleaseLock nodes
Reviewed-by: kvn, twisti
2011-08-02 18:36:40 +02: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
48c1293916
7063628: Use cbcond on T4
...
Add new short branch instruction to Hotspot sparc assembler.
Reviewed-by: never, twisti, jrose
2011-07-21 11:25:07 -07:00
Christian Thalinger
ffaadcecea
6961690: load oops from constant table on SPARC
...
Oops should be loaded from the constant table of an nmethod instead of materializing them with a long code sequence.
Reviewed-by: never, kvn
2010-12-03 01:34:31 -08: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
Tom Rodriguez
00d1e12daf
6953576: bottom_type for matched AddPNodes doesn't always agree with ideal
...
Reviewed-by: kvn
2010-05-18 23:58:32 -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
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
Tom Rodriguez
62ca1df1dd
6857159: local schedule failed with checkcast of Thread.currentThread()
...
Reviewed-by: kvn
2009-07-21 16:42:58 -07:00
Changpeng Fang
c0d62ad9e6
6761600: Use sse 4.2 in intrinsics
...
Use SSE 4.2 in intrinsics for String.{compareTo/equals/indexOf} and Arrays.equals.
Reviewed-by: kvn, never, jrose
2009-03-31 14:07:08 -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
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
Lillian Angel
d6cdfde9d9
6778669: Patch from Red Hat -- fixes compilation errors
...
Some fixes which are required to build on recent GCCs.
Reviewed-by: never, kvn
2009-02-27 03:35:40 -08:00
Tom Rodriguez
114da9bcfc
6810855: KILL vs. TEMP ordering restrictions are too strong
...
Reviewed-by: kvn
2009-02-26 16:57:21 -08:00
Tom Rodriguez
a82243d887
6805427: adlc compiler may generate incorrect machnode emission code
...
Reviewed-by: kvn, twisti
2009-02-25 10:53:14 -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
John R Rose
67464baa7a
6771309: debugging AD files is difficult without #line directives in generated code
...
More and better #line and #define directives in the generated code; ADLC itself accepts #line directives
Reviewed-by: never, kvn
2008-12-09 12:41:26 -08:00
Vladimir Kozlov
7aae40a95f
6462850: generate biased locking code in C2 ideal graph
...
Inline biased locking code in C2 ideal graph during macro nodes expansion
Reviewed-by: never
2008-11-07 09:29:38 -08:00
Tom Rodriguez
429a95440a
6754519
: don't emit flag fixup for NaN when condition being tested doesn't need it
...
Reviewed-by: kvn, rasbold
2008-10-28 09:31:30 -07:00
Antonios Printezis
615777b6da
Merge
2008-08-21 23:36:31 -04:00