Skip to content

null initial cache in ClassValueMap #7

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

plevart
Copy link
Contributor

@plevart plevart commented Aug 15, 2020

Preliminary attempt at modifying ClassValue so that initial value for cache field in ClassValueMap is null

@bridgekeeper
Copy link

bridgekeeper bot commented Aug 15, 2020

Welcome to the OpenJDK organization on GitHub!

This repository is currently a read-only git mirror of the official Mercurial repository (located at https://hg.openjdk.java.net/). As such, we are not currently accepting pull requests here. If you would like to contribute to the OpenJDK project, please see https://openjdk.java.net/contribute/ on how to proceed.

This pull request will be automatically closed.

@bridgekeeper bridgekeeper bot closed this Aug 15, 2020
JornVernee referenced this pull request in JornVernee/jdk Nov 11, 2020
cushon pushed a commit to cushon/jdk that referenced this pull request Apr 2, 2021
Note: the annotations added to src/java.base/share/classes/java/util/Properties.java are to methods that are new JDK 11.
openjdk-notifier bot pushed a commit that referenced this pull request Nov 18, 2021
openjdk-notifier bot pushed a commit that referenced this pull request Nov 29, 2021
* Use existing CRC32 code with different table for CRC32-C

* 8275643: C2's unaryOp vector intrinsic does not properly handle LongVector.neg

Reviewed-by: chagedorn, sviswanathan

* 8277213: CompileTask_lock is acquired out of order with MethodCompileQueue_lock

Reviewed-by: rbackman, coleenp

* 8273039: JShell crashes when naming variable or method "abstract" or "strictfp"

Reviewed-by: vromero

* 8277324: C2 compilation fails with "bad AD file" on x86-32 after JDK-8276162 due to missing match rule

Reviewed-by: chagedorn, roland

* 8277371: Remove unnecessary DefNewGeneration::ref_processor_init()

Reviewed-by: stefank, tschatzl, mli

* 8277439: G1: Correct include guard name in G1EvacFailureObjectsSet.hpp

Reviewed-by: tschatzl, sjohanss

* 8277449: compiler/vectorapi/TestLongVectorNeg.java fails with release VMs

Reviewed-by: thartmann, chagedorn

* 8276774: Cookie stored in CookieHandler not sent if user headers contain cookie

Reviewed-by: michaelm

* 8277427: Update jib-profiles.js to use JMH 1.33 devkit

Reviewed-by: shade, erikj

* 8275745: Reproducible copyright headers

Reviewed-by: ihse, erikj

* 8276150: Quarantined jpackage apps are labeled as "damaged"

Reviewed-by: almatvee

* 8275887: jarsigner prints invalid digest/signature algorithm warnings if keysize is weak/disabled

Reviewed-by: weijun

* 8277212: GC accidentally cleans valid megamorphic vtable inline caches

Reviewed-by: eosterlund, pliden, coleenp, thartmann

* 8277342: vmTestbase/nsk/stress/strace/strace004.java fails with SIGSEGV  in InstanceKlass::jni_id_for

Reviewed-by: dholmes, hseigel

* 8274949: Use String.contains() instead of String.indexOf() in java.base

Reviewed-by: weijun, dfuchs, vtewari, lancea

* 8274333: Redundant null comparison after Pattern.split

Reviewed-by: mullan, weijun, rriggs, iris

* 8274946: Cleanup unnecessary calls to Throwable.initCause() in java.rmi

Reviewed-by: iris, rriggs

* 8275386: Change nested classes in jdk.jlink to static nested classes

Reviewed-by: alanb, rriggs, iris

* 8277092: TestMetaspaceAllocationMT2.java#ndebug-default fails with "RuntimeException: Committed seems high: NNNN expected at most MMMM"

Reviewed-by: coleenp

* 8277370: configure script cannot distinguish WSL version

Reviewed-by: erikj

* 8273544: Increase test coverage for snippets

Reviewed-by: jjg

* 8277494: [BACKOUT] JDK-8276150 Quarantined jpackage apps are labeled as "damaged"

Reviewed-by: asemenyuk, tschatzl

* 8276662: Scalability bottleneck in SymbolTable::lookup_common()

Reviewed-by: redestad, dholmes, iklam, shade

* 8272773: Configurable card table card size

Reviewed-by: tschatzl, ayang

* 8277485: Zero: Fix _fast_{i,f}access_0 bytecodes handling

Reviewed-by: sgehwolf, shade

* 8224922: Access JavaFileObject from Element(s)

Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Reviewed-by: jjg

* 8275448: [REDO] AArch64: Implement string_compare intrinsic in SVE

Reviewed-by: ngasson, aph

* 8277385: Zero: Enable CompactStrings support

Reviewed-by: redestad, adinn

* 8277534: Remove unused ReferenceProcessor::has_discovered_references

Reviewed-by: tschatzl

* 8266593: vmTestbase/nsk/jvmti/PopFrame/popframe011 fails with "assert(java_thread == _state->get_thread()) failed: Must be"

Reviewed-by: mdoerr, lmesnik, dcubed

* 8277428: G1: Move and inline G1STWIsAliveClosure::do_object_b

Reviewed-by: tschatzl, sjohanss

* 8273792: JumpableGenerator.rngs() documentation refers to wrong method

Co-authored-by: Guy Steele <gls@openjdk.org>
Reviewed-by: rriggs

* 8274685: Documentation suggests there are ArbitrarilyJumpableGenerator when none

Co-authored-by: Guy Steele <gls@openjdk.org>
Reviewed-by: rriggs

* 8277239: SIGSEGV in vrshift_reg_maskedNode::emit

Reviewed-by: sviswanathan, dlong

* 8277522: Make formatting of null consistent in Elements

Reviewed-by: jlahoda

* 8265795: vmTestbase/nsk/jvmti/AttachOnDemand/attach022/TestDescription.java fails when running with JEP 416

Reviewed-by: sspitsyn, dholmes

* 8277429: Conflicting jpackage static library name

Reviewed-by: almatvee, herrick, erikj

* 8273341: Update Siphash to version 1.0

Reviewed-by: dholmes

* 8264297: Create implementation for NSAccessibilityProgressIndicator protocol peer

Reviewed-by: pbansal

* 8277576: ProblemList runtime/ErrorHandling/CreateCoredumpOnCrash.java on macosx-X64
8277577: ProblemList compiler/onSpinWait/TestOnSpinWaitAArch64DefaultFlags.java on linux-aarch64
8277578: ProblemList applications/jcstress/acqrel.java on linux-aarch64

Reviewed-by: mikael

* 8277423: ciReplay: hidden class with comment expected error

Reviewed-by: chagedorn, thartmann

* 8273095: vmTestbase/vm/mlvm/anonloader/stress/oome/heap/Test.java fails with "wrong OOME"

Reviewed-by: shade, stefank

* 8277542: G1: Move G1CardSetFreePool and related classes to separate files

Reviewed-by: ayang, tschatzl

* 8277507: Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures

Reviewed-by: almatvee

* 8277087: ZipException: zip END header not found at ZipFile#Source.findEND

Reviewed-by: lancea

* 8276216: Negated character classes performance regression in Pattern

Reviewed-by: clanger

* 8277556: Call ReferenceProcessorPhaseTimes::set_processing_is_mt once

Reviewed-by: sjohanss, tschatzl

* 8277560: Remove WorkerDataArray::_is_serial

Reviewed-by: sjohanss, tschatzl

* 8277413: Remove unused local variables in jdk.hotspot.agent

Reviewed-by: lmesnik, tschatzl, sspitsyn

* 8277441: CompileQueue::add fails with assert(_last->next() == __null) failed: not last

Reviewed-by: chagedorn, neliasso

* 8276696: ParallelObjectIterator freed at the wrong time in VM_HeapDumper

Reviewed-by: pliden, stefank

* 8272042: java.util.ImmutableCollections$Map1 and MapN should not be @valuebased

Reviewed-by: mchung, iris, naoto, smarks

* 8277649: [BACKOUT] JDK-8277507 Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures

Reviewed-by: alanb, stefank

* 8254108: ciReplay: Support incremental inlining

Reviewed-by: dlong, thartmann

* 8261847: performance of java.lang.Record::toString should be improved

Reviewed-by: jlaskey, redestad

* 8268725: jshell does not support the --enable-native-access option

Reviewed-by: sundar

* 8277350: runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java times out

Reviewed-by: hseigel, dholmes, lmesnik

* 8277451: java.lang.reflect.Field::set on static field with invalid argument type should throw IAE

Reviewed-by: alanb

* 8271623: Omit enclosing instance fields from inner classes that don't use it

Reviewed-by: vromero, jlahoda

* 8276764: Enable deterministic file content ordering for Jar and Jmod

Reviewed-by: mchung, ihse

* 8265796: vmTestbase/nsk/jdi/ObjectReference/referringObjects/referringObjects002/referringObjects002.java fails when running with JEP 416

Reviewed-by: cjplummer, mchung

* 8277503: compiler/onSpinWait/TestOnSpinWaitAArch64DefaultFlags.java failed with "OnSpinWaitInst with the expected value 'isb' not found."

Reviewed-by: chagedorn, aph, phh

* 8277397: ZGC: Add JFR event for temporary latency measurements

Reviewed-by: eosterlund, jbachorik, pliden, mgronlun

* 8277399: ZGC: Move worker thread logging out of gc+phase=debug

Reviewed-by: eosterlund, pliden

* 8273328: Compiler implementation for Pattern Matching for switch (Second Preview)

Reviewed-by: vromero, mcimadamore

* 8277562: Remove dead method c1 If::swap_sux

Reviewed-by: thartmann, neliasso

* 8277042: add test for 8276036 to compiler/codecache

Reviewed-by: chagedorn, thartmann

* 8275063: Implementation of Foreign Function & Memory API (Second incubator)

Reviewed-by: erikj, psandoz, jvernee, darcy

* 8275320: NMT should perform buffer overrun checks
8275320: NMT should perform buffer overrun checks
8275301: Unify C-heap buffer overrun checks into NMT

Reviewed-by: simonis, zgu

* 8276665: ObjectInputStream.GetField.get(name, object) should throw ClassNotFoundException

Reviewed-by: naoto, lancea, smarks

* 8272728: javac ignores any -J option in @argfiles silently

Reviewed-by: jjg

* 8235876: Misleading warning message in java source-file mode

Reviewed-by: vromero

* 8274161: Cleanup redundant casts in jdk.compiler

Reviewed-by: vromero

* 8264605: vmTestbase/nsk/jvmti/SuspendThread/suspendthrd003/TestDescription.java failed with "agent_tools.cpp, 471: (foundThread = (jthread) jni_env->NewGlobalRef(foundThread)) != NULL"

Reviewed-by: sspitsyn, dholmes

* 8276124: Provide snippet support for properties files

Co-authored-by: Jonathan Gibbons <jjg@openjdk.org>
Co-authored-by: Hannes Wallnöfer <hannesw@openjdk.org>
Reviewed-by: jjg

* 8277806: 4 tools/jar failures per platform after JDK-8272728

Reviewed-by: alanb, jjg

* 8277811: ProblemList vmTestbase/nsk/jdi/TypeComponent/isSynthetic/issynthetic001/TestDescription.java
8277813: ProblemList vmTestbase/nsk/jvmti/AttachOnDemand/attach002a/TestDescription.java

Reviewed-by: dholmes

* 8258117: jar tool sets the time stamp of module-info.class entries to the current time

Reviewed-by: lancea, ihse, alanb

* 8270435: UT: MonitorUsedDeflationThresholdTest failed: did not find too_many string in output

Reviewed-by: dholmes

* 8275687: runtime/CommandLine/PrintTouchedMethods test shouldn't catch RuntimeException

Reviewed-by: iklam, chagedorn

* 8277631: ZGC: CriticalMetaspaceAllocation asserts

Reviewed-by: pliden, stefank, dholmes

* 8277786: G1: Rename log2_card_region_per_heap_region used in G1CardSet

Reviewed-by: ayang, tschatzl, mli

* 8277825: Remove unused ReferenceProcessorPhaseTimes::_sub_phases_total_time_ms

Reviewed-by: tschatzl

* 8277504: Use String.stripTrailing instead of hand-crafted method in SwingUtilities2

Reviewed-by: pbansal, serb

* 8277165: jdeps --multi-release --print-module-deps fails if module-info.class in different versioned directories
8277166: Data race in jdeps VersionHelper
8277123: jdeps does not report some exceptions correctly

Reviewed-by: jvernee, alanb

* 8277659: [TESTBUG] Microbenchmark ThreadOnSpinWaitProducerConsumer.java hangs

Reviewed-by: njian, ngasson

* 8277508: need to check has_predicated_vectors before calling scalable_predicate_reg_slots

Reviewed-by: njian, thartmann, ngasson

* 8277417: C1 LIR instruction for load-klass

Reviewed-by: iveresov, mdoerr, ngasson, aph

* 8275330: C2:  assert(n->is_Root() || n->is_Region() || n->is_Phi() || n->is_MachMerge() || def_block->dominates(block)) failed: uses must be dominated by definitions

Reviewed-by: thartmann, chagedorn

* 8277139: Improve code readability in PredecessorValidator (c1_IR.cpp)

Reviewed-by: thartmann, chagedorn

* 8277860: PPC: Remove duplicate info != NULL check

Reviewed-by: chagedorn, mdoerr

* 8277411: C2 fast_unlock intrinsic on AArch64 has unnecessary ownership check

Reviewed-by: ngasson, neliasso

* 8275908: Record null_check traps for calls and array_check traps in the interpreter

Reviewed-by: chagedorn, mdoerr

* 8276685: Malformed Javadoc inline tags in JDK source in /jdk/management/jfr/RecordingInfo.java

Reviewed-by: mgronlun

* 8276670: G1: Rename G1CardSetFreePool and related classes

Reviewed-by: tschatzl, ayang

* Use existing CRC32 code with different table for CRC32-C

Co-authored-by: Tobias Hartmann <thartmann@openjdk.org>
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Co-authored-by: Hamlin Li <mli@openjdk.org>
Co-authored-by: Jie Fu <jiefu@openjdk.org>
Co-authored-by: Daniel Fuchs <dfuchs@openjdk.org>
Co-authored-by: Claes Redestad <redestad@openjdk.org>
Co-authored-by: Magnus Ihse Bursie <mag@icus.se>
Co-authored-by: Andy Herrick <herrick@openjdk.org>
Co-authored-by: Sean Mullan <mullan@openjdk.org>
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Coleen Phillimore <coleenp@openjdk.org>
Co-authored-by: Andrey Turbanov <turbanoff@gmail.com>
Co-authored-by: Thomas Stuefe <stuefe@openjdk.org>
Co-authored-by: Yasumasa Suenaga <ysuenaga@openjdk.org>
Co-authored-by: Pavel Rappo <prappo@openjdk.org>
Co-authored-by: Daniel D. Daugherty <dcubed@openjdk.org>
Co-authored-by: Derek White <drwhite@openjdk.org>
Co-authored-by: Vishal Chand <vishalchand2492@gmail.com>
Co-authored-by: Joe Darcy <darcy@openjdk.org>
Co-authored-by: TatWai Chong <tatwai.chong@arm.com>
Co-authored-by: Aleksey Shipilev <shade@openjdk.org>
Co-authored-by: Serguei Spitsyn <sspitsyn@openjdk.org>
Co-authored-by: Jim Laskey <jlaskey@openjdk.org>
Co-authored-by: Guy Steele <gls@openjdk.org>
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Co-authored-by: Leonid Mesnik <lmesnik@openjdk.org>
Co-authored-by: Alexey Semenyuk <asemenyuk@openjdk.org>
Co-authored-by: Alexander Zuev <kizune@openjdk.org>
Co-authored-by: Dean Long <dlong@openjdk.org>
Co-authored-by: Jaikiran Pai <jpai@openjdk.org>
Co-authored-by: Sergey Bylokhov <serb@openjdk.org>
Co-authored-by: Volker Simonis <simonis@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Co-authored-by: Roger Riggs <rriggs@openjdk.org>
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Co-authored-by: Mandy Chung <mchung@openjdk.org>
Co-authored-by: Liam Miller-Cushon <cushon@openjdk.org>
Co-authored-by: Andrew Leonard <aleonard@openjdk.org>
Co-authored-by: Evgeny Astigeevich <eastig@amazon.com>
Co-authored-by: Ludvig Janiuk <ludvig.j.janiuk@oracle.com>
Co-authored-by: KIRIYAMA Takuya <kiriyama.takuya@fujitsu.com>
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Co-authored-by: Christian Stein <cstein@openjdk.org>
Co-authored-by: Adam Sotona <asotona@openjdk.org>
Co-authored-by: Jonathan Gibbons <jjg@openjdk.org>
Co-authored-by: Hannes Wallnöfer <hannesw@openjdk.org>
Co-authored-by: Lance Andersen <lancea@openjdk.org>
Co-authored-by: Fairoz Matte <fmatte@openjdk.org>
Co-authored-by: Ivan Walulya <iwalulya@openjdk.org>
Co-authored-by: Stuart Monteith <smonteith@openjdk.org>
Co-authored-by: Yadong Wang <yadongwang@openjdk.org>
Co-authored-by: Roman Kennke <rkennke@openjdk.org>
Co-authored-by: Roland Westrelin <roland@openjdk.org>
Co-authored-by: Erik Gahlin <egahlin@openjdk.org>
e1iu pushed a commit to e1iu/jdk that referenced this pull request Mar 29, 2022
This patch optimizes the backend implementation of VectorMaskToLong for
AArch64, given a more efficient approach to mov value bits from
predicate register to general purpose register as x86 PMOVMSK[1] does,
by using BEXT[2] which is available in SVE2.

With this patch, the final code (input mask is byte type with
SPECIESE_512, generated on an SVE vector reg size of 512-bit QEMU
emulator) changes as below:

Before:

        mov     z16.b, p0/z, #1
        fmov    x0, d16
        orr     x0, x0, x0, lsr openjdk#7
        orr     x0, x0, x0, lsr openjdk#14
        orr     x0, x0, x0, lsr openjdk#28
        and     x0, x0, #0xff
        fmov    x8, v16.d[1]
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#8

        orr     x8, xzr, #0x2
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#16

        orr     x8, xzr, #0x3
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#24

        orr     x8, xzr, #0x4
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#32

        mov     x8, #0x5
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#40

        orr     x8, xzr, #0x6
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#48

        orr     x8, xzr, #0x7
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#56

After:

        mov     z16.b, p0/z, #1
        mov     z17.b, #1
        bext    z16.d, z16.d, z17.d
        mov     z17.d, #0
        uzp1    z16.s, z16.s, z17.s
        uzp1    z16.h, z16.h, z17.h
        uzp1    z16.b, z16.b, z17.b
        mov     x0, v16.d[0]

[1] https://www.felixcloutier.com/x86/pmovmskb
[2] https://developer.arm.com/documentation/ddi0602/2020-12/SVE-Instructions/BEXT--Gather-lower-bits-from-positions-selected-by-bitmask-

Change-Id: Ia983a20c89f76403e557ac21328f2f2e05dd08e0
e1iu pushed a commit to e1iu/jdk that referenced this pull request Apr 21, 2022
This patch optimizes the backend implementation of VectorMaskToLong for
AArch64, given a more efficient approach to mov value bits from
predicate register to general purpose register as x86 PMOVMSK[1] does,
by using BEXT[2] which is available in SVE2.

With this patch, the final code (input mask is byte type with
SPECIESE_512, generated on an SVE vector reg size of 512-bit QEMU
emulator) changes as below:

Before:

        mov     z16.b, p0/z, #1
        fmov    x0, d16
        orr     x0, x0, x0, lsr openjdk#7
        orr     x0, x0, x0, lsr openjdk#14
        orr     x0, x0, x0, lsr openjdk#28
        and     x0, x0, #0xff
        fmov    x8, v16.d[1]
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#8

        orr     x8, xzr, #0x2
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#16

        orr     x8, xzr, #0x3
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#24

        orr     x8, xzr, #0x4
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#32

        mov     x8, #0x5
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#40

        orr     x8, xzr, #0x6
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#48

        orr     x8, xzr, #0x7
        whilele p1.d, xzr, x8
        lastb   x8, p1, z16.d
        orr     x8, x8, x8, lsr openjdk#7
        orr     x8, x8, x8, lsr openjdk#14
        orr     x8, x8, x8, lsr openjdk#28
        and     x8, x8, #0xff
        orr     x0, x0, x8, lsl openjdk#56

After:

        mov     z16.b, p0/z, #1
        mov     z17.b, #1
        bext    z16.d, z16.d, z17.d
        mov     z17.d, #0
        uzp1    z16.s, z16.s, z17.s
        uzp1    z16.h, z16.h, z17.h
        uzp1    z16.b, z16.b, z17.b
        mov     x0, v16.d[0]

[1] https://www.felixcloutier.com/x86/pmovmskb
[2] https://developer.arm.com/documentation/ddi0602/2020-12/SVE-Instructions/BEXT--Gather-lower-bits-from-positions-selected-by-bitmask-

Change-Id: Ia983a20c89f76403e557ac21328f2f2e05dd08e0
martinuy pushed a commit to martinuy/jdk that referenced this pull request Aug 13, 2022
Build the systemconf library on all platforms, simply returning JNI_FALSE if !LINUX
Reviewed-by: @franferrax
JimLaskey pushed a commit to JimLaskey/jdk that referenced this pull request Nov 14, 2022
@stable removal
process decl in TemplateProcessor and StringProcessor for specialized javadoc
clean up FormatterBuilder javadoc
caojoshua pushed a commit to caojoshua/jdk that referenced this pull request Mar 21, 2023
…mon (openjdk#7)

* JVM-1738: Incorrect jvms when PEA materializes an object in merge_common

This patch copys all debuginfo nodes from the original AllocateNode and clones its JVMState as well.
We deploy a uncommon_trap rather than generating the exception for real. That shouluhd resolve JVM-1730.

The reason we give up the idea to use add_safepoint_edges() is that GraphKit's bci may point
to an arbitary bytecode and sp even doesn't match its current bci.

The another benefit is that it can mimic the original AllocateNode with the exactly same debuginfo and JVMState.
If OOME does emerge, the stacktrace is as if we doesn't move AllocateNode ever.

* Update passive materialization.

* Add a test for JVM-1738

---------

Co-authored-by: Xin Liu <xxinliu@amazon.com>
gnu-andrew added a commit to gnu-andrew/jdk that referenced this pull request Apr 4, 2023
Build the systemconf library on all platforms, simply returning JNI_FALSE if !LINUX
Reviewed-by: @franferrax
robehn pushed a commit to robehn/jdk that referenced this pull request Aug 15, 2023
gnu-andrew added a commit to gnu-andrew/jdk that referenced this pull request Aug 18, 2023
Build the systemconf library on all platforms, simply returning JNI_FALSE if !LINUX
Reviewed-by: @franferrax
steveatgh added a commit to steveatgh/jdk that referenced this pull request Feb 10, 2024
viktorklang-ora pushed a commit to viktorklang-ora/jdk that referenced this pull request Sep 6, 2024
* A crude sketch of unreflect for deconstructors.

* Reuse the same mangling everywhere.

* Cleanup.
DougLea added a commit to DougLea/jdk that referenced this pull request Oct 28, 2024
pf0n pushed a commit to pf0n/jdk that referenced this pull request Jul 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant