Skip to content

Commit 333a817

Browse files
committed
LOONGSON: LoongArch port
Squashed commit of the following: commit f5fc626c7bf02b5cf0352bc939d6f005240d8a54 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Feb 20 14:23:12 2025 +0800 Update (2025.02.20, 2nd) 35595: LA port of 8343957: Rename ObjectMonitor::owner_from() and JavaThread::_lock_id 30872: LA port of 8337511: Implement JEP 404: Generational Shenandoah (Experimental) commit 6eb2f122db5f9bd1423695e503fba4b2d14e7e63 Merge: 789b0389d5d5 85fedbf66802 Author: aoqi <aoqi@loongson.cn> Date: Thu Feb 20 14:11:06 2025 +0800 Merge commit 789b0389d5d5b7f5029fb8f839092fc65cbb6706 Merge: ff1ced876412 8485cb1ca1fa Author: aoqi <aoqi@loongson.cn> Date: Thu Feb 20 14:06:52 2025 +0800 Merge commit ff1ced876412e1961b742554843da1d97ecb729b Author: loongson-jvm <jvm@loongson.cn> Date: Thu Feb 20 10:36:46 2025 +0800 Update (2025.02.20) 35624: Fix 8342449 SigCgt wrong value 35637: Fix assert(is_simm(si12, 12)) 35539: LA port of 8340453: C2: Improve encoding of LoadNKlass for compact headers 35538: LA port of 8334431: C2 SuperWord: fix performance regression due to store-to-load-forwarding failures 35537: LA port of 8344250: Obsolete the DontYieldALot flag commit 83c901455d9baf32c58793f82ead4ae36b763bc6 Merge: 08c4e0d352fa 4fbf272017d2 Author: aoqi <aoqi@loongson.cn> Date: Thu Feb 20 09:58:17 2025 +0800 Merge commit 08c4e0d352fa3f812ead98388c4fc8ac1672d46b Author: loongson-jvm <jvm@loongson.cn> Date: Wed Feb 19 10:28:08 2025 +0800 Update (2025.02.19, 2nd) 22096: [c2] Delete unused adjust for null_check position 35535: LA port of 8338383: Implement JEP 491: Synchronize Virtual Threads without Pinning 31020: LA port of 8305895: Implement JEP 450: Compact Object Headers (Experimental) 35534: LA port of 8343343: Misc crash dump improvements on more platforms after JDK-8294160 commit 5762af5df044da2d3d14c1024582fc42d2416d37 Merge: 86b098a34235 95a00f8a1880 Author: aoqi <aoqi@loongson.cn> Date: Wed Feb 19 10:17:02 2025 +0800 Merge commit 86b098a34235cf7b6330af763fe325f800cdccfd Author: loongson-jvm <jvm@loongson.cn> Date: Wed Feb 19 10:14:07 2025 +0800 Update (2025.02.19) 35480: Fix the bugs related to LoongArch architecture support in JVMCI commit 0c961cd7a748f28a015f2bfe2a2ea34bd02e700c Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 19:33:19 2025 +0800 Update (2025.01.09, 7th) 35428: LA port of 8331341: secondary_super_cache does not scale well: C1 and interpreter commit cb803584970f299a4136447e419b3d3c9401cd20 Merge: 43e6cf4c08a7 c0e6c3b93c0d Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 9 17:20:48 2025 +0800 Merge commit 43e6cf4c08a7086a639263d4780779989ea77abc Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 16:45:19 2025 +0800 Update (2025.01.09, 6th) 35426: LA port of 8341692: Implement JEP 490: ZGC: Remove the Non-Generational Mode 35425: LA port of 8343115: SkipIfEqual class is not used after JDK-8335946 35424: LA port of 8340796: Use a consistent order when loading cxq and EntryList commit 00cc8144fca10d7227f2828207b62dee53dab991 Merge: ab29ab274262 388d44fbf012 Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 9 16:23:23 2025 +0800 Merge commit ab29ab274262beeb98e8f0c7bc90cb29f6d56718 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 16:21:31 2025 +0800 Update (2025.01.09, 5th) 35422: LA port of 8338126: C2 SuperWord: VectorCastF2HF / vcvtps2ph produces wrong results for vector length 2 commit e6f45a7e14afb39f02b9aa3c6cbef624299d90c4 Merge: de0e86e526d9 8bcd4920f1b0 Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 9 16:07:34 2025 +0800 Merge commit de0e86e526d930a269b5eed6dee88856de3d8db0 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 16:06:21 2025 +0800 Update (2025.01.09, 4th) 35420: LA port of 8340313: Crash due to invalid oop in nmethod after C1 patching 35419: LA port of 8329597: C2: Intrinsify Reference.clear 35418: LA port of 8341784: Refactor TypeVect to use a BasicType instead of a const Type* 35417: LA port of 8341619: C2: remove unused StoreCM node commit 381d291510be4b22cb98a7d9ffcfb3c5cf792dcc Merge: 207daa8db3f1 7a64fbbb9292 Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 9 15:21:29 2025 +0800 Merge commit 207daa8db3f1952666f088f5cd044722b0bb1379 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 12:08:45 2025 +0800 Update (2025.01.09, 3rd) 35414: LA port of 8338379: Accesses to class init state should be properly synchronized 35413: LA port of 8341413: Stop including osThread_os.hpp in the middle of the OSThread class 35412: LA port of 8341451: Remove C2HandleAnonOMOwnerStub 35411: LA port of 8337753: Target class of upcall stub may be unloaded commit 2f03188266557f957499cd82611f6fce9a11dcbb Merge: 0f8518fa76e0 e7c5bf45f753 Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 9 11:54:36 2025 +0800 Merge commit 0f8518fa76e07f2629fd87e0b9cbed0f573bcbe4 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 11:25:41 2025 +0800 Update (2025.01.09, 2nd) 35121: LA port of 8334060: Implementation of Late Barrier Expansion for G1 35409: LA port of 8320318: ObjectMonitor Responsible thread 35408: LA port of 8340181: Shenandoah: Cleanup ShenandoahRuntime stubs 35407: LA port of 8340576: Some JVMCI flags are inconsistent commit ce585cf51a4275d2e807bcd5bd7b9e3e49c8fd05 Merge: 5e90ff1225ae 19642bd3833f Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 9 11:18:43 2025 +0800 Merge commit 5e90ff1225ae127e6aa762824266812cee09753f Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 9 11:17:16 2025 +0800 Update (2025.01.09) 35266: Fix the bug of Deoptimization stub for Graal commit c63bf99081b745d08388a0f31612d02a3f55e98a Author: loongson-jvm <jvm@loongson.cn> Date: Fri Nov 1 09:10:09 2024 +0800 Update (2024.10.31, 3rd) 34982: LA port of 8340353: Remove CompressedOops::ptrs_base 34981: LA port of 8337674: ZGC: Consistent style for naming private static constants commit 5ff8053902edcc0a59a6371129279e528a92f4cd Merge: 8c74573cd931 10da2c21a19a Author: aoqi <aoqi@loongson.cn> Date: Thu Oct 31 15:03:27 2024 +0800 Merge commit 8c74573cd9315d5f12b9aea789cec18b907a49ec Author: loongson-jvm <jvm@loongson.cn> Date: Thu Oct 31 15:01:53 2024 +0800 Update (2024.10.31, 2nd) 34933: LA port of 8339849: Enumerate opto and C1 stubs, generate enums, names, fields and generator calls commit 26a2aeec9603bcf587051d4c9119650e5917cd3f Merge: 16a55e1d2d35 c58fbef05eac Author: aoqi <aoqi@loongson.cn> Date: Thu Oct 31 11:58:03 2024 +0800 Merge commit 16a55e1d2d3525910be54ee7aef5184928981111 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Oct 31 09:29:00 2024 +0800 Update (2024.10.31) 34906: LA port of 8339307: jhsdb jstack could not trace FFM upcall frame 34905: LA port of 8339466: Enumerate shared stubs and define static fields and names via declarations commit cb3e630255fd80e6e8ea79d3c2f3eea6fe70aa4e Merge: cada856724a6 3c40afa59c93 Author: aoqi <aoqi@loongson.cn> Date: Thu Oct 31 09:08:45 2024 +0800 Merge commit cada856724a64d7fc158df2b9284f59d07cfeb7d Author: loongson-jvm <jvm@loongson.cn> Date: Wed Oct 30 23:10:37 2024 +0800 Update (2024.10.30, 3rd) 34869: Builds fail after JDK-8339120 34868: LA port of 8339298: Remove unused function declaration poll_for_safepoint 34867: LA port of 8339112: Move JVM Klass flags out of AccessFlags commit 8d792615e3fe1387662fb8e9192ce8ff4f9ad0de Merge: c3f6630f6a3e 28de44da7187 Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 30 16:56:40 2024 +0800 Merge commit c3f6630f6a3eb0ba38b2f57475d19afa361df03d Author: loongson-jvm <jvm@loongson.cn> Date: Wed Oct 30 16:18:22 2024 +0800 Update (2024.10.30, 2nd) 34958: LoongArch64: Generate comments in -XX:+PrintInterpreter to link to source code 34840: New Object to ObjectMonitor mapping commit 31f70b031b4d33f7deaa95d4d6fa66dfbe1a4807 Merge: c023acf03a00 ff59532ddd30 Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 30 15:43:26 2024 +0800 Merge commit c023acf03a00f49e21721a2fa0afbcce6065ab5d Author: loongson-jvm <jvm@loongson.cn> Date: Wed Oct 30 15:30:32 2024 +0800 Update (2024.10.30) 34775: LightweightSynchronizer::exit asserts, missing lock 34774: LA port of 8337987: Relocate jfr and throw_exception stubs from StubGenerator to SharedRuntime 34773: LA port of 8315884: New Object to ObjectMonitor mapping commit ee0a8958181e217eb3970d4893a1ae53324233f2 Merge: 81d1b442e632 1d05989bb4bc Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 30 14:19:44 2024 +0800 Merge commit 81d1b442e632be0cf69ca7cc41399a70f11c24e3 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Oct 18 09:30:15 2024 +0800 Update (2024.10.17, 2nd) 34730: LA port of 8337958: Out-of-bounds array access in secondary_super_cache 34729: LA port of 8337702: Use new ForwardExceptionNode to call StubRoutines::forward_exception_entry() commit 6a14da82e8e36c19713dbbdf6378f0b57753151d Merge: 08fe37d1bfc1 4c344335fe0a Author: aoqi <aoqi@loongson.cn> Date: Thu Oct 17 17:23:32 2024 +0800 Merge commit 08fe37d1bfc1d2456af8467b3d208e168f09506f Author: loongson-jvm <jvm@loongson.cn> Date: Thu Oct 17 16:45:40 2024 +0800 Update (2024.10.17) 34266: loongson/30358/TestNewObjectWithFinal.java failed after 8300148 34403: secondary_super_cache does not scale well commit b83ecfa41ecf087939fa45ad6325f32778987c21 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Sep 12 20:44:30 2024 +0800 Update (2024.09.12) 34646: LA port of 8337887: [JVMCI] Clarify jdk.vm.ci.code.Architecture.getName javadoc 34645: LA port of 8337654: Relocate uncommon trap stub from SharedRuntime to OptoRuntime 34644: LA port of 8335059: Consider renaming ClassLoaderData::keep_alive commit 36bf35541bdb33534487c6700e1c84a69594dd44 Merge: 547611c92ba4 16df9c33e9bb Author: aoqi <aoqi@loongson.cn> Date: Thu Sep 12 20:26:10 2024 +0800 Merge commit 547611c92ba49f46f0ffb3978b3bfab56baccc01 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 11 10:11:37 2024 +0800 Update (2024.09.11, 5th) 34617: LA port of 8333354: ubsan: frame.inline.hpp:91:25: and src/hotspot/share/runtime/frame.inline.hpp:88:29: runtime error: member call on null pointer of type 'const struct SmallRegisterMap' 34616: LA port of 8336685: Shenandoah: Remove experimental incremental update mode commit 968cad9b081d38496afa7680512d12d7cb5a364f Merge: 9b041b759f02 e4c7850c1778 Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 10:04:48 2024 +0800 Merge commit 9b041b759f0269feb1bbf2e24f2cfb40c3e93188 Merge: c0da7b9471f5 0898ab7f7496 Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 09:47:07 2024 +0800 Merge commit c0da7b9471f5f64c3b9430df6b0364a9591eb886 Merge: a134dd5b9f38 21a6cf848da0 Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 09:46:18 2024 +0800 Merge commit a134dd5b9f385d5a8085cd4c80de7f75dd72c769 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 11 09:45:04 2024 +0800 Update (2024.09.11, 4th) 34505: LA port of 8335946: DTrace code snippets should be generated when DTrace flags are enabled commit c6c97fcb359989703f3271fad840065727741988 Merge: e2c3fb208a59 b363de8c9fbf Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 09:41:56 2024 +0800 Merge commit e2c3fb208a595a3e031c770dcfa0c57497846904 Merge: 5af05a0cbee0 38a578d547f3 Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 09:40:31 2024 +0800 Merge commit 5af05a0cbee000c8acc66b5a05f8373e94197a39 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 11 09:23:13 2024 +0800 Update (2024.09.11, 3rd) 34426: LA port of 8333300: [JVMCI] add support for generational ZGC commit 8fe596aa3c29ae5e81064979cca51bbb8127db6c Merge: 6ed470a87498 46b817b7499e Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 09:19:38 2024 +0800 Merge commit 6ed470a874987e7b7a09ba2b53752198a9ebc2c4 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 11 09:17:49 2024 +0800 Update (2024.09.11, 2nd) 34418: Fix containsFuzzy commit da9b31c3b1c260bf7811596b16311c3f80a41255 Merge: 06c09bee995c c6f3bf4bd614 Author: aoqi <aoqi@loongson.cn> Date: Wed Sep 11 09:13:53 2024 +0800 Merge commit 06c09bee995ceb6c62dab7b17a71f01743c8c93c Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 11 09:09:45 2024 +0800 Update (2024.09.11) 34375: LA port of 8329141: Obsolete RTM flags and code 34374: LA port of 8333649: Allow different NativeCall encodings commit 3745ddf854f9fe78ed51e786e45cb186c45b0faf Merge: 7451c69e974c 301bd7085654 Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 10 19:11:01 2024 +0800 Merge commit 7451c69e974ce3646a963a833202a272f6d9b4c9 Merge: f3efcca46339 d8af58941b5d Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 10 14:52:27 2024 +0800 Merge commit f3efcca4633912f8b3d296a235c8d0ba2a95912e Author: loongson-jvm <jvm@loongson.cn> Date: Tue Sep 10 14:49:47 2024 +0800 Update (2024.09.10, 3rd) 34357: LA port of 8319822: Use a linear-time algorithm for assert_different_registers() 34356: LA port of 8333226: Regressions 2-3% in Compress ZGC after 8331253 commit 5fb095b94e973dd8a66d8141c1252b08f41056c4 Merge: 9610f7b7e490 054362abe040 Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 10 14:46:02 2024 +0800 Merge commit 9610f7b7e4901c695715cb1ff541851856cd79cf Author: loongson-jvm <jvm@loongson.cn> Date: Tue Sep 10 14:43:35 2024 +0800 Update (2024.09.10, 2nd) 34351: LA port of 8331921: Hotspot assembler files should use common logic to setup exported functions 34350: LA port of 8330694: Rename 'HeapRegion' to 'G1HeapRegion' 34349: LA port of 8332082: Shenandoah: Use consistent tests to determine when pre-write barrier is active 34348: LA port of 8332676: Remove unused BarrierSetAssembler::incr_allocated_bytes commit a40bd5f47a1ac15d1bb9c171646c3cabc1fb20d5 Merge: 84b4f23ff8c4 789ac8b27686 Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 10 14:24:55 2024 +0800 Merge commit 84b4f23ff8c4172198aca10b79257af47cbe72cd Merge: 85bdd4fc625b 9d332e659133 Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 10 14:22:10 2024 +0800 Merge commit 85bdd4fc625b26739c990b9ed3e63de878233046 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Sep 10 14:18:30 2024 +0800 Update (2024.09.10) 34245: LA port of 8302850: Implement C1 clone intrinsic that reuses arraycopy code for primitive arrays 34244: LA port of 8331862: Remove split relocation info implementation commit 4ca499f2ce82ff6613e23ae7a3cf2efe43025275 Merge: 1fe76a3e985e 2f10a316ff0c Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 10 14:09:48 2024 +0800 Merge commit 1fe76a3e985e616c137499c0d49841d4b62b8322 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Jul 1 16:53:14 2024 +0800 Update (2024.07.01) 34304: 8333722: Fix CompilerDirectives for non-compiler JVM variants 33726: Link time optimization breaks build: no match insn: amcas_db_d $r12,$r25,$r15 33624: Reconstruct the StrComp agenda 34183: nmethod entry barrier is missing in LoongArch64TestAssembler.java commit aca0f3a86f3789cc041521a62600a348f5270567 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jun 27 15:23:13 2024 +0800 Update (2024.06.27) 34182: LA port of 8329258: TailCall should not use frame pointer register for jump target 34180: LA port of 8331418: ZGC: generalize barrier liveness logic commit 30370ccdfdf10c862525448f1823970a8c6559e5 Merge: 870a9d206df7 964d60892eec Author: aoqi <aoqi@loongson.cn> Date: Thu Jun 27 11:10:50 2024 +0800 Merge commit 870a9d206df7afb916b3753b320efc87f09ce46f Author: loongson-jvm <jvm@loongson.cn> Date: Wed Jun 26 21:23:52 2024 +0800 Update (2024.06.26) 34152: LA port of 8327647: Occasional SIGSEGV in markWord::displaced_mark_helper() for SPECjvm2008 sunflow 34151: LA port of 8330685: ZGC: share barrier spilling logic commit ccee50a66e105044121bba597bf28fb28176b5d2 Merge: 89cc42d31f66 e833bfc8ac61 Author: aoqi <aoqi@loongson.cn> Date: Wed Jun 26 15:51:02 2024 +0800 Merge commit 89cc42d31f667f8747ad99c6209e0e6c9f1e27b0 Author: loongson-jvm <jvm@loongson.cn> Date: Fri May 24 16:31:17 2024 +0800 Update (2024.05.24, 2nd) 34129: LA port of 8330388: Remove invokedynamic cache index encoding 34128: LA port of 8330821: Rename UnsafeCopyMemory 34127: LA port of 8329331: Intrinsify Unsafe::setMemory 34126: LA port of 8318650: Optimized subword gather for x86 targets. 34125: LA port of 8320522: Remove code related to `RegisterFinalizersAtInit` commit d619b194da9070b3da54d47ba1a350df52261275 Merge: 7b754bd2b283 87e864bf21d7 Author: aoqi <aoqi@loongson.cn> Date: Fri May 24 16:00:24 2024 +0800 Merge commit 7b754bd2b2836e66341e9df23eb73560ae28030d Author: loongson-jvm <jvm@loongson.cn> Date: Fri May 24 10:17:54 2024 +0800 Update (2024.05.24) 34102: LA port of 8241503: C2: Share MacroAssembler between mach nodes during code emission 34101: LA port of 8327743: JVM crash in hotspot/share/runtime/javaThread.cpp - failed: held monitor count should be equal to jni: 0 != 1 34100: LA port of 8325469: Freeze/Thaw code can crash in the presence of OSR frames 34099: LA port of 8330049: Remove unused AbstractLinker::linkerByteOrder commit dac54b6245fd9a41a0c4fcf7a0c1388c9654449c Merge: 0b96de8372d4 706b421ccaff Author: aoqi <aoqi@loongson.cn> Date: Fri May 24 10:01:21 2024 +0800 Merge commit 0b96de8372d4687fb2cdefa716eea74bb3fa4b8d Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 22 14:16:00 2024 +0800 Update (2024.05.22) 34028: LA port of 8329628: Additional changes after JDK-8329332 34027: LA port of 8329655: Cleanup KlassObj and klassOop names after the PermGen removal 34026: LA port of 8329332: Remove CompiledMethod and CodeBlobLayout classes commit 3ead9e44c63727a00c02f36c7408db07a76f9811 Merge: 5c8ddd12ff2d b04b3047ff5c Author: aoqi <aoqi@loongson.cn> Date: Wed May 22 11:57:50 2024 +0800 Merge commit 5c8ddd12ff2d8c93b0cffbc36738552169ed1e9c Author: loongson-jvm <jvm@loongson.cn> Date: Fri May 17 16:37:27 2024 +0800 Update (2024.05.17, 3rd) 33988: LA port of 8236736: Change notproduct JVM flags to develop flags commit dc8e2691e114e3da7841150a893898dd6ce8f46c Merge: adb89a07f5f4 8efd7aa6c167 Author: aoqi <aoqi@loongson.cn> Date: Fri May 17 15:23:33 2024 +0800 Merge commit adb89a07f5f422fab62f552a0b60230ec464cfaa Merge: 0706aa60ec36 d580bcf956d6 Author: aoqi <aoqi@loongson.cn> Date: Fri May 17 15:22:26 2024 +0800 Merge commit 0706aa60ec36e44b3781f17f68840699a599444f Merge: 6ef8d2eff03f 481473efce9f Author: aoqi <aoqi@loongson.cn> Date: Fri May 17 15:21:13 2024 +0800 Merge commit 6ef8d2eff03fe2260f68716a755d4eb6e72d2161 Author: loongson-jvm <jvm@loongson.cn> Date: Fri May 17 13:44:32 2024 +0800 Update (2024.05.17, 2nd) 33983: LA port of 8327361: Update some comments after JDK-8139457 commit 60a109ffdb4f22cedfbf6edb9553e13fa438c473 Merge: 245f00a4f2af 6f2676dc5f09 Author: aoqi <aoqi@loongson.cn> Date: Fri May 17 12:02:49 2024 +0800 Merge commit 245f00a4f2afa4aafa85040b5a8df9872e80eb76 Author: loongson-jvm <jvm@loongson.cn> Date: Fri May 17 09:21:15 2024 +0800 Update (2024.05.17) 33979: LA port of 8319796: Recursive lightweight locking 33978: LA port of 8326983: Unused operands reported after JDK-8326135 commit 39a0e97aa6e73a9991476de23fefea3757a6cffc Merge: 74359a49b7a2 f54e59835492 Author: aoqi <aoqi@loongson.cn> Date: Fri May 17 09:00:10 2024 +0800 Merge commit 74359a49b7a2f87c88a78915b1fa0f12681c55cd Author: loongson-jvm <jvm@loongson.cn> Date: Thu May 16 23:59:24 2024 +0800 Update (2024.05.16, 3rd) 28100: Remove cbuf parameter from trampoline_call 34106: merge three or more continuous membars to one 34070: Fix stack_offset exceeding 12 bits limit 34093: Occasional SIGSEGV in markWord::displaced_mark_helper() for SPECjvm2008 sunflow 33980: Fix generate__kernel_rem_pio2 34058: LA port of 8322122: Enhance generation of addresses commit eb1419c7b50d27cf61669093556f9e98124b8f8e Author: loongson-jvm <jvm@loongson.cn> Date: Thu May 16 20:06:56 2024 +0800 Update (2024.05.16, 2nd) 33976: LA port of 8017234: Hotspot should stop using mapfiles 33975: LA port of 8325082: Rename headers named 'heapRegion*' of G1 33974: LA port of 8322962: Upcall stub might go undetected when freezing frames 33973: LA port of 8139457: Relax alignment of array elements commit 929e69635ada57cf5d73d21d4a736847ec60aa49 Merge: 06d4121617d7 998d0baab0fd Author: aoqi <aoqi@loongson.cn> Date: Thu May 16 19:03:57 2024 +0800 Merge commit 06d4121617d70f75de41dc3bd697a2ad526980a3 Merge: 939c2781bf5f cc1e216eb9e4 Author: aoqi <aoqi@loongson.cn> Date: Thu May 16 18:51:26 2024 +0800 Merge commit 939c2781bf5fa611056d34cbf871933093df3c74 Author: loongson-jvm <jvm@loongson.cn> Date: Thu May 16 18:48:41 2024 +0800 Update (2024.05.16) 33970: LA port of 8322630: Remove ICStubs and related safepoints 33969: LA port of 8320302: compiler/arguments/TestC1Globals.java hits SIGSEGV in ContinuationEntry::set_enter_code commit e1f89355730862a270ab8e2ab64e0ab688e86338 Merge: 55273d178c4b 8cb9b479c529 Author: aoqi <aoqi@loongson.cn> Date: Thu May 16 14:36:05 2024 +0800 Merge commit 55273d178c4b8944ac358f11b1b02823cc527e7b Merge: e12af20f7401 1fb9e3d67422 Author: aoqi <aoqi@loongson.cn> Date: Thu May 16 14:28:03 2024 +0800 Merge commit e12af20f7401e4b6fb53ded94a180cb3575af29a Author: loongson-jvm <jvm@loongson.cn> Date: Fri Apr 19 09:54:29 2024 +0800 Update (2024.04.19) 33719: LA port of 8324750: C2: rename Matcher methods using "superword" -> "autovectorization" commit 4899eccc32df7722325e55eb2517978ef3792003 Merge: 51e1335326e7 5b9b176c6729 Author: aoqi <aoqi@loongson.cn> Date: Fri Apr 19 09:30:56 2024 +0800 Merge commit 51e1335326e7a4469524e234192cd80e110c6de7 Author: Ao Qi <6079963+theaoqi@users.noreply.github.com> Date: Fri Apr 19 09:10:50 2024 +0800 Update (2024.04.18) 30720: Implement ReverseBytesV 30708: Revert TestBitShuffleOpers.java 30719: Revert TestReverseBitsVector.java 30716: Revert TestNumberOfContinuousZeros.java commit 1d9a94c3ee1cbaaf4e6b11de0a427741b54c9404 Merge: 30ea13e2b576 6d36eb78ad78 Author: aoqi <aoqi@loongson.cn> Date: Mon Jan 29 17:18:50 2024 +0800 Merge commit 30ea13e2b576b5501f5738d07b4e3c7050ffe3c0 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Jan 29 17:17:59 2024 +0800 Update (2024.01.29, 2nd) 33571: Fix -Werror=parentheses in assembler_loongarch.hpp commit 8ed87db68391aa379a1030b054b384406e0f20ae Merge: 9529d19daf49 ff8cc268fdaa Author: aoqi <aoqi@loongson.cn> Date: Mon Jan 29 17:06:17 2024 +0800 Merge commit 9529d19daf495c9506b8d41edb1e963c33067cef Author: loongson-jvm <jvm@loongson.cn> Date: Mon Jan 29 17:03:24 2024 +0800 Update (2024.01.29) 33504: LA port of 8322294: Cleanup NativePostCallNop 33503: Eliminate -Wparentheses warnings in LoongArch code 33502: LA port of 8237842: Separate definitions for default cache line and padding sizes commit 44a653039b063d9afa5a952b0b4605b53de6ccfb Merge: b23c5bc20d96 26de9e247a6e Author: aoqi <aoqi@loongson.cn> Date: Mon Jan 29 16:47:51 2024 +0800 Merge commit b23c5bc20d96974bf2e4f97c9182073c45406467 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Jan 26 14:16:51 2024 +0800 Update (2024.01.26) 33568: Reinvigorate the irrational beq(R0, R0, done) instructions 33473: Reanimate the MacroAssembler::test_bit() 33311: Implement VectorizedHashCode 33362: Vacuum the uncommon_trap amend Rename createJavaProcessBuilder commit 682903a33b111b9c25d9c7ba36afe92cb419afc1 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Jan 11 10:44:40 2024 +0800 Update (2024.01.11) 33436: LA port of 8320276: Improve class initialization barrier in TemplateTable::_new 33435: LA port of 8320275: assert(_chunk->bitmap().at(index)) failed: Bit not set at index commit 309b67785c80c450cfe347a2fe824ecf431835ad Merge: 8c886ca1fd01 13c11487f712 Author: aoqi <aoqi@loongson.cn> Date: Thu Jan 11 09:48:08 2024 +0800 Merge commit 8c886ca1fd018f6a6dd4f5a8a80cffcee7743434 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Dec 28 20:48:50 2023 +0800 Update (2023.12.28, 3rd) 33329: LA port of 8316197: Make tracing of inline cache available in unified logging commit b26dcc7616e0da64fad31a40a5123c858f722f0b Merge: 7d7b0810ea36 05745e3f1d56 Author: aoqi <aoqi@loongson.cn> Date: Thu Dec 28 18:59:18 2023 +0800 Merge commit 7d7b0810ea361f8623df5878f7224eab838e8002 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Dec 28 18:56:10 2023 +0800 Update (2023.12.28, 2nd) 33287: LA port of 8319577: x86_64 AVX2 intrinsics for Arrays.sort methods (int, float arrays) commit c2dd79bfa4832f6fbceaeb50af68968eba7b3b66 Merge: 920e9447e45c cf948548c390 Author: aoqi <aoqi@loongson.cn> Date: Thu Dec 28 17:55:49 2023 +0800 Merge commit 920e9447e45cdbfeecfbd2ce40832f0c4b965f52 Merge: c13a1e7e23c8 519ecd352a66 Author: aoqi <aoqi@loongson.cn> Date: Thu Dec 28 17:54:28 2023 +0800 Merge commit c13a1e7e23c8024e674bed2c8baca5560536e0b9 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Dec 28 17:52:29 2023 +0800 Update (2023.12.28) 33231: LA port of 8311906: Improve robustness of String constructors with mutable array inputs 33230: LA port of 8321269: Require platforms to define DEFAULT_CACHE_LINE_SIZE 33229: LA port of 8318586: Explicitly handle upcall stub allocation failure commit 47b2742151965bfe073fba5fc22d2ae7a708a1dd Merge: 9a352ac20d7c 86f9b3f52a06 Author: aoqi <aoqi@loongson.cn> Date: Thu Dec 28 17:11:20 2023 +0800 Merge commit 9a352ac20d7cac03bec16ac11d40b8ca04cd67c0 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Dec 27 16:33:58 2023 +0800 Update (2023.12.27, 2nd) 33272: Implement ensureMaterializedForStackWalk intrinsic 32033: Add vector intrinsics for unsigned (zero extended) casts 33177: Implement poly1305 intrinsic 33257: java/lang/Math/RoundTests.java failed with -Xcomp after 32796 33134: 8320959: jdk/jfr/event/runtime/TestShutdownEvent.java crash with CONF=fastdebug -Xcomp commit 64e0649960dc97dc2cd749bff7ddfb383d56232f Author: loongson-jvm <jvm@loongson.cn> Date: Wed Dec 27 14:10:06 2023 +0800 Update (2023.12.27) 33161: LA port of 8320368: Per-CPU optimization of Klass range reservation 33160: LA port of 8261837: SIGSEGV in ciVirtualCallTypeData::translate_from 33159: LA port of 8318776: Require supports_cx8 to always be true commit cf24236701f741475c1d959ce574dc7c8e14288f Merge: 114dfbe23765 ea6e92ed0d6d Author: aoqi <aoqi@loongson.cn> Date: Wed Dec 27 11:06:38 2023 +0800 Merge commit 114dfbe237659796aebe97d80fdf7109c0e0a30a Author: loongson-jvm <jvm@loongson.cn> Date: Wed Dec 13 15:01:07 2023 +0800 Update (2023.12.13) 31769: [6000] Support AM{SWAP/ADD}{_DB}.{B/H} and AMCAS{_DB}.{B/H/W/D} insns commit 8ff0b925e2a896ffa2c5132164fee0c9f99eeec6 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Dec 11 14:26:20 2023 +0800 Update (2023.12.11, 4th) 33080: Fix byte_array_inflate vld is out of range 33031: Refresh the CountPositives macro 33068: Vectorize StringCompareToDifferentLength 24527: Fix a typo for invokeinterface in 8604 32871: Supplement 32674 commit f542478893b783b884b240c9b26a884720c83ba3 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Dec 11 11:48:36 2023 +0800 Update (2023.12.11, 3rd) 33126: LA port of 8315801: [PPC64] JNI code should be more similar to the Panama implementation 33125: LA port of 8320272: Make method_entry_barrier address shared commit dc2a89f279a6c370442360c66b69ec5af9f3b6f8 Merge: 24c61465f526 e47cf611c949 Author: aoqi <aoqi@loongson.cn> Date: Mon Dec 11 11:39:39 2023 +0800 Merge commit 24c61465f526f2a1aec404da3b7370efe08b4f5a Author: loongson-jvm <jvm@loongson.cn> Date: Mon Dec 11 11:37:48 2023 +0800 Update (2023.12.11, 2nd) 33113: LA port of 8301997: Move method resolution information out of the cpCache 33112: LA port of 8254693: Add Panama feature to pass heap segments to native code 33111: LA port of 8309893: Integrate ReplicateB/S/I/L/F/D nodes to Replicate node commit 767281758a5cdb34b420756b87dda5261f7a92cf Merge: 9c5d0f9cb5a0 ffa35d8cf181 Author: aoqi <aoqi@loongson.cn> Date: Mon Dec 11 11:28:29 2023 +0800 Merge commit 9c5d0f9cb5a0f1ecad33e438bf006be65ef26224 Merge: a0102944eba5 8555e0f6c40c Author: aoqi <aoqi@loongson.cn> Date: Mon Dec 11 11:24:58 2023 +0800 Merge commit a0102944eba528e0e0fc23152ea41b41f2b94373 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Dec 11 11:23:05 2023 +0800 Update (2023.12.11) 32995: 8319268: Build failure with GCC8.3.1 after 8313643 commit d24b593c0a8fe3b769520da05b97f6bf6ae0e87a Merge: ffb601f37b05 d354141aa191 Author: aoqi <aoqi@loongson.cn> Date: Mon Dec 11 11:05:48 2023 +0800 Merge commit ffb601f37b05a66516228ed2f4fc444a338cd457 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Dec 8 19:05:19 2023 +0800 Update (2023.12.08, 3rd) 32922: LA port of 8318609: Upcall stubs should be smaller 32921: LA port of 8318598: FFM stylistic cleanups commit f3b1a7d43c7b02981f4d604e463b60e68aac2f7d Merge: ee7bb53b125f d96f38b80c16 Author: aoqi <aoqi@loongson.cn> Date: Fri Dec 8 18:42:24 2023 +0800 Merge commit ee7bb53b125f7058eed62f97805fb2d9622b385a Author: loongson-jvm <jvm@loongson.cn> Date: Fri Dec 8 18:31:48 2023 +0800 Update (2023.12.08, 2nd) 32841: LA port of 8316309: AArch64: VMError::print_native_stack() crashes on Java native method frame 32840: LA port of 8312522: Implementation of Foreign Function & Memory API commit 57190e4499db995a7e9add4b0c2a97caab0ae5c4 Merge: 09ae79f2af71 6fc35142315f Author: aoqi <aoqi@loongson.cn> Date: Fri Dec 8 18:07:35 2023 +0800 Merge commit 09ae79f2af713b50952d014c220a193a57d172dd Author: loongson-jvm <jvm@loongson.cn> Date: Fri Dec 8 13:32:02 2023 +0800 Update (2023.12.08) 29494: Fix assert(_succ != current) failed: invariant 32796: Rethinking the ties-to-positive round mode 32874: Amend 30985: Insert acqure membar for load-exclusive with acquire to fix typo 32611: Remove unnecessary initialize constant pool for native wrapper 24942: 8316563: test tools/jpackage/linux/LinuxResourceTest.java fails on CentOS Linux release 8.5.2111 and Fedora 27 32758: Multiple uses of register t7 commit 536dc475033ac812b5f5e745e837a67d1d07c2e2 Merge: a46503fdd6be fb4098ff1a7c Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 25 11:51:23 2023 +0800 Merge commit a46503fdd6beb1e0f8f32c41d85c88d3f18a50c9 Merge: a81b30124bc5 3105538de556 Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 25 11:49:45 2023 +0800 Merge commit a81b30124bc5ae69a328b0d1bd3dde53522e6437 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Oct 25 11:48:47 2023 +0800 Update (2023.10.25) 32674: LA port of 8315966: Relativize initial_sp in interpreter frames commit 8516cb00abad6a511f50643defe79950cf0f1b03 Merge: facdf9c3825a edcc559f0936 Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 25 11:09:04 2023 +0800 Merge commit facdf9c3825a2ca3286eacd5821f3b862fe1a133 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Oct 24 16:07:30 2023 +0800 Update (2023.10.24) 29823: Fix ShenandoahGC cmpxchg_oop register be clobbered issue 32688: Revamp the SIMD string compress routines 32603: Mux generate_fill for the ClearArray node 32600: Remove duplicate definitions after 8315020 commit 65ba6b8760e43664b438bcd0f440dfa3210cf205 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Sep 22 17:04:51 2023 +0800 Update (2023.09.22, 2nd) 32616: LA port of 8316179: Use consistent naming for lightweight locking in MacroAssembler commit f50b22371c9941c9c5c714f3938ff6de3728bf8d Merge: 9da6dbd81168 c04c9ea3615a Author: aoqi <aoqi@loongson.cn> Date: Fri Sep 22 16:45:11 2023 +0800 Merge commit 9da6dbd811687f4107c208272096bcc7af59098a Author: loongson-jvm <jvm@loongson.cn> Date: Fri Sep 22 16:41:59 2023 +0800 Update (2023.09.22) 32609: LA port of 8308869: C2: use profile data in subtype checks when profile has more than one class 32608: LA port of 8292692: Move MethodCounters inline functions out of method.hpp commit 1cc71396058dc6f2bf8f441f39c3a9c514a0f078 Merge: 2a9d294f8f3d ce93d27fe572 Author: aoqi <aoqi@loongson.cn> Date: Fri Sep 22 15:54:27 2023 +0800 Merge commit 2a9d294f8f3d9dd280bb1a3da10edba3aff9ee93 Merge: 675233f6ce7d 024133b089d9 Author: aoqi <aoqi@loongson.cn> Date: Fri Sep 22 09:30:36 2023 +0800 Merge commit 675233f6ce7d70dd2ea585732157269505f10499 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Sep 22 09:25:37 2023 +0800 Update (2023.09.21, 2nd) 32358: LA port of 8310596: Utilize existing method frame::interpreter_frame_monitor_size_in_bytes() commit 8f36a1d3c614b84cd77b5f700de93fdaac9e5633 Merge: da3e94b9ac5b cb3f9680d35f Author: aoqi <aoqi@loongson.cn> Date: Thu Sep 21 16:47:20 2023 +0800 Merge commit da3e94b9ac5bf0905967e4be829d5a45287f8a70 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Sep 21 16:04:09 2023 +0800 Update (2023.09.21) 32275: LA port of 8313419: Template interpreter produces no safepoint check for return bytecodes 32274: LA port of 8308984: Relativize last_sp (and top_frame_sp) in interpreter frames commit 7add7032965c0141ae3b25aeb9d46b999d18ec04 Merge: af148e2a4bdd 68815d54c199 Author: aoqi <aoqi@loongson.cn> Date: Thu Sep 21 14:37:50 2023 +0800 Merge commit af148e2a4bdd85f2480d7e0fb67882fea37ed4ce Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 20 17:30:47 2023 +0800 Update (2023.09.20, 4th) 29793: Expurgating call_stub_entry 32506: Vectorize the C2 node string_inflate to imporve the score of CharBufferAppend.appendStringBuilder 32519: Fix for 31967 set default MaxGCPauseMillis 32419: Vectorized StubGenerator::generate_fill() 31967: [G1GC] Set default MaxGCPauseMillis=150ms commit 65c465a69f994cee12c3b2fe76d22b46afbad8ae Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 20 15:43:36 2023 +0800 Update (2023.09.20, 3rd) 32446: Fix the error of assert(v_align > 1) when MaxVectorSize is 4 or 8 30382: LA port of 8292591: Experimentally add back barrier-less Java thread transitions 32377: Optimize VectorMaskFirstTrue 32328: implement the intrinsic of ShiftRightImplWork 32365: Support comparison of DecodeN with zero 24480: [LA][C2] Eliminate unnecessary CastP2X 32304: Decompose the rem calculation in the DivMod nodes commit ccd2390c5692a7876fe3d8d5b0d78cfd5af59ee1 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 20 10:56:59 2023 +0800 Update (2023.09.20, 2nd) 32268: [shenandoah] Use indirect memory operand for cmpxchg 32266: [C2] Effect TEMP_DEF res for get_and_set/add 32163: The size of is_wide_vector should be greater than 8 bytes commit e7e23ca02462166bc9071b6c32526d8ce7868243 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 20 01:22:37 2023 +0800 Update (2023.09.20) 32186: LA port of 8314020: Print instruction blocks in byte units 32187: LA port of 8308340: C2: Idealize Fma nodes commit d3ab2926b24687628e0847c81fc6a0b5de25a9ed Merge: 9fb163dd7154 b32d6411c406 Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 19 22:52:46 2023 +0800 Merge commit 9fb163dd715456bda7f32606494b933b4ab7d2f5 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Sep 19 22:06:01 2023 +0800 Update (2023.09.19) 30718: Implement PopulateIndex 30721: Implement SignumF/D and SignumVF/D commit 9044c55ad689ed27a0005bcc6be5e4a9917a364b Author: loongson-jvm <jvm@loongson.cn> Date: Wed Aug 30 02:27:49 2023 +0800 Update (2023.08.30, 2nd) 32093: Add CMoveD-CmpN node 32079: LA port of 8313796: AsyncGetCallTrace crash on unreadable interpreter method pointer commit 5ea14bbabf70b2df9a7ea7dd891728b1bb0813aa Merge: b61da164c07d 242a2e63df0d Author: aoqi <aoqi@loongson.cn> Date: Wed Aug 30 02:20:31 2023 +0800 Merge commit b61da164c07df95a5f97a4f22fa6cd338a57781a Author: loongson-jvm <jvm@loongson.cn> Date: Wed Aug 30 02:14:48 2023 +0800 Update (2023.08.30) 31974: LA port of 8301996: Move field resolution information out of the cpCache 31973: LA port of 8313023: Return value corrupted when using CCS + isTrivial (mainline) 30508: Add 32, 64bit vectorAPI of HF2F, F2HF commit c6a84e26577276d4bdbf3e74d20501d30ebdc140 Merge: 0d1279d430b7 cff25dd57420 Author: aoqi <aoqi@loongson.cn> Date: Wed Aug 30 02:04:13 2023 +0800 Merge commit 0d1279d430b747b4760d0b31b3abc2ffeae336c7 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Aug 15 16:02:52 2023 +0800 Update (2023.08.15) 31942: Implement ExtractV 31838: 32 and 64 bits vector implementation 31751: Use base+disp for cmpxchg 31927: Typo in xBarrierSetAssembler_loongarch.cpp 30985: Insert acqure membar for load-exclusive with acquire 31863: [C2] Effect TEMP_DEF res for cmpxchg commit cffa896525b26e72647cc5471cc7f4179b5b66be Author: loongson-jvm <jvm@loongson.cn> Date: Thu Aug 3 10:51:07 2023 +0800 Update (2023.08.03) 31878: LA port of 8312077: Fix signed integer overflow, final part commit 0e1b12c2c54be857c3e64e07da5cd05a68b2fe88 Merge: 4fafebb9e2b8 a9d21c61fb12 Author: aoqi <aoqi@loongson.cn> Date: Thu Aug 3 09:11:26 2023 +0800 Merge commit 4fafebb9e2b898a9efeb8c2e8f90a4d08278bf25 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Aug 2 18:33:52 2023 +0800 Update (2023.08.02, 2nd) 31782: Fix the failure of TestIRMatching.java 31743: LA port of 8312014: [s390x] TestSigInfoInHsErrFile.java Failure 31742: LA port of 8303134: JFR: Missing stack trace during chunk rotation stress 31741: LA port of 8311870: Split CompressedKlassPointers from compressedOops.hpp commit 974f9566da0c1f3900fb5bc8d545b7dc4cb5d8bb Merge: f6140fc3f93e 71cac8ce47b6 Author: aoqi <aoqi@loongson.cn> Date: Wed Aug 2 18:25:21 2023 +0800 Merge commit f6140fc3f93efbbb336baa13ad96b70b309a1e2c Merge: 71f3c2f26dd3 aac903dbfb7d Author: aoqi <aoqi@loongson.cn> Date: Wed Aug 2 18:18:06 2023 +0800 Merge commit 71f3c2f26dd3783c7696d3526e01f8373dc824a6 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Aug 2 18:03:41 2023 +0800 Update (2023.08.02) 23520: 8311631: When multiple users run tools/jpackage/share/LicenseTest.java, Permission denied for writing /var/tmp/*.files 11541: Prevent load reorder of VarHandle::getOpaque 31269: Ordering memory barriers testcases 31601: revert some copyright update by loongson commit 7c6946815f3f973f207a74db96f02fb254ae1721 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Jul 12 13:49:33 2023 +0800 Update (2023.07.12, 5th) 31534: LA port of 8309209: C2 failed "assert(_stack_guard_state == stack_guard_reserved_disabled) failed: inconsistent state" 31535: LA port of 8310948: Fix ignored-qualifiers warning in Hotspot commit 9f9450325f110b8cde77251e0f1b8094394af6de Merge: c95fd6335699 66d273652161 Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 10:42:17 2023 +0800 Merge commit c95fd63356998d565d8ae890671dff2530fda9ea Author: loongson-jvm <jvm@loongson.cn> Date: Wed Jul 12 10:38:05 2023 +0800 Update (2023.07.12, 4th) 31556: Supplement missing nodes about CMoveF/D 31469: LA port of 8310459: [BACKOUT] 8304450: [vectorapi] Refactor VectorShuffle implementation 31470: LA port of 8309685: Fix -Wconversion warnings in assembler and register code 31471: LA port of 8310906: Fix -Wconversion warnings in runtime, oops and some code header files. commit 24440db24e1d1ffb43e603213b0f2efb0f9ac236 Merge: e1380b44707b ded137073ac1 Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 10:24:34 2023 +0800 Merge commit e1380b44707b530d6baf110a8e55aa7abb1c4f0f Author: loongson-jvm <jvm@loongson.cn> Date: Wed Jul 12 10:16:48 2023 +0800 Update (2023.07.12, 3rd) 31414: LA port of 8264899: C1: -XX:AbortVMOnException does not work if all methods in the call stack are compiled with C1 and there are no exception handlers 31413: LA port of 8310225: Reduce inclusion of oopMapCache.hpp and generateOopMap.hpp commit 1380eeeeeeebee7817eaa92ecdaad46a2395bced Merge: d9071d6b5c70 3be50da636b9 Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 09:43:44 2023 +0800 Merge commit d9071d6b5c70141f3f99883099d02beda900752a Author: loongson-jvm <jvm@loongson.cn> Date: Wed Jul 12 09:42:05 2023 +0800 Update (2023.07.12, 2nd) 31343: LA port of 8309390: [JVMCI] improve copying system properties into libgraal 31330: LA port of 8309878: Reduce inclusion of resolvedIndyEntry.hpp commit 1d3da2b7556a97181600c8ed1a62099b94a905d4 Merge: 0d5560222b7c 181845ae4615 Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 09:29:43 2023 +0800 Merge commit 0d5560222b7c652f3d37fb772b26beac68e62ad8 Merge: c9db257b97a3 6f492e800597 Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 09:28:30 2023 +0800 Merge commit c9db257b97a359149830cde531553406efea3cb2 Merge: cb1e5b4eac6d bb377b26730f Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 09:25:31 2023 +0800 Merge commit cb1e5b4eac6d18f47d1c0b04520a710bb9f46c4c Author: loongson-jvm <jvm@loongson.cn> Date: Wed Jul 12 09:14:39 2023 +0800 Update (2023.07.12) 31170: Fix conflicting types for MIN2() 31168: LA port of 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) 31096: LA port of 8306302: C2 Superword fix: use VectorMaskCmp and VectorBlend instead of CMoveVF/D commit 0d6d37ffbd7546de518db0cd6b79d5e0aae49b6c Merge: a9a328454038 a46b5acc1535 Author: aoqi <aoqi@loongson.cn> Date: Wed Jul 12 09:05:12 2023 +0800 Merge commit a9a3284540382a9732562086773bdba9ce0a2376 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Jul 11 21:25:29 2023 +0800 Update (2023.07.11, 3rd) 31095: LA port of 8308276: Change layout API to work with bytes, not bits 31094: LA port of 8308396: Fix offset_of conversion warnings in runtime code commit 631ba629d3235fe708715bdaf424d428d0ab3369 Merge: 17f06b46b2fc 2836c34b64e4 Author: aoqi <aoqi@loongson.cn> Date: Tue Jul 11 21:20:08 2023 +0800 Merge commit 17f06b46b2fc631466f46f7731b72fabc37bbf76 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Jul 11 21:16:58 2023 +0800 Update (2023.07.11, 2nd) 28384: LA initial port zgc_generational 31041: LA port of 8307806: Rename Atomic::fetch_and_add and friends 31000: LA port of 8296469: Instrument VMError::report with reentrant iteration step for register and stack printing commit df6ef8779bb0a2d3c23752512b7f31bfc45aeb1f Merge: 39064671e6e7 6d4782bc737d Author: aoqi <aoqi@loongson.cn> Date: Tue Jul 11 21:00:38 2023 +0800 Merge commit 39064671e6e76b6cb7f63d67d5a6a918fd08de80 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Jul 11 20:24:53 2023 +0800 Update (2023.07.11) 31106: sun/net/InetAddress/nameservice/simple/DefaultCaching.java fail with -Xcomp 29329: LA port of 8295257: Remove implicit noreg temp register arguments in aarch64 MacroAssembler 29198: LA port of 8293351: Add second tmp register to aarch64 BarrierSetAssembler::load_at 31364: [LoongArch64] zero build failed after #25064 28984: 8309778: java/nio/file/Files/CopyAndMove.java fails when using second test directory commit 4d10bd7c3649ace0a7185a87588c159781fc0ab0 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Jul 3 20:52:35 2023 +0800 Update (2023.07.03, 2nd) 31295: Provide information when hitting a HaltNode 30973: serviceability/jvmti/events/FramePop/framepop02/framepop02.java crash with -Xcomp 25064: Enable NUMA Mode on LoongArch by Default 31006: Fix VectorInsert commit d8469292155afc80cdfec4b9bff8f99c8f892931 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Jul 3 17:10:02 2023 +0800 Update (2023.07.03) 23738: [C2][LA] enable misaligned vectors store/load 29261: LA intrinsics for compareUnsigned method in Integer and Long 29201: LA port of 8283186: Explicitly pass a third temp register to MacroAssembler::store_heap_oop 31010: LA port of 8304915: Create jdk.internal.util.Architecture enum and apply 30943: LA port of 8303588: [JVMCI] make JVMCI source directories conform with standard layout 30829: LA port of 8291555: Implement alternative fast-locking scheme 30358: Add support for ordering memory barriers 30777: testlibrary_tests/ir_framework/tests/TestDFlags.java fail with VerifyOops 30895: LA port of 8302815: Use new Math.clamp method in core libraries 30894: TestArrayStructs.java fails after JDK-8303604 commit 3c44296f256e13d0a493bd5f5ab32b15c535937f Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 17 17:23:08 2023 +0800 Update (2023.05.17, 6th) 30909: LA port of 8299229: [JVMCI] add support for UseZGC commit c048dcee59ed8c916451ddf50663532b767103bd Merge: 94c578a4abd9 cc9f7ad9ce33 Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 16:41:52 2023 +0800 Merge commit 94c578a4abd933a0f724107c41d697606345652f Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 17 15:54:54 2023 +0800 Update (2023.05.17, 5th) 30892: LA port of 8300197: Freeze/thaw an interpreter frame using a single copy_to_chunk() call 30891: LA port of 8303002: Reject packed structs from linker 30882: LA port of 8304265: Implementation of Foreign Function and Memory API (Third Preview) commit 9d971d73cc978016253b7d67e35631a411478249 Merge: a385354ab2c1 705ad7d829dc Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 15:20:11 2023 +0800 Merge commit a385354ab2c11572ba886c8e8deba06e0da29982 Merge: 03cec09a3344 750bece0c2f3 Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 14:23:59 2023 +0800 Merge commit 03cec09a33441c9585f4f24e5f149545b2102d07 Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 17 14:21:33 2023 +0800 Update (2023.05.17, 4th) 30733: Replace NULL with nullptr in cpu/loongarch 30732: LA port of 8304450: [vectorapi] Refactor VectorShuffle implementation commit 5182941e10d2186859f3c6fed23a26eecaaa92c2 Merge: c101669e1325 781d6d793ad4 Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 14:13:04 2023 +0800 Merge commit c101669e13250bef642cbd2d0698a6f240a0069b Merge: f0cc6f93e2ce b9bdbe9ab392 Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 14:10:02 2023 +0800 Merge commit f0cc6f93e2ce1cdd68674467aa5c0226d0838bf0 Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 17 14:08:20 2023 +0800 Update (2023.05.17, 3rd) 30570: LA port of 8241613: Suspicious calls to MacroAssembler::null_check(Register, offset) commit 768cc60a85eebc62e58198bec4580351c2dc902e Merge: cb62ea38ff1a 35cb303a2c0c Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 14:02:19 2023 +0800 Merge commit cb62ea38ff1aaefdab84c098ee64f76c09f2c7c0 Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 17 13:57:48 2023 +0800 Update (2023.05.17, 2nd) 30554: LA port of 8301995: Move invokedynamic resolution information out of ConstantPoolCacheEntry 30553: LA port of 8304301: Remove the global option SuperWordMaxVectorSize 30552: LA port of 8231349: Move intrinsic stubs generation to compiler runtime initialization code commit 979f8145bce1cabbe2bda757d1fbc386d74af19a Merge: 22b4029554e2 69152c3b1849 Author: aoqi <aoqi@loongson.cn> Date: Wed May 17 13:51:03 2023 +0800 Merge commit 22b4029554e24a987a4d1a942446b100edc358e8 Author: loongson-jvm <jvm@loongson.cn> Date: Wed May 17 13:47:11 2023 +0800 Update (2023.05.17) 30647: Optimize temporary register usage of vectorNode 30702: remove test TestOptoLoopAlignment.java for LoongArch 28218: Fix skiping JTReg tests 30520: UseActiveCoresMP should be able to be turned off on a single-core machine 30278: 8305944: assert(is_aligned(ref, HeapWordSize)) failed: invariant 30039: Fix VectorTest beacause of 8292289 30396: CMoveVF, CMoveVD support 30457: Use membars when accessing volatile _thread_state 30400: LA port of 8232365: Implementation for JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector commit 45e0892b4f05bd3f3e5cf1a37c561b72378ac179 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Mar 31 00:44:54 2023 +0800 Update (2023.03.31) 30412: LA port of 8303684: Lift upcall sharing mechanism to AbstractLinker (mainline) 30411: LA port of 8304283: Modernize the switch statements in jdk.internal.foreign 30410: LA port of 8303154: Investigate and improve instruction cache flushing during compilation commit 22c4d45d470ecd08cf6eeb578b4497bbe99d3168 Merge: 195bfabc6bf1 75168eaca3f6 Author: aoqi <aoqi@loongson.cn> Date: Fri Mar 31 00:34:41 2023 +0800 Merge commit 195bfabc6bf12b7390d7462e95375f5ce263eb10 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Mar 30 18:40:42 2023 +0800 Update (2023.03.30) 30302: LA port of 8303022: "assert(allocates2(pc)) failed: not in CodeBuffer memory" When linking downcall handle 30301: LA port of 8303415: Add VM_Version::is_intrinsic_supported(id) 30300: LA port of 8300783: Consolidate byteswap implementations 30298: update HF2F and F2HF because of 8302976 commit 80eef3d822e3c5dfb47499b6d3893262f875f015 Merge: 4af4bbbd79e5 2b81faeb3514 Author: aoqi <aoqi@loongson.cn> Date: Thu Mar 30 18:32:07 2023 +0800 Merge commit 4af4bbbd79e50caf22b9fc643f30ae72d9c713c1 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Mar 29 10:21:40 2023 +0800 Update (2023.03.29) 30284: adjust VectorCast 30281: auto-vectorized FP16 conversions 29722: Sanitise c2i and i2c adapters 30285: ArrayCopy: Align destination address 30258: ShiftCntV should be cloned commit e4167bdabae56527e3dd13b161679f9f01bf54e4 Merge: 67a5ed9ca8fe 02875e77fd01 Author: aoqi <aoqi@loongson.cn> Date: Tue Mar 28 21:31:58 2023 +0800 Merge commit 67a5ed9ca8feedf5857aa60aac627d8faad92c7a Merge: 331190ddfe90 6e19387f2994 Author: aoqi <aoqi@loongson.cn> Date: Tue Mar 28 21:22:01 2023 +0800 Merge commit 331190ddfe90ef200f1bfae789a0939b8916db72 Author: loongson-jvm <jvm@loongson.cn> Date: Tue Mar 28 21:19:39 2023 +0800 Update (2023.03.28) (#32) 30225: remove a Chinese punctuation 30090: [C2] Fix typo for umodL_Reg_Reg instruction 29982: [C2] Add CountedLoopEnd_reg_imm12_short and branchConIU_reg_imm12_short commit a9b8a191abb4e45cd13f158be7edb6c6be2c63d4 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Mar 10 11:47:53 2023 +0800 Update (2023.03.10) 29885: LA port of 8302369: Reduce the stack size of the C1 compiler 29991: LA port of 8302070: Factor null-check into load_klass() calls commit faa0fd47ec2e86f6392a1820d34fc17335a3cf13 Merge: 6dfb473129b4 fcaf87140832 Author: aoqi <aoqi@loongson.cn> Date: Fri Mar 10 11:03:40 2023 +0800 Merge commit 6dfb473129b40c34bf40e6cc211ad3a4cf5ff935 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Mar 9 19:21:40 2023 +0800 Update (2023.03.09) 29860: LA port of 8300255: Introduce interface for GC oop verification in the assembler commit ce2e63078ecc8a5f980ecc28aaff3d38bf1a396f Merge: 801977174018 861e302011bb Author: aoqi <aoqi@loongson.cn> Date: Thu Mar 9 19:12:28 2023 +0800 Merge commit 801977174018fe72cc026c9012d7fe5259bd8fdb Author: loongson-jvm <jvm@loongson.cn> Date: Wed Mar 8 17:11:40 2023 +0800 Update (2023.03.08) 29783: LA port of 8151413: os::allocation_granularity/page_size and friends return signed values 29782: Replace NULL with nullptr in os_cpu/linux_loongarch commit b1a571e3c25d4bd4e31598305b0451dcaadc7bae Merge: ea5c4ce6d12a 638d612c6b7c Author: aoqi <aoqi@loongson.cn> Date: Wed Mar 8 16:58:24 2023 +0800 Merge commit ea5c4ce6d12a2e5ab42f9e21d2f7666c97f47bcf Author: loongson-jvm <jvm@loongson.cn> Date: Tue Mar 7 18:52:48 2023 +0800 Update (2023.03.07) 29715: LA port of 8301346: Remove dead emit_entry_barrier_stub definition 29714: LA port of 8299795: Relativize locals in interpreter frames 29713: LA port of 8298400: Virtual thread instability when stack overflows commit 19bcbbdeab96861a17a2dd18d7cb1a3c77b99114 Merge: c4910f7778f9 bc750f70f2ac Author: aoqi <aoqi@loongson.cn> Date: Tue Mar 7 14:11:55 2023 +0800 Merge commit c4910f7778f972a295eb59ab407db829a2ecde7f Author: loongson-jvm <jvm@loongson.cn> Date: Mon Mar 6 17:50:45 2023 +0800 Update (2023.03.06) 29691: LA port of 8299089: Instrument global jni handles with tag to make them distinguishable 29690: LA port of 8299312: Clean up BarrierSetNMethod commit 4fa2aca9ad426c4025718e02db04720ee4f75ec4 Merge: 285fa375cdca 910dffea867e Author: aoqi <aoqi@loongson.cn> Date: Mon Mar 6 11:56:37 2023 +0800 Merge commit 285fa375cdcaeeccb38e0352decbb1466f850747 Author: loongson-jvm <jvm@loongson.cn> Date: Sat Mar 4 00:16:28 2023 +0800 Update (2023.03.04) 29677: LA port of 8283740: C1: Convert flag TwoOperandLIRForm to a constant on all platforms commit 600ee96754061c1ab2ac64db79aca811d071ce91 Merge: 69a5579fa297 3b374c015395 Author: aoqi <aoqi@loongson.cn> Date: Fri Mar 3 23:13:24 2023 +0800 Merge commit 69a5579fa2978d8af1351e73bf83149fc0df0d34 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Mar 3 23:08:15 2023 +0800 Update (2023.03.03) 29668: Delete VectorTest temporarily beacause of 8292289 29667: LA port of 8297036: Generalize C2 stub mechanism commit 990b191f6d8a2c7d10dd8808a2dbc8f19e5d91a1 Merge: b1b50903648e 8ff2928a04ae Author: aoqi <aoqi@loongson.cn> Date: Fri Mar 3 18:24:18 2023 +0800 Merge commit b1b50903648ec5ab61bd4123599bd87c3304e550 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Mar 2 15:41:52 2023 +0800 Update (2023.03.02) 29477: Implementation of Foreign Function and Memory API (Second Preview), Foreign linker implementation update 29476: LA port of 8295258: Add BasicType argument to AccessInternal::decorator_fixup 29475: LA port of 8297864: Dead code elimination commit 66295986d705340acfe2262fbea2a7d9a74a2e72 Merge: 04a81760c22e d562d3fcbe22 Author: aoqi <aoqi@loongson.cn> Date: Thu Mar 2 09:19:36 2023 +0800 Merge commit 04a81760c22e42220fdbc73e65b58990ea0c6849 Author: loongson-jvm <jvm@loongson.cn> Date: Thu Mar 2 09:14:17 2023 +0800 Update (2023.03.01) 29437: [C2] Add branch instruct with immI12 for reduce spill_code 28247: 8301942: java/net/httpclient/DigestEchoClientSSL.java fail with -Xcomp 29763: Draw out StubRoutines::la::_call_stub_compiled_return 29546: 8301737: java/rmi/server/UnicastRemoteObject/serialFilter/FilterUROTest.java fail with -Xcomp 29524: java/net/httpclient/* fail with -Xcomp 29539: jdk/incubator/concurrent/StructuredTaskScope/StructuredTaskScopeTest.java failed with -Xcomp 27906: Inline ActiveCoresMP commit 976153384fd739ac520affc8580a462cad418fa4 Author: loongson-jvm <jvm@loongson.cn> Date: Fri Feb 24 09:16:47 2023 +0800 Update (2023.02.23) 29453: Some cpu features use hwcap detect 29350: Use registers as temp space 29614: Take off redundant shift assemblers 28639: Clean up generate_exception_blob 28670: Define S8 as Rdispatch 21995: Refresh interp mdp helpers commit d81e2e17e6cbdb9e99a73285fc7d1adbf391c8aa Author: loongson-jvm <jvm@loongson.cn> Date: Fri Feb 3 00:12:43 2023 +0800 Update (2023.02.02) 29327: Should use RA as the ret_addr of remove_activation 20449: Redefine pipe_class for general and floating-point instructions 29124: ChaCha20 intrinsics 28999: Make intrinsic conversions between bit representations of half precision values and floats 29332: T_LONG/T_DOUBLE only needs to be load/store once commit 3562a2ae26b2a9ed472041952545b5874647f45e Author: loongson-jvm <jvm@loongson.cn> Date: Tue Jan 10 20:21:31 2023 +0800 Update (2023.01.10) 29064: LA port of 8296875: Generational ZGC: Refactor loom code 29063: LA port of 8286302: Port JEP 425 to PPC64 commit 88c7634356e05b66d50bbc3ede0e439cf89894ca Merge: ea8ad06f0d58 c68556916ae7 Author: aoqi <aoqi@loongson.cn> Date: Tue Jan 10 16:53:05 2023 +0800 Merge commit ea8ad06f0d58a5edddf26f274824e4d531ee6a0f Author: loongson-jvm <jvm@loongson.cn> Date: Mon Jan 9 19:13:33 2023 +0800 Update (2023.01.09) 28982: LA port of 8294591: Fix cast-function-type warning in TemplateTable commit 69df8f65b1a77ee0ccd6111eb1377e71e90ffc19 Merge: 9cfcce44fa29 09ac9eb56384 Author: aoqi <aoqi@loongson.cn> Date: Mon Jan 9 18:47:33 2023 +0800 Merge commit 9cfcce44fa294bd8563855856bd923912bb60777 Author: loongson-jvm <jvm@loongson.cn> Date: Sun Jan 8 16:04:09 2023 +0800 Update (2023.01.07) 29345: No need to preserve static regs in throw_exception stub frame 28537: forward_exception_entry should not require exception_pc on stack 29399: 8299439: java/text/Format/NumberFormat/CurrencyFormat.java fails for hr_HR 29389: Disable convi2l_type_required 29341: Since T4 can be alloced by C2, it must be saved 29259: Read in the bcp from S0 for the top level interpreter frames 29270: [C2] support {U}DivMod{I/L} 28756: Detach the temp argument of jump_from_interpreted 27559: Corrects the stack offset of SharedRuntime::verify_oop_args() 29266: Delete useless variables and function in class Address 28781: [LA] more configs of Arraycopy stress tests on LA commit 8a71defd58ff8e89827b53959d495f710b0344b6 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Nov 21 17:27:38 2022 +0800 Update (2022.11.21) 28892: LA port of 8296926: Sort include lines of files in the include/ directory 28891: LA port of 8295711: Rename ZBarrierSetAssembler::load_at parameter name from tmp_thread to tmp2 commit 2c88716bd1d21313eb4fda4a24b55fe0b892a8fe Merge: 1595b14d0216 2159170b414c Author: aoqi <aoqi@loongson.cn> Date: Mon Nov 21 09:34:12 2022 +0800 Merge commit 1595b14d0216be3b95886cbf57b0773dde15c757 Merge: 5146ebc8fde7 17e3412363bf Author: aoqi <aoqi@loongson.cn> Date: Sat Nov 19 12:09:12 2022 +0800 Merge commit 5146ebc8fde7938a1fc2852a76f3c35011eecdda Author: loongson-jvm <jvm@loongson.cn> Date: Sat Nov 19 10:58:27 2022 +0800 Update (2022.11.19) 28685: LA port of 8293939: Move continuation_enter_setup and friends 28677: Use correct register in fast_unlock() commit 5513c298dd917e47902215a78d6e51ed7469d564 Merge: 22836102e2de f84b0ad07c73 Author: aoqi <aoqi@loongson.cn> Date: Sat Nov 19 00:33:19 2022 +0800 Merge commit 22836102e2defc8b5187bbdcf6b43199aa7564d9 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Nov 9 09:15:01 2022 +0800 Update (2022.11.08) 28678: Fix a typo in PosixSignals::pd_hotspot_signal_handler 28665: [LA] useless code in share/utilities/macros.hpp commit 78e7701c59afaa22dca677ae7810030f6239b4bd Author: loongson-jvm <jvm@loongson.cn> Date: Wed Nov 2 20:56:33 2022 +0800 Update (2022.11.02) 26770: [Loom] Virtual Threads Running Stub Implementation 28316: [C2] Vitrual thread awared ThreadLocal node 28312: currentThread entry should be vthread awared 28548: Fix misleading-indentation warnings with minimal and core build 28061: Use Deoptimization::UnrollBlock::initial_info to get FP 28314: Misc crash dump improvements 28272: Delete b*_long() 28046: LA port of 8293035: Cleanup MacroAssembler::movoop code patching logic aarch64 riscv 27813: Inline cache buffer stub code size reduction 22999: Undefine SSR and SHIFT_count 28396: [C2] specify priority of register selection within phases of RA 28524: LA port of 8262074: Consolidate the default value of MetaspaceSize 28280: Implement isFinite intrinsic 28101: Implement isInfinite intrinsic commit c525a387d6b3cb8ea7992e37a08b27b4a6ec5518 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Nov 2 09:05:50 2022 +0800 update to jdk-20+20 28477: Fix misleading-indentation warnings 28476: Add some basic types for VectorLoadConst 28451: Fix error: the compiler can assume that the address of 'L' will never be NULL 28448: LA port of 8295457: Make the signatures of write barrier methods consistent 28452: 8294438: Fix misleading-indentation warnings in hotspot commit 3f4f4e800bdd409d87f848636de506abf438fa3d Merge: b2841814f841 388a56e4c427 Author: aoqi <aoqi@loongson.cn> Date: Tue Nov 1 22:41:06 2022 +0800 Merge commit b2841814f841986cc801d98bd723b486c0de9088 Merge: 9359d74ae110 760a260fbbe7 Author: aoqi <aoqi@loongson.cn> Date: Thu Oct 20 10:52:12 2022 +0800 Merge commit 9359d74ae110fbf44dd0187c6c965658fd9cc72c Merge: b85db91e32c3 0ec18382b743 Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 12 15:16:24 2022 +0800 Merge commit b85db91e32c3337615cc32cc3f48fd2ce24f35a6 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Oct 12 14:34:16 2022 +0800 Update to jdk-20+17 28197: LA port of 8294190: Incorrect check messages in SharedRuntime::generate_uncommon_trap_blob commit f54b42daa260b08d3c4fa9cba2eb58b026a5cd10 Merge: 5e1883741044 79ccc791f275 Author: aoqi <aoqi@loongson.cn> Date: Wed Oct 12 02:45:35 2022 +0800 Merge commit 5e1883741044241c15fbf97864d3cf2c2511d7ad Author: loongson-jvm <jvm@loongson.cn> Date: Wed Oct 12 02:39:26 2022 +0800 Update to jdk-20+16 28098: Minimal build failed with --disable-precompiled-headers 28096: LA port of 8293851: hs_err should print more stack in hex dump commit e922be0c95f121875ab83b257d1a8d715a894812 Merge: d6e3bedb165d 711e2520adf8 Author: aoqi <aoqi@loongson.cn> Date: Tue Oct 11 21:21:38 2022 +0800 Merge commit d6e3bedb165d338dbfddffb741f508d669c1e25f Author: loongson-jvm <jvm@loongson.cn> Date: Sat Oct 8 21:32:03 2022 +0800 Update (2022.10.08) 28194: Build fail after 28073 28073: Implementation of Foreign Function & Memory API 28027: Represent Registers as values commit c516cbea209df7abb279a36170ac55ee944cb482 Author: loongson-jvm <jvm@loongson.cn> Date: Sat Oct 1 19:39:51 2022 +0800 Update (2022.09.30) 28135: Add linux-loongarch64 to CheckedFeatures.notImplemented 28039: Fix typo for generate_method_entry_barrier and BarrierSetAssembler::nmethod_entry_barrier 28128: using Address reference as argument 28133: 8293657: sun/management/jmxremote/bootstrap/RmiBootstrapTest.java#id1 failed with "SSLHandshakeException: Remote host terminated the handshake" 27811: [LA][C2] xml.validation fatal error SIGSEGV with +UseFPUForSpilling 28051: LA port of 8293660: Fix frame::sender_for_compiled_frame frame size assert 27891: Deprecated assembler removal 27957: Mark stub code without alignment padding 27965: Remove unused CORE macro definition 28048: Enable hsdis for loongarch64 commit 90ce2058f0b390c12143c700433939bb47b5b12e Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 21 09:02:25 2022 +0800 Update to jdk-20+15 27984: LA port of 8293353: [BACKOUT] G1: Remove redundant is-marking-active checks in C1 barrier 27982: LA port of 8292584: assert(cb != __null) failed: must be with -XX:-Inline commit 1eb1c75e7a7f03ef107559f6a6574f034eab9f51 Merge: 0657abda79ed 95c7c556a353 Author: aoqi <aoqi@loongson.cn> Date: Tue Sep 20 21:16:25 2022 +0800 Merge commit 0657abda79ed54afa1fd5424b8d42289f1bdd9a2 Author: loongson-jvm <jvm@loongson.cn> Date: Mon Sep 19 17:56:00 2022 +0800 Update to jdk-20+13 27971: failed to build after JDK-8290025 27970: LA port of 8282410: Remove SA ProcDebugger support 27969: LA port of 8292890: Remove PrintTouchedMethodsAtExit and LogTouchedMethods 27968: LA port of 8290025: Remove the Sweeper commit 9b721b17d334bf4547f1b82e31d87bde24d2e3f4 Merge: 3e503002a909 0d51f63a2e95 Author: aoqi <aoqi@loongson.cn> Date: Mon Sep 19 11:28:17 2022 +0800 Merge commit 3e503002a909c8aa6ed1b2f35eccd7c5e1b8b6ea Author: loongson-jvm <jvm@loongson.cn> Date: Sat Sep 17 23:40:43 2022 +0800 Update to jdk-20+12 27637: LA port of 8292267: Clean up synchronizer.hpp commit aba80ba919f1127afbe9ae6043bc6ae19b48bda7 Merge: b7e3b3b65776 7b81a9c75d60 Author: aoqi <aoqi@loongson.cn> Date: Sat Sep 17 18:14:48 2022 +0800 Merge commit b7e3b3b65776a578cd62ca45cd0cfcdb6674ace9 Author: loongson-jvm <jvm@loongson.cn> Date: Sat Sep 17 09:42:52 2022 +0800 Update (2022.09.16) 27686: Fix encoding of Assembler::amadd_d 27605: C1: Skip RX in register saver commit 896b64e4c214f88dea61d4a093715acac92db883 Author: loongson-jvm <jvm@loongson.cn> Date: Wed Sep 14 21:17:04 2022 +0800 Update (2022.09.14) (#4) 27793: reduce some CodeBuffer size 27659: Make in_scratch_emit_size a virtual method 27683: Method activation needs more stack words 27583: [C2] Remove reg_class no_Ax_reg and no_T8_reg 27627: Basic type should be 64-bit supported 27751: MacroAssembler::argument_address should not blows arg_slot 25965: Allow larger CodeEntryAlignment 27824: Remove redundant ld_ptr/st_ptr assembler 27898: libsaproc: Fix compile errors on upstream …
1 parent 5175965 commit 333a817

File tree

304 files changed

+80875
-226
lines changed

Some content is hidden

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

304 files changed

+80875
-226
lines changed

make/autoconf/jdk-options.m4

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@
2323
# questions.
2424
#
2525

26+
#
27+
# This file has been modified by Loongson Technology in 2025. These
28+
# modifications are Copyright (c) 2025, Loongson Technology, and are made
29+
# available on the same license terms set forth above.
30+
#
31+
2632
################################################################################
2733
# Set the debug level
2834
# release: no debug information, all optimizations, no asserts.
@@ -723,6 +729,7 @@ AC_DEFUN([JDKOPT_ENABLE_DISABLE_CDS_ARCHIVE_COH],
723729
test "x$OPENJDK_TARGET_CPU" != "xppc64" &&
724730
test "x$OPENJDK_TARGET_CPU" != "xppc64le" &&
725731
test "x$OPENJDK_TARGET_CPU" != "xriscv64" &&
732+
test "x$OPENJDK_TARGET_CPU" != "xloongarch64" &&
726733
test "x$OPENJDK_TARGET_CPU" != "xs390x"; then
727734
AC_MSG_RESULT([no (compact object headers not supported for this platform)])
728735
AVAILABLE=false

make/autoconf/jvm-features.m4

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@
2323
# questions.
2424
#
2525

26+
#
27+
# This file has been modified by Loongson Technology in 2022. These
28+
# modifications are Copyright (c) 2020, 2022, Loongson Technology, and are made
29+
# available on the same license terms set forth above.
30+
#
31+
2632
################################################################################
2733
# Terminology used in this file:
2834
#
@@ -283,6 +289,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_JVMCI],
283289
AC_MSG_RESULT([yes])
284290
elif test "x$OPENJDK_TARGET_CPU" = "xriscv64"; then
285291
AC_MSG_RESULT([yes])
292+
elif test "x$OPENJDK_TARGET_CPU" = "xloongarch64"; then
293+
AC_MSG_RESULT([yes])
286294
else
287295
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
288296
AVAILABLE=false
@@ -300,7 +308,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_SHENANDOAHGC],
300308
if test "x$OPENJDK_TARGET_CPU_ARCH" = "xx86" || \
301309
test "x$OPENJDK_TARGET_CPU" = "xaarch64" || \
302310
test "x$OPENJDK_TARGET_CPU" = "xppc64le" || \
303-
test "x$OPENJDK_TARGET_CPU" = "xriscv64"; then
311+
test "x$OPENJDK_TARGET_CPU" = "xriscv64" || \
312+
test "x$OPENJDK_TARGET_CPU" = "xloongarch64"; then
304313
AC_MSG_RESULT([yes])
305314
else
306315
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
@@ -342,6 +351,13 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_ZGC],
342351
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
343352
AVAILABLE=false
344353
fi
354+
elif test "x$OPENJDK_TARGET_CPU" = "xloongarch64"; then
355+
if test "x$OPENJDK_TARGET_OS" = "xlinux"; then
356+
AC_MSG_RESULT([yes])
357+
else
358+
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
359+
AVAILABLE=false
360+
fi
345361
else
346362
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
347363
AVAILABLE=false

make/autoconf/platform.m4

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@
2323
# questions.
2424
#
2525

26+
#
27+
# This file has been modified by Loongson Technology in 2023. These
28+
# modifications are Copyright (c) 2018, 2023, Loongson Technology, and are made
29+
# available on the same license terms set forth above.
30+
#
31+
2632
# Support macro for PLATFORM_EXTRACT_TARGET_AND_BUILD.
2733
# Converts autoconf style CPU name to OpenJDK style, into
2834
# VAR_CPU, VAR_CPU_ARCH, VAR_CPU_BITS and VAR_CPU_ENDIAN.
@@ -545,11 +551,20 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
545551
HOTSPOT_$1_CPU=ppc_64
546552
elif test "x$OPENJDK_$1_CPU" = xppc64le; then
547553
HOTSPOT_$1_CPU=ppc_64
554+
elif test "x$OPENJDK_$1_CPU" = xloongarch; then
555+
HOTSPOT_$1_CPU=loongarch_64
556+
elif test "x$OPENJDK_$1_CPU" = xloongarch64; then
557+
HOTSPOT_$1_CPU=loongarch_64
548558
fi
549559
AC_SUBST(HOTSPOT_$1_CPU)
550560
551561
# This is identical with OPENJDK_*, but define anyway for consistency.
552562
HOTSPOT_$1_CPU_ARCH=${OPENJDK_$1_CPU_ARCH}
563+
# Override hotspot cpu definitions for LOONGARCH platforms
564+
if test "x$OPENJDK_$1_CPU" = xloongarch64; then
565+
HOTSPOT_TARGET_CPU_ARCH=loongarch
566+
fi
567+
553568
AC_SUBST(HOTSPOT_$1_CPU_ARCH)
554569
555570
# Setup HOTSPOT_$1_CPU_DEFINE
@@ -569,6 +584,8 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
569584
HOTSPOT_$1_CPU_DEFINE=PPC64
570585
elif test "x$OPENJDK_$1_CPU" = xriscv64; then
571586
HOTSPOT_$1_CPU_DEFINE=RISCV64
587+
elif test "x$OPENJDK_$1_CPU" = xloongarch64; then
588+
HOTSPOT_$1_CPU_DEFINE=LOONGARCH64
572589
573590
# The cpu defines below are for zero, we don't support them directly.
574591
elif test "x$OPENJDK_$1_CPU" = xsparc; then
@@ -581,8 +598,6 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
581598
HOTSPOT_$1_CPU_DEFINE=S390
582599
elif test "x$OPENJDK_$1_CPU" = xs390x; then
583600
HOTSPOT_$1_CPU_DEFINE=S390
584-
elif test "x$OPENJDK_$1_CPU" = xloongarch64; then
585-
HOTSPOT_$1_CPU_DEFINE=LOONGARCH64
586601
elif test "x$OPENJDK_$1_CPU" != x; then
587602
HOTSPOT_$1_CPU_DEFINE=$(echo $OPENJDK_$1_CPU | tr a-z A-Z)
588603
fi
Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
/*
2+
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
3+
* Copyright (c) 2015, 2023, Loongson Technology. All rights reserved.
4+
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5+
*
6+
* This code is free software; you can redistribute it and/or modify it
7+
* under the terms of the GNU General Public License version 2 only, as
8+
* published by the Free Software Foundation.
9+
*
10+
* This code is distributed in the hope that it will be useful, but WITHOUT
11+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13+
* version 2 for more details (a copy is included in the LICENSE file that
14+
* accompanied this code).
15+
*
16+
* You should have received a copy of the GNU General Public License version
17+
* 2 along with this work; if not, write to the Free Software Foundation,
18+
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19+
*
20+
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21+
* or visit www.oracle.com if you need additional information or have any
22+
* questions.
23+
*
24+
*/
25+
26+
#include "precompiled.hpp"
27+
#include "ci/ciMethod.hpp"
28+
#include "interpreter/interpreter.hpp"
29+
#include "oops/klass.inline.hpp"
30+
#include "runtime/frame.inline.hpp"
31+
32+
int AbstractInterpreter::BasicType_as_index(BasicType type) {
33+
int i = 0;
34+
switch (type) {
35+
case T_BOOLEAN: i = 0; break;
36+
case T_CHAR : i = 1; break;
37+
case T_BYTE : i = 2; break;
38+
case T_SHORT : i = 3; break;
39+
case T_INT : i = 4; break;
40+
case T_LONG :
41+
case T_VOID :
42+
case T_FLOAT :
43+
case T_DOUBLE : i = 5; break;
44+
case T_OBJECT :
45+
case T_ARRAY : i = 6; break;
46+
default : ShouldNotReachHere();
47+
}
48+
assert(0 <= i && i < AbstractInterpreter::number_of_result_handlers,
49+
"index out of bounds");
50+
return i;
51+
}
52+
53+
// How much stack a method activation needs in words.
54+
int AbstractInterpreter::size_top_interpreter_activation(Method* method) {
55+
const int entry_size = frame::interpreter_frame_monitor_size();
56+
57+
// total overhead size: entry_size + (saved fp thru expr stack
58+
// bottom). be sure to change this if you add/subtract anything
59+
// to/from the overhead area
60+
const int overhead_size =
61+
-(frame::interpreter_frame_initial_sp_offset) + entry_size;
62+
63+
const int stub_code = frame::entry_frame_after_call_words;
64+
assert(method != nullptr, "invalid method");
65+
const int method_stack = (method->max_locals() + method->max_stack()) *
66+
Interpreter::stackElementWords;
67+
return (overhead_size + method_stack + stub_code);
68+
}
69+
70+
// asm based interpreter deoptimization helpers
71+
int AbstractInterpreter::size_activation(int max_stack,
72+
int temps,
73+
int extra_args,
74+
int monitors,
75+
int callee_params,
76+
int callee_locals,
77+
bool is_top_frame) {
78+
// Note: This calculation must exactly parallel the frame setup
79+
// in AbstractInterpreterGenerator::generate_method_entry.
80+
81+
// fixed size of an interpreter frame:
82+
int overhead = frame::sender_sp_offset -
83+
frame::interpreter_frame_initial_sp_offset;
84+
// Our locals were accounted for by the caller (or last_frame_adjust
85+
// on the transition) Since the callee parameters already account
86+
// for the callee's params we only need to account for the extra
87+
// locals.
88+
int size = overhead +
89+
(callee_locals - callee_params)*Interpreter::stackElementWords +
90+
monitors * frame::interpreter_frame_monitor_size() +
91+
temps* Interpreter::stackElementWords + extra_args;
92+
93+
return size;
94+
}
95+
96+
void AbstractInterpreter::layout_activation(Method* method,
97+
int tempcount,
98+
int popframe_extra_args,
99+
int moncount,
100+
int caller_actual_parameters,
101+
int callee_param_count,
102+
int callee_locals,
103+
frame* caller,
104+
frame* interpreter_frame,
105+
bool is_top_frame,
106+
bool is_bottom_frame) {
107+
// Note: This calculation must exactly parallel the frame setup
108+
// in AbstractInterpreterGenerator::generate_method_entry.
109+
// If interpreter_frame!=nullptr, set up the method, locals, and monitors.
110+
// The frame interpreter_frame, if not null, is guaranteed to be the
111+
// right size, as determined by a previous call to this method.
112+
// It is also guaranteed to be walkable even though it is in a skeletal state
113+
114+
// fixed size of an interpreter frame:
115+
116+
int max_locals = method->max_locals() * Interpreter::stackElementWords;
117+
int extra_locals = (method->max_locals() - method->size_of_parameters()) * Interpreter::stackElementWords;
118+
119+
#ifdef ASSERT
120+
assert(caller->sp() == interpreter_frame->sender_sp(), "Frame not properly walkable(2)");
121+
#endif
122+
123+
interpreter_frame->interpreter_frame_set_method(method);
124+
// NOTE the difference in using sender_sp and interpreter_frame_sender_sp
125+
// interpreter_frame_sender_sp is the original sp of the caller (the unextended_sp)
126+
// and sender_sp is fp+8
127+
intptr_t* locals = interpreter_frame->sender_sp() + max_locals - 1;
128+
129+
#ifdef ASSERT
130+
if (caller->is_interpreted_frame()) {
131+
assert(locals < caller->fp() + frame::interpreter_frame_initial_sp_offset, "bad placement");
132+
}
133+
#endif
134+
135+
interpreter_frame->interpreter_frame_set_locals(locals);
136+
BasicObjectLock* montop = interpreter_frame->interpreter_frame_monitor_begin();
137+
BasicObjectLock* monbot = montop - moncount;
138+
interpreter_frame->interpreter_frame_set_monitor_end(montop - moncount);
139+
140+
//set last sp;
141+
intptr_t* esp = (intptr_t*) monbot - tempcount*Interpreter::stackElementWords -
142+
popframe_extra_args;
143+
interpreter_frame->interpreter_frame_set_last_sp(esp);
144+
// All frames but the initial interpreter frame we fill in have a
145+
// value for sender_sp that allows walking the stack but isn't
146+
// truly correct. Correct the value here.
147+
//
148+
if (extra_locals != 0 &&
149+
interpreter_frame->sender_sp() == interpreter_frame->interpreter_frame_sender_sp() ) {
150+
interpreter_frame->set_interpreter_frame_sender_sp(caller->sp() + extra_locals);
151+
}
152+
*interpreter_frame->interpreter_frame_cache_addr() = method->constants()->cache();
153+
*interpreter_frame->interpreter_frame_mirror_addr() = method->method_holder()->java_mirror();
154+
}
155+

0 commit comments

Comments
 (0)