Skip to content

Commit b767a77

Browse files
tabjyD-D-HjaikiranJatin Bhatejatstuefe
authored
Arithmetic canonicalization v3 (#3)
* 8340144: C1: remove unused Compilation::_max_spills Reviewed-by: thartmann, shade * 8340176: Replace usage of -noclassgc with -Xnoclassgc in test/jdk/java/lang/management/MemoryMXBean/LowMemoryTest2.java Reviewed-by: kevinw, lmesnik * 8339793: Fix incorrect APX feature enabling with -XX:-UseAPX Reviewed-by: kvn, thartmann, sviswanathan * 8340184: Bug in CompressedKlassPointers::is_in_encodable_range Reviewed-by: coleenp, rkennke, jsjolen * 8332442: C2: refactor Mod cases in Compile::final_graph_reshaping_main_switch() Reviewed-by: roland, chagedorn, jkarthikeyan * 8340119: Remove oopDesc::size_might_change() Reviewed-by: stefank, iwalulya * 8340009: Improve the output from assert_different_registers Reviewed-by: aboldtch, dholmes, shade, mli * 8340273: Remove CounterHalfLifeTime Reviewed-by: chagedorn, dholmes * 8338566: Lazy creation of exception instances is not thread safe Reviewed-by: shade, kvn, dlong * 8339648: ZGC: Division by zero in rule_major_allocation_rate Reviewed-by: aboldtch, lucy, tschatzl * 8329816: Add SLEEF version 3.6.1 Reviewed-by: erikj, mli, luhenry * 8315273: (fs) Path.toRealPath(LinkOption.NOFOLLOW_LINKS) fails when "../../" follows a link (win) Reviewed-by: djelinski * 8339574: Behavior of File.is{Directory,File,Hidden} is not documented with respect to symlinks Reviewed-by: djelinski, alanb * 8340200: Misspelled constant `AttributesProcessingOption.DROP_UNSTABLE_ATRIBUTES` Reviewed-by: liach * 8339934: Simplify Math.scalb(double) method Reviewed-by: darcy * 8339790: Support Intel APX setzucc instruction Reviewed-by: sviswanathan, jkarthikeyan, kvn * 8340323: Test jdk/classfile/OptionsTest.java fails after JDK-8340200 Reviewed-by: alanb * 8338686: App classpath mismatch if a jar from the Class-Path attribute is on the classpath Reviewed-by: dholmes, iklam * 8337563: NMT: rename MEMFLAGS to MemTag Reviewed-by: dholmes, coleenp, jsjolen * 8340210: Add positionTestUI() to PassFailJFrame.Builder Co-authored-by: Alexey Ivanov <aivanov@openjdk.org> Reviewed-by: aivanov, azvegint * 8340132: Remove internal CpException for reading malformed utf8 Reviewed-by: asotona * 8340213: jcmd VM.events ignores max argument Reviewed-by: szaldana, cjplummer, amenkov, mli * 8340015: Open source several AWT focus tests - series 7 Reviewed-by: honkar * 8340280: Avoid calling MT.invokerType() when creating LambdaForms Reviewed-by: liach, jvernee * 8333258: C2: high memory usage in PhaseCFG::insert_anti_dependences() Reviewed-by: kvn, epeter * 8340230: Tests crash: assert(is_in_encoding_range || k->is_interface() || k->is_abstract()) failed: sanity Reviewed-by: thartmann, kvn * 8319873: Add windows implementation for jcmd System.map and System.dump_map Co-authored-by: Simon Tooke <stooke@openjdk.org> Reviewed-by: stuefe, kevinw, szaldana * 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP Reviewed-by: prr, honkar, aivanov * 8340113: Remove JULONG as a Diagnostic Command argument type (jcmd JFR.view) Reviewed-by: lmesnik, egahlin * 8340272: C2 SuperWord: JMH benchmark for Reduction vectorization Reviewed-by: kvn, jkarthikeyan * 8337302: Undefined type variable results in null Reviewed-by: liach * 8339738: RISC-V: Vectorize crc32 intrinsic Reviewed-by: fyang, luhenry * 8340368: windows-x64-slowdebug build fails after JDK-8319873 Reviewed-by: jpai, kevinw, aboldtch, eosterlund * 8339992: RISC-V: some minor improvements of base64_vector_decode_round Reviewed-by: fyang, luhenry * 8340233: Missed ThreadWXEnable in jfrNativeLibraryLoadEvent.cpp Reviewed-by: mgronlun * 8340391: Windows jcmd System.map and System.dump_map tests failing Reviewed-by: cjplummer * 8339962: Open source AWT TextField tests - Set1 Reviewed-by: jdv, dnguyen, prr * 8340078: Open source several 2D tests Reviewed-by: honkar * 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test Reviewed-by: serb, prr * 8339980: [s390x] ProblemList jdk/java/util/zip/CloseInflaterDeflaterTest.java Reviewed-by: lucy * 8339416: [s390x] Provide implementation for resolve_global_jobject Reviewed-by: mdoerr, lucy * 8286851: Deprecate for removal several of the undocumented java launcher options Reviewed-by: dholmes * 8340276: Test java/lang/management/ThreadMXBean/Locks.java failed with NullPointerException Reviewed-by: cjplummer, lmesnik * 8338759: Add extra diagnostic to java/net/InetAddress/ptr/Lookup.java Reviewed-by: dfuchs, shade * 8337674: ZGC: Consistent style for naming private static constants Reviewed-by: stefank, aboldtch, mli * 8340007: Refactor KeyEvent/FunctionKeyTest.java Reviewed-by: azvegint * 8340306: Add border around instructions in PassFailJFrame Reviewed-by: honkar, prr * 8339787: Add some additional diagnostic output to java/net/ipv6tests/UdpTest.java Reviewed-by: dfuchs * 8338995: New Object to ObjectMonitor mapping: PPC64 implementation Reviewed-by: rrich, lucy * 8331391: Enhance the keytool code by invoking the buildTrustedCerts method for essential options Reviewed-by: coffeys, mullan * 8298614: Support CDS heap dumping for SerialGC and ParallelGC Reviewed-by: dholmes, lmesnik, iklam * 8338693: assert(Atomic::add(&ik->_shared_class_load_count, 1) == 1) failed: shared class loaded more than once Reviewed-by: iklam, dholmes * 8340329: (fs) Message of NotLinkException thrown by FIles.readSymbolicLink does not include file name (win) Reviewed-by: alanb * 8339735: Remove references to Applet in core-libs/security APIs Reviewed-by: coffeys, naoto, iris, rriggs, lancea, mullan * 8340271: Open source several AWT Robot tests Reviewed-by: abhiscxk, honkar * 8340308: PassFailJFrame: Make rows default to number of lines in instructions Reviewed-by: honkar, azvegint * 8340399: Update comment in SourceVersion for language evolution history Reviewed-by: iris * 8340166: [REDO] CDS: Trim down minimum GC region alignment Reviewed-by: ccheung, iklam * 8340400: Shenandoah: Whitebox breakpoint GC requests may cause assertions Reviewed-by: shade * 8339902: Open source couple TextField related tests Reviewed-by: honkar * 8340353: Remove CompressedOops::ptrs_base Reviewed-by: stefank, coleenp, shade, mli * 8340480: Bad copyright notices in changes from JDK-8339902 Reviewed-by: kcr, bpb, kizune * 8339192: Native annotation parsing code of deprecated annotations causes crash Reviewed-by: jrose, mgronlun * 8339895: Open source several AWT focus tests - series 3 Reviewed-by: prr * 8340436: Remove unused CompressedOops::AnyNarrowOopMode Reviewed-by: haosun, dholmes * 8339984: Open source AWT MenuItem related tests Reviewed-by: aivanov * 8339906: Open source several AWT focus tests - series 4 Reviewed-by: abhiscxk, prr * 8340418: GHA: MacOS AArch64 bundles can be removed prematurely Reviewed-by: erikj * 8340439: AArch64: Extra entry declaration for assember test Reviewed-by: haosun, lmesnik, mli * 8340456: Reduce overhead of proxying Object methods in ProxyGenerator Reviewed-by: liach * 8340438: RISC-V: minor improvement in base64 Reviewed-by: fyang * 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout Reviewed-by: azvegint, prr * 8339972: Make a few fields in SortingFocusTraversalPolicy static Reviewed-by: azvegint, aivanov * 8340540: Problemlist DcmdMBeanPermissionsTest.java and SystemDumpMapTest.java Reviewed-by: kevinw * 8338658: New Object to ObjectMonitor mapping: s390x implementation Reviewed-by: lucy, mdoerr * 8340269: [s390x] TestLargeStub.java failure after 8338123 Reviewed-by: mdoerr, lucy * 8340537: Typo in javadoc of java.util.jar.JarFile Reviewed-by: mullan, lancea, iris * 8339198: Remove tag field from AbstractPoolEntry Reviewed-by: asotona, redestad * 8340232: Optimize DataInputStream::readUTF Reviewed-by: liach, bpb * 8338471: Assert deleted methods not returned by CallInfo Reviewed-by: shade, jwaters, dholmes * 8340092: [Linux] containers/systemd/SystemdMemoryAwarenessTest.java failing on some systems Reviewed-by: mbaesken * 8339781: Better use of Javadoc tags in javax.lang.model Reviewed-by: jjg * 8339217: Optimize ClassFile API loadConstant Reviewed-by: liach, redestad, asotona * 8340544: Optimize setLocalsFromArg Reviewed-by: redestad, liach * 8340524: Remove NarrowPtrStruct Reviewed-by: shade, jwaters * 8340387: Update OS detection code to recognize Windows Server 2025 Reviewed-by: mdoerr, jwaters, dholmes * 8340171: CDS: Enhance bitmap truncation Reviewed-by: matsaave, iklam * 8340392: Handle OopStorage in location decoder Reviewed-by: kbarrett, dholmes * 8340573: Remove unused G1ParScanThreadState::_partial_objarray_chunk_size Reviewed-by: tschatzl * 8340084: Open source AWT Frame related tests Reviewed-by: psadhukhan, honkar * 8339852: Fix typos in java.compiler documentation Reviewed-by: liach, darcy * 8325949: Create an internal utility method for creating VarHandle instances Reviewed-by: rriggs * 8339161: ZGC: Remove unused remembered sets Reviewed-by: aboldtch, stefank * 8335334: Stress mode to randomly execute unstable if traps Reviewed-by: chagedorn, kvn * 8340393: Open source closed choice tests #2 Reviewed-by: psadhukhan * 8340183: Shenandoah: Incorrect match for clone barrier in is_gc_barrier_node Reviewed-by: roland, rkennke * 8336025: Improve ZipOutputSream validation of MAX CEN Header field limits Reviewed-by: alanb * 8319332: Security properties files inclusion Co-authored-by: Francisco Ferrari Bihurriet <fferrari@openjdk.org> Co-authored-by: Martin Balao <mbalao@openjdk.org> Reviewed-by: weijun, mullan, kdriver * 8340461: Amend description for logArea Reviewed-by: azvegint, prr * 8340411: open source several 2D imaging tests Reviewed-by: azvegint * 8340365: Position the first window of a window list Reviewed-by: azvegint, prr * WIP: v3 * 8338918: Remove non translated file name from WinResources resource bundle Reviewed-by: jlu, almatvee * 8340707: ProblemList applications/ctw/modules/java_base.java due to JDK-8340683 Reviewed-by: darcy * 8340114: Remove outdated SelectVersion() function from the launcher and update the code comments explaining the code flow Reviewed-by: dholmes, alanb * 8339995: Open source several AWT focus tests - series 6 Reviewed-by: prr * 8340596: Remove dead code from RequiresSetenv function in java.base/unix/native/libjli/java_md.c Reviewed-by: dholmes * 8340367: Opensource few AWT image tests Reviewed-by: prr * 8340146: ZGC: TestAllocateHeapAt.java should not run with UseLargePages Reviewed-by: tschatzl, stefank * 8323688: C2: Fix UB of jlong overflow in PhaseIdealLoop::is_counted_loop() Reviewed-by: thartmann, kvn * 8340590: RISC-V: C2: Small improvement to vector gather load and scatter store Reviewed-by: fyang, dzhang * 8340623: Remove outdated PROCESSOR_ARCHITECTURE_IA64 from Windows coding Reviewed-by: alanb, dholmes * 8335167: Test runtime/Thread/TestAlwaysPreTouchStacks.java failed with Expected a higher ratio between stack committed and reserved Reviewed-by: stuefe, dholmes, gziemski * 8340585: [JVMCI] compiler/unsafe/UnsafeGetStableArrayElement.java fails with -XX:-UseCompressedClassPointers Reviewed-by: dnsimon * 8340398: [JVMCI] Unintuitive behavior of UseJVMCICompiler option Reviewed-by: dnsimon * 8340680: Fix typos in javax.lang.model.SourceVersion Reviewed-by: darcy, iris * 8339299: C1 will miss type profile when inline final method Reviewed-by: lmesnik, vlivanov * 8340657: [PPC64] SA determines wrong unextendedSP Reviewed-by: ysuenaga, mbaesken * 8340383: VM issues warning failure to find kernel32.dll on Windows nanoserver Reviewed-by: dholmes, jwaters * 8340408: Shenandoah: Remove redundant task stats printing code in ShenandoahTaskQueue Reviewed-by: shade, wkemper * 8338546: Speed up ConstantPoolBuilder::classEntry(ClassDesc) Reviewed-by: asotona, redestad * 8338405: JFR: Use FILE type for dcmds Reviewed-by: egahlin, lmesnik * 8340793: Fix client builds after JDK-8337987 Reviewed-by: shade, fyang * 8338694: x86_64 intrinsic for tanh using libm Reviewed-by: kvn, jbhateja, sgibbons, sviswanathan * 8340143: Open source several Java2D rendering loop tests. Reviewed-by: psadhukhan * 8340433: Open source closed choice tests #3 Reviewed-by: honkar, prr * 8340670: Policy.UNSUPPORTED_EMPTY_COLLECTION.isReadOnly does not return true Reviewed-by: mullan * 8340804: doc/building.md update Xcode instructions to note that full install is required Reviewed-by: erikj, jwaters * 8338525: Leading and trailing code blocks by indentation Reviewed-by: hannesw, prappo * 8340717: Remove unused function declarations from java.c/java.h of the launcher Reviewed-by: alanb, dholmes, shade, jwaters * 8340643: RISC-V: Small refactoring for sub/subw macro-assembler routines Reviewed-by: fyang, luhenry * 8340708: Optimize StackMapGenerator::processMethod Reviewed-by: liach * 8340587: Optimize StackMapGenerator$Frame::checkAssignableTo Reviewed-by: liach * 8340710: Optimize DirectClassBuilder::build Reviewed-by: liach * 8339935: Open source several AWT focus tests - series 5 Reviewed-by: prr * 8339771: RISC-V: Reduce icache flushes Reviewed-by: fyang, mli, luhenry * 8340808: RISC-V: Client build fails after JDK-8339738 Reviewed-by: fyang * 8340843: [PPC64/s390x] Error: ShouldNotReachHere() in TemplateInterpreterGenerator::generate_math_entry after 8338694 Reviewed-by: mbaesken, amitkumar * 8339541: CSS rule is not specific enough Reviewed-by: jjg * 8340885: Desugar ZipCoder.Comparison Reviewed-by: lancea, eirbjo * 8340568: Incorrect escaping of single quotes when pretty-printing character literals Reviewed-by: mcimadamore * 8338583: NMT: Malloc overhead is calculated incorrectly Reviewed-by: azafari, yan, gziemski * WIP: use UseNewCode * 8340815: Add SECURITY.md file Reviewed-by: mr, jwaters, erikj * 8340946: Add vmTestbase/gc/memory/Nio/Nio.java and java/nio/Buffer/LimitDirectMemory.java to problem list Reviewed-by: liach, dcubed, alanb * 8340684: Reading from an input stream backed by a closed ZipFile has no test coverage Reviewed-by: lancea * 8340228: Open source couple more miscellaneous AWT tests Reviewed-by: prr * 8340956: ProblemList 4 java/nio/channels/DatagramChannel tests on macosx-all Reviewed-by: liach, alanb, darcy, dfuchs * 8340838: Clean up MutableCallSite to use explicit release fence instead of AtomicInteger Reviewed-by: jrose, redestad, shade * 8340831: Simplify simple validation for class definition in MethodHandles.Lookup Reviewed-by: redestad * 8340864: Remove unused lines related to vmClasses Reviewed-by: shade, kvn * WIP: fixed lshift base term matching * WIP: removed UseNewCode * 8339271: giflib attribution correction Reviewed-by: dnguyen, prr * 8340812: LambdaForm customization via MethodHandle::updateForm is not thread safe Reviewed-by: liach, shade, jvernee * 8339260: Move rarely used constants out of ClassFile Reviewed-by: asotona * 8340923: The class LogSelection copies uninitialized memory Reviewed-by: mbaesken, jwaters, stefank * 8340899: Remove wildcard bound in PositionWindows.positionTestWindows Reviewed-by: azvegint, prr * 8340466: Add description for PassFailJFrame constructors Reviewed-by: prr, honkar * 8339542: compiler/codecache/CheckSegmentedCodeCache.java fails Reviewed-by: mdoerr, shade * 8340687: Open source closed frame tests #1 Reviewed-by: aivanov * 8339560: Unaddressed comments during code review of JDK-8337664 Reviewed-by: mullan * 8336942: Improve test coverage for class loading elements with annotations of different retentions Reviewed-by: vromero * 8336468: Reflection and MethodHandles should use more precise initializer checks Reviewed-by: liach, coleenp * 8336895: BufferedReader doesn't read full \r\n line ending when it doesn't fit in buffer Reviewed-by: jpai, alanb * 8339460: CDS error when module is located in a directory with space in the name Reviewed-by: ccheung, iklam * 8340981: Update citations to "Hacker's Delight" Reviewed-by: bpb, iris, liach, jwaters * 8340983: Use index and definition tags in Object and Double Reviewed-by: bpb, liach * 8333403: Write a test to check various components events are triggered properly Reviewed-by: aivanov * revert changing AddI/LNodeIdealizationTests * 8339261: Logs truncated in test javax/net/ssl/DTLS/DTLSRehandshakeTest.java Reviewed-by: rhalade, hchao * fixed power-of-2 multiplication detection * fixed power-of-2 multiplication detection * refactor lshift multiplier calculation. updated comments --------- Co-authored-by: Denghui Dong <ddong@openjdk.org> Co-authored-by: Jaikiran Pai <jpai@openjdk.org> Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org> Co-authored-by: Thomas Stuefe <stuefe@openjdk.org> Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org> Co-authored-by: Stefan Karlsson <stefank@openjdk.org> Co-authored-by: Daniel Lundén <dlunden@openjdk.org> Co-authored-by: Tobias Hartmann <thartmann@openjdk.org> Co-authored-by: Matthias Baesken <mbaesken@openjdk.org> Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org> Co-authored-by: Brian Burkhalter <bpb@openjdk.org> Co-authored-by: David M. Lloyd <david.lloyd@redhat.com> Co-authored-by: Raffaello Giulietti <rgiulietti@openjdk.org> Co-authored-by: Chen Liang <liach@openjdk.org> Co-authored-by: Calvin Cheung <ccheung@openjdk.org> Co-authored-by: Gerard Ziemski <gziemski@openjdk.org> Co-authored-by: Harshitha Onkar <honkar@openjdk.org> Co-authored-by: Alexey Ivanov <aivanov@openjdk.org> Co-authored-by: Leonid Mesnik <lmesnik@openjdk.org> Co-authored-by: Prasanta Sadhukhan <psadhukhan@openjdk.org> Co-authored-by: Claes Redestad <redestad@openjdk.org> Co-authored-by: Roland Westrelin <roland@openjdk.org> Co-authored-by: Martin Doerr <mdoerr@openjdk.org> Co-authored-by: Simon Tooke <stooke@openjdk.org> Co-authored-by: Nizar Benalla <nbenalla@openjdk.org> Co-authored-by: Kevin Walls <kevinw@openjdk.org> Co-authored-by: Emanuel Peter <epeter@openjdk.org> Co-authored-by: Rafael Winterhalter <winterhalter@openjdk.org> Co-authored-by: Hamlin Li <mli@openjdk.org> Co-authored-by: Phil Race <prr@openjdk.org> Co-authored-by: Amit Kumar <amitkumar@openjdk.org> Co-authored-by: Serhiy Sachkov <serhiy.sachkov@oracle.com> Co-authored-by: Joel Sikström <joel.sikstrom@oracle.com> Co-authored-by: Prasadrao Koppula <pkoppula@openjdk.org> Co-authored-by: Matias Saavedra Silva <matsaave@openjdk.org> Co-authored-by: Justin Lu <jlu@openjdk.org> Co-authored-by: Joe Darcy <darcy@openjdk.org> Co-authored-by: Aleksey Shipilev <shade@openjdk.org> Co-authored-by: William Kemper <wkemper@openjdk.org> Co-authored-by: Alexander Zuev <kizune@openjdk.org> Co-authored-by: Kim Barrett <kbarrett@openjdk.org> Co-authored-by: David Holmes <dholmes@openjdk.org> Co-authored-by: Abhishek Kumar <abhiscxk@openjdk.org> Co-authored-by: SendaoYan <syan@openjdk.org> Co-authored-by: Andrey Turbanov <aturbanov@openjdk.org> Co-authored-by: Shaojin Wen <swen@openjdk.org> Co-authored-by: Coleen Phillimore <coleenp@openjdk.org> Co-authored-by: Severin Gehwolf <sgehwolf@openjdk.org> Co-authored-by: Pavel Rappo <prappo@openjdk.org> Co-authored-by: Per Minborg <pminborg@openjdk.org> Co-authored-by: Alexander Zvegintsev <azvegint@openjdk.org> Co-authored-by: Lance Andersen <lancea@openjdk.org> Co-authored-by: Francisco Ferrari Bihurriet <fferrari@openjdk.org> Co-authored-by: Martin Balao <mbalao@openjdk.org> Co-authored-by: Alexey Semenyuk <asemenyuk@openjdk.org> Co-authored-by: Axel Boldt-Christmas <aboldtch@openjdk.org> Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org> Co-authored-by: Gui Cao <gcao@openjdk.org> Co-authored-by: Afshin Zafari <azafari@openjdk.org> Co-authored-by: Yudi Zheng <yzheng@openjdk.org> Co-authored-by: Tomas Zezula <tzezula@openjdk.org> Co-authored-by: Kuai Wei <kuaiwei.kw@alibaba-inc.com> Co-authored-by: George Adams <gdams@openjdk.org> Co-authored-by: Zhengyu Gu <zgu@openjdk.org> Co-authored-by: Sonia Zaldana Calles <szaldana@openjdk.org> Co-authored-by: Andrew Dinn <adinn@openjdk.org> Co-authored-by: vamsi-parasa <srinivas.vamsi.parasa@intel.com> Co-authored-by: Artur Barashev <artur.barashev@oracle.com> Co-authored-by: Jonathan Gibbons <jjg@openjdk.org> Co-authored-by: Robbin Ehn <rehn@openjdk.org> Co-authored-by: Hannes Wallnöfer <hannesw@openjdk.org> Co-authored-by: Liam Miller-Cushon <cushon@openjdk.org> Co-authored-by: Leonov Kirill <91743110+kirleo2@users.noreply.github.com> Co-authored-by: Eirik Bjørsnøs <eirbjo@openjdk.org> Co-authored-by: Daniel D. Daugherty <dcubed@openjdk.org> Co-authored-by: Ioi Lam <iklam@openjdk.org> Co-authored-by: Alisen Chung <achung@openjdk.org> Co-authored-by: Johan Sjölen <jsjolen@openjdk.org> Co-authored-by: Lutz Schmidt <lucy@openjdk.org> Co-authored-by: Fernando Guallini <fguallini@openjdk.org> Co-authored-by: Maxim Kartashev <mkartashev@openjdk.org> Co-authored-by: Ravi Gupta <rgupta@openjdk.org>
1 parent f9ca112 commit b767a77

File tree

834 files changed

+154396
-7060
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

834 files changed

+154396
-7060
lines changed

.github/workflows/main.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,7 @@ jobs:
384384
- build-windows-aarch64
385385
- test-linux-x64
386386
- test-macos-x64
387+
- test-macos-aarch64
387388
- test-windows-x64
388389

389390
steps:

SECURITY.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# JDK Vulnerabilities
2+
3+
Please follow the process outlined in the [OpenJDK Vulnerability Policy](https://openjdk.org/groups/vulnerability/report) to disclose vulnerabilities in the JDK.

doc/building.html

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -614,10 +614,9 @@ <h3 id="clang">clang</h3>
614614
<code>--with-toolchain-type=clang</code>.</p>
615615
<h3 id="apple-xcode">Apple Xcode</h3>
616616
<p>The oldest supported version of Xcode is 13.0.</p>
617-
<p>You will need the Xcode command line developer tools to be able to
618-
build the JDK. (Actually, <em>only</em> the command line tools are
619-
needed, not the IDE.) The simplest way to install these is to run:</p>
620-
<pre><code>xcode-select --install</code></pre>
617+
<p>You will need to download Xcode either from the App Store or specific
618+
versions can be easily located via the <a
619+
href="https://xcodereleases.com">Xcode Releases</a> website.</p>
621620
<p>When updating Xcode, it is advisable to keep an older version for
622621
building the JDK. To use a specific version of Xcode you have multiple
623622
options:</p>

doc/building.md

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -422,13 +422,9 @@ To use clang instead of gcc on Linux, use `--with-toolchain-type=clang`.
422422

423423
The oldest supported version of Xcode is 13.0.
424424

425-
You will need the Xcode command line developer tools to be able to build the
426-
JDK. (Actually, *only* the command line tools are needed, not the IDE.) The
427-
simplest way to install these is to run:
428-
429-
```
430-
xcode-select --install
431-
```
425+
You will need to download Xcode either from the App Store or specific versions
426+
can be easily located via the [Xcode Releases](https://xcodereleases.com)
427+
website.
432428

433429
When updating Xcode, it is advisable to keep an older version for building the
434430
JDK. To use a specific version of Xcode you have multiple options:

make/Main.gmk

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -568,6 +568,10 @@ $(eval $(call SetupTarget, update-build-docs, \
568568
MAKEFILE := UpdateBuildDocs, \
569569
))
570570

571+
$(eval $(call SetupTarget, update-sleef-source, \
572+
MAKEFILE := UpdateSleefSource, \
573+
))
574+
571575
$(eval $(call SetupTarget, update-x11wrappers, \
572576
MAKEFILE := UpdateX11Wrappers, \
573577
DEPS := java.base-copy buildtools-jdk, \

make/UpdateSleefSource.gmk

Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
#
2+
# Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.
3+
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4+
#
5+
# This code is free software; you can redistribute it and/or modify it
6+
# under the terms of the GNU General Public License version 2 only, as
7+
# published by the Free Software Foundation. Oracle designates this
8+
# particular file as subject to the "Classpath" exception as provided
9+
# by Oracle in the LICENSE file that accompanied this code.
10+
#
11+
# This code is distributed in the hope that it will be useful, but WITHOUT
12+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14+
# version 2 for more details (a copy is included in the LICENSE file that
15+
# accompanied this code).
16+
#
17+
# You should have received a copy of the GNU General Public License version
18+
# 2 along with this work; if not, write to the Free Software Foundation,
19+
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20+
#
21+
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22+
# or visit www.oracle.com if you need additional information or have any
23+
# questions.
24+
#
25+
26+
################################################################################
27+
28+
default: all
29+
30+
include $(SPEC)
31+
include MakeBase.gmk
32+
33+
include CopyFiles.gmk
34+
include Execute.gmk
35+
36+
################################################################################
37+
# This file is responsible for updating the generated sleef source code files
38+
# that are checked in to the JDK repo, and that are actually used when building.
39+
# This target needs to be re-run every time the source code of libsleef is
40+
# updated from upstream.
41+
################################################################################
42+
43+
ifneq ($(COMPILE_TYPE), cross)
44+
$(error Only cross-compilation of libsleef is currently supported)
45+
endif
46+
47+
ifeq ($(CMAKE), )
48+
$(error CMake not found. Please install cmake and rerun configure)
49+
endif
50+
51+
ifneq ($(OPENJDK_BUILD_OS), linux)
52+
$(error This target is only supported on linux)
53+
endif
54+
55+
SLEEF_SUPPORT_DIR := $(MAKESUPPORT_OUTPUTDIR)/sleef
56+
SLEEF_SOURCE_BASE_DIR := $(TOPDIR)/src/jdk.incubator.vector/linux/native/libsleef
57+
SLEEF_SOURCE_DIR := $(SLEEF_SOURCE_BASE_DIR)/upstream
58+
SLEEF_TARGET_DIR := $(SLEEF_SOURCE_BASE_DIR)/generated
59+
SLEEF_NATIVE_BUILD_DIR := $(SLEEF_SUPPORT_DIR)/native
60+
SLEEF_CROSS_BUILD_DIR := $(SLEEF_SUPPORT_DIR)/cross
61+
62+
ifeq ($(OPENJDK_TARGET_CPU), aarch64)
63+
CROSS_COMPILATION_FILENAMES := sleefinline_advsimd.h sleefinline_sve.h
64+
EXTRA_CROSS_OPTIONS := -DSLEEF_ENFORCE_SVE=TRUE
65+
else ifeq ($(OPENJDK_TARGET_CPU), riscv64)
66+
CROSS_COMPILATION_FILENAMES := sleefinline_rvvm1.h
67+
EXTRA_CROSS_OPTIONS := -DSLEEF_ENFORCE_RVVM1=TRUE
68+
else
69+
$(error Unsupported platform)
70+
endif
71+
CROSS_COMPILATION_SRC_FILES := $(addprefix $(SLEEF_CROSS_BUILD_DIR)/include/, \
72+
$(CROSS_COMPILATION_FILENAMES))
73+
74+
ifeq ($(TOOLCHAIN_TYPE), clang)
75+
SLEEF_TOOLCHAIN_TYPE := llvm
76+
else
77+
SLEEF_TOOLCHAIN_TYPE := $(TOOLCHAIN_TYPE)
78+
endif
79+
80+
SLEEF_CMAKE_FILE := toolchains/$(OPENJDK_TARGET_CPU)-$(SLEEF_TOOLCHAIN_TYPE).cmake
81+
82+
# We need to run CMake twice, first using it to configure the build, and then
83+
# to actually build; and we need to do this twice, once for a native build
84+
# and once for the cross-compilation build.
85+
86+
$(eval $(call SetupExecute, sleef_native_config, \
87+
INFO := Configuring native sleef build, \
88+
OUTPUT_DIR := $(SLEEF_NATIVE_BUILD_DIR), \
89+
COMMAND := cd $(SLEEF_SOURCE_DIR) && $(CMAKE) -S . -B \
90+
$(SLEEF_NATIVE_BUILD_DIR), \
91+
))
92+
93+
TARGETS := $(sleef_native_config)
94+
95+
$(eval $(call SetupExecute, sleef_native_build, \
96+
INFO := Building native sleef, \
97+
DEPS := $(sleef_native_config), \
98+
OUTPUT_DIR := $(SLEEF_NATIVE_BUILD_DIR), \
99+
COMMAND := cd $(SLEEF_SOURCE_DIR) && $(CMAKE) --build \
100+
$(SLEEF_NATIVE_BUILD_DIR) -j, \
101+
))
102+
103+
TARGETS := $(sleef_native_build)
104+
105+
$(eval $(call SetupExecute, sleef_cross_config, \
106+
INFO := Configuring cross-compiling sleef build, \
107+
DEPS := $(sleef_native_build), \
108+
OUTPUT_DIR := $(SLEEF_CROSS_BUILD_DIR), \
109+
COMMAND := cd $(SLEEF_SOURCE_DIR) && $(CMAKE) -S . -B \
110+
$(SLEEF_CROSS_BUILD_DIR) \
111+
-DCMAKE_C_COMPILER=$(CC) \
112+
-DCMAKE_TOOLCHAIN_FILE=$(SLEEF_CMAKE_FILE) \
113+
-DNATIVE_BUILD_DIR=$(SLEEF_NATIVE_BUILD_DIR) \
114+
-DSLEEF_BUILD_INLINE_HEADERS=TRUE \
115+
$(EXTRA_CROSS_OPTIONS), \
116+
))
117+
118+
TARGETS := $(sleef_cross_config)
119+
120+
$(eval $(call SetupExecute, sleef_cross_build, \
121+
INFO := Building cross-compiling sleef, \
122+
DEPS := $(sleef_cross_config), \
123+
OUTPUT_DIR := $(SLEEF_NATIVE_BUILD_DIR), \
124+
COMMAND := cd $(SLEEF_SOURCE_DIR) && $(CMAKE) --build \
125+
$(SLEEF_CROSS_BUILD_DIR) -j, \
126+
))
127+
128+
TARGETS := $(sleef_cross_build)
129+
130+
$(CROSS_COMPILATION_SRC_FILES): $(sleef_cross_build)
131+
132+
# Finally, copy the generated files (and one needed static file) into our
133+
# target directory.
134+
135+
$(eval $(call SetupCopyFiles, copy_static_sleef_source, \
136+
FILES := $(SLEEF_SOURCE_DIR)/src/common/misc.h, \
137+
DEST := $(SLEEF_TARGET_DIR), \
138+
))
139+
140+
TARGETS := $(copy_static_sleef_source)
141+
142+
$(eval $(call SetupCopyFiles, copy_generated_sleef_source, \
143+
FILES := $(CROSS_COMPILATION_SRC_FILES), \
144+
DEST := $(SLEEF_TARGET_DIR), \
145+
))
146+
147+
TARGETS := $(copy_generated_sleef_source)
148+
149+
################################################################################
150+
151+
all: $(TARGETS)
152+
153+
.PHONY: all default

make/autoconf/basic_tools.m4

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_TOOLS],
9999
UTIL_REQUIRE_SPECIAL(FGREP, [AC_PROG_FGREP])
100100
101101
# Optional tools, we can do without them
102+
UTIL_LOOKUP_PROGS(CMAKE, cmake)
102103
UTIL_LOOKUP_PROGS(DF, df)
103104
UTIL_LOOKUP_PROGS(GIT, git)
104105
UTIL_LOOKUP_PROGS(NICE, nice)

make/autoconf/spec.gmk.template

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -719,6 +719,7 @@ CCACHE := @CCACHE@
719719
# CD is going away, but remains to cater for legacy makefiles.
720720
CD := cd
721721
CHMOD := @CHMOD@
722+
CMAKE := @CMAKE@
722723
CODESIGN := @CODESIGN@
723724
CP := @CP@
724725
CUT := @CUT@

src/hotspot/cpu/aarch64/aarch64.ad

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1244,7 +1244,7 @@ source %{
12441244

12451245
// r27 is not allocatable when compressed oops is on and heapbase is not
12461246
// zero, compressed klass pointers doesn't use r27 after JDK-8234794
1247-
if (UseCompressedOops && (CompressedOops::ptrs_base() != nullptr)) {
1247+
if (UseCompressedOops && (CompressedOops::base() != nullptr)) {
12481248
_NO_SPECIAL_REG32_mask.Remove(OptoReg::as_OptoReg(r27->as_VMReg()));
12491249
_NO_SPECIAL_REG_mask.Remove(OptoReg::as_OptoReg(r27->as_VMReg()));
12501250
_NO_SPECIAL_PTR_REG_mask.Remove(OptoReg::as_OptoReg(r27->as_VMReg()));

src/hotspot/cpu/aarch64/compressedKlass_aarch64.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,5 +129,7 @@ void CompressedKlassPointers::initialize(address addr, size_t len) {
129129
address const end = addr + len;
130130
_base = (end <= (address)unscaled_max) ? nullptr : addr;
131131

132-
_range = end - _base;
132+
// Remember the Klass range:
133+
_klass_range_start = addr;
134+
_klass_range_end = addr + len;
133135
}

0 commit comments

Comments
 (0)