Path: blob/master/test/jdk/java/foreign/TestMatrix.java
66643 views
/*1* Note: to run this test manually, you need to build the tests first to get native2* libraries compiled, and then execute it with plain jtreg, like:3*4* $ bin/jtreg -jdk:<path-to-tested-jdk> \5* -nativepath:<path-to-build-dir>/support/test/jdk/jtreg/native/lib/ \6* -concurrency:auto \7* ./test/jdk/java/foreign/TestMatrix.java8*/910/*11* @test id=UpcallHighArity-FFTT12* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"13* @modules jdk.incubator.foreign/jdk.internal.foreign14* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity15*16* @run testng/othervm/native/manual17* --enable-native-access=ALL-UNNAMED18* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false19* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false20* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true21* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true22* TestUpcallHighArity23*/2425/* @test id=UpcallHighArity-TFTT26* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"27* @modules jdk.incubator.foreign/jdk.internal.foreign28* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity29*30* @run testng/othervm/native/manual31* --enable-native-access=ALL-UNNAMED32* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true33* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false34* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true35* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true36* TestUpcallHighArity37*/3839/* @test id=UpcallHighArity-FTTT40* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"41* @modules jdk.incubator.foreign/jdk.internal.foreign42* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity43*44* @run testng/othervm/native/manual45* --enable-native-access=ALL-UNNAMED46* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false47* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true48* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true49* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true50* TestUpcallHighArity51*/5253/* @test id=UpcallHighArity-TTTT54* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"55* @modules jdk.incubator.foreign/jdk.internal.foreign56* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity57*58* @run testng/othervm/native/manual59* --enable-native-access=ALL-UNNAMED60* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true61* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true62* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true63* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true64* TestUpcallHighArity65*/6667/* @test id=UpcallHighArity-FFTF68* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"69* @modules jdk.incubator.foreign/jdk.internal.foreign70* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity71*72* @run testng/othervm/native/manual73* --enable-native-access=ALL-UNNAMED74* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false75* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false76* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true77* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false78* TestUpcallHighArity79*/8081/* @test id=UpcallHighArity-TFTF82* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"83* @modules jdk.incubator.foreign/jdk.internal.foreign84* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity85*86* @run testng/othervm/native/manual87* --enable-native-access=ALL-UNNAMED88* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true89* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false90* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true91* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false92* TestUpcallHighArity93*/9495/* @test id=UpcallHighArity-FTTF96* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"97* @modules jdk.incubator.foreign/jdk.internal.foreign98* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity99*100* @run testng/othervm/native/manual101* --enable-native-access=ALL-UNNAMED102* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false103* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true104* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true105* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false106* TestUpcallHighArity107*/108109/* @test id=UpcallHighArity-TTTF110* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"111* @modules jdk.incubator.foreign/jdk.internal.foreign112* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity113*114* @run testng/othervm/native/manual115* --enable-native-access=ALL-UNNAMED116* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true117* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true118* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true119* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false120* TestUpcallHighArity121*/122123/* @test id=UpcallHighArity-FFFT124* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"125* @modules jdk.incubator.foreign/jdk.internal.foreign126* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity127*128* @run testng/othervm/native/manual129* --enable-native-access=ALL-UNNAMED130* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false131* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false132* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false133* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true134* TestUpcallHighArity135*/136137/* @test id=UpcallHighArity-TFFT138* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"139* @modules jdk.incubator.foreign/jdk.internal.foreign140* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity141*142* @run testng/othervm/native/manual143* --enable-native-access=ALL-UNNAMED144* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true145* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false146* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false147* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true148* TestUpcallHighArity149*/150151/* @test id=UpcallHighArity-FTFT152* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"153* @modules jdk.incubator.foreign/jdk.internal.foreign154* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity155*156* @run testng/othervm/native/manual157* --enable-native-access=ALL-UNNAMED158* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false159* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true160* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false161* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true162* TestUpcallHighArity163*/164165/* @test id=UpcallHighArity-TTFT166* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"167* @modules jdk.incubator.foreign/jdk.internal.foreign168* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity169*170* @run testng/othervm/native/manual171* --enable-native-access=ALL-UNNAMED172* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true173* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true174* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false175* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true176* TestUpcallHighArity177*/178179/* @test id=UpcallHighArity-FFFF180* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"181* @modules jdk.incubator.foreign/jdk.internal.foreign182* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity183*184* @run testng/othervm/native/manual185* --enable-native-access=ALL-UNNAMED186* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false187* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false188* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false189* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false190* TestUpcallHighArity191*/192193/* @test id=UpcallHighArity-TFFF194* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"195* @modules jdk.incubator.foreign/jdk.internal.foreign196* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity197*198* @run testng/othervm/native/manual199* --enable-native-access=ALL-UNNAMED200* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true201* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false202* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false203* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false204* TestUpcallHighArity205*/206207/* @test id=UpcallHighArity-FTFF208* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"209* @modules jdk.incubator.foreign/jdk.internal.foreign210* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity211*212* @run testng/othervm/native/manual213* --enable-native-access=ALL-UNNAMED214* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false215* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true216* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false217* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false218* TestUpcallHighArity219*/220221/* @test id=UpcallHighArity-TTFF222* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"223* @modules jdk.incubator.foreign/jdk.internal.foreign224* @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity225*226* @run testng/othervm/native/manual227* --enable-native-access=ALL-UNNAMED228* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true229* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true230* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false231* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false232* TestUpcallHighArity233*/234235/* @test id=Downcall-FF236* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"237* @modules jdk.incubator.foreign/jdk.internal.foreign238* @build NativeTestHelper CallGeneratorHelper TestDowncall239*240* @run testng/othervm/manual241* --enable-native-access=ALL-UNNAMED242* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false243* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false244* TestDowncall245*/246247/* @test id=Downcall-TF248* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"249* @modules jdk.incubator.foreign/jdk.internal.foreign250* @build NativeTestHelper CallGeneratorHelper TestDowncall251*252* @run testng/othervm/manual253* --enable-native-access=ALL-UNNAMED254* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true255* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false256* TestDowncall257*/258259/* @test id=Downcall-FT260* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"261* @modules jdk.incubator.foreign/jdk.internal.foreign262* @build NativeTestHelper CallGeneratorHelper TestDowncall263*264* @run testng/othervm/manual265* --enable-native-access=ALL-UNNAMED266* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false267* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true268* TestDowncall269*/270271/* @test id=Downcall-TT272* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"273* @modules jdk.incubator.foreign/jdk.internal.foreign274* @build NativeTestHelper CallGeneratorHelper TestDowncall275*276* @run testng/othervm/manual277* --enable-native-access=ALL-UNNAMED278* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true279* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true280* TestDowncall281*/282283/* @test id=Upcall-TFTT284* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"285* @modules jdk.incubator.foreign/jdk.internal.foreign286* @build NativeTestHelper CallGeneratorHelper TestUpcall287*288* @run testng/othervm/manual289* --enable-native-access=ALL-UNNAMED290* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true291* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false292* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true293* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true294* TestUpcall295*/296297/* @test id=Upcall-FTTT298* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"299* @modules jdk.incubator.foreign/jdk.internal.foreign300* @build NativeTestHelper CallGeneratorHelper TestUpcall301*302* @run testng/othervm/manual303* --enable-native-access=ALL-UNNAMED304* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false305* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true306* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true307* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true308* TestUpcall309*/310311/* @test id=Upcall-TTTT312* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"313* @modules jdk.incubator.foreign/jdk.internal.foreign314* @build NativeTestHelper CallGeneratorHelper TestUpcall315*316* @run testng/othervm/manual317* --enable-native-access=ALL-UNNAMED318* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true319* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true320* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true321* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true322* TestUpcall323*/324325/* @test id=Upcall-TFTF326* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"327* @modules jdk.incubator.foreign/jdk.internal.foreign328* @build NativeTestHelper CallGeneratorHelper TestUpcall329*330* @run testng/othervm/manual331* --enable-native-access=ALL-UNNAMED332* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true333* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false334* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true335* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false336* TestUpcall337*/338339/* @test id=Upcall-FTTF340* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"341* @modules jdk.incubator.foreign/jdk.internal.foreign342* @build NativeTestHelper CallGeneratorHelper TestUpcall343*344* @run testng/othervm/manual345* --enable-native-access=ALL-UNNAMED346* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false347* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true348* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true349* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false350* TestUpcall351*/352353/* @test id=Upcall-TTTF354* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"355* @modules jdk.incubator.foreign/jdk.internal.foreign356* @build NativeTestHelper CallGeneratorHelper TestUpcall357*358* @run testng/othervm/manual359* --enable-native-access=ALL-UNNAMED360* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true361* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true362* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=true363* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false364* TestUpcall365*/366367/* @test id=Upcall-TFFT368* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"369* @modules jdk.incubator.foreign/jdk.internal.foreign370* @build NativeTestHelper CallGeneratorHelper TestUpcall371*372* @run testng/othervm/manual373* --enable-native-access=ALL-UNNAMED374* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true375* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false376* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false377* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true378* TestUpcall379*/380381/* @test id=Upcall-FTFT382* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"383* @modules jdk.incubator.foreign/jdk.internal.foreign384* @build NativeTestHelper CallGeneratorHelper TestUpcall385*386* @run testng/othervm/manual387* --enable-native-access=ALL-UNNAMED388* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false389* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true390* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false391* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true392* TestUpcall393*/394395/* @test id=Upcall-TTFT396* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"397* @modules jdk.incubator.foreign/jdk.internal.foreign398* @build NativeTestHelper CallGeneratorHelper TestUpcall399*400* @run testng/othervm/manual401* --enable-native-access=ALL-UNNAMED402* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true403* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true404* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false405* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=true406* TestUpcall407*/408409/* @test id=Upcall-TFFF410* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"411* @modules jdk.incubator.foreign/jdk.internal.foreign412* @build NativeTestHelper CallGeneratorHelper TestUpcall413*414* @run testng/othervm/manual415* --enable-native-access=ALL-UNNAMED416* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true417* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=false418* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false419* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false420* TestUpcall421*/422423/* @test id=Upcall-FTFF424* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"425* @modules jdk.incubator.foreign/jdk.internal.foreign426* @build NativeTestHelper CallGeneratorHelper TestUpcall427*428* @run testng/othervm/manual429* --enable-native-access=ALL-UNNAMED430* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=false431* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true432* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false433* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false434* TestUpcall435*/436437/* @test id=Upcall-TTFF438* @requires ((os.arch == "amd64" | os.arch == "x86_64") & sun.arch.data.model == "64") | os.arch == "aarch64"439* @modules jdk.incubator.foreign/jdk.internal.foreign440* @build NativeTestHelper CallGeneratorHelper TestUpcall441*442* @run testng/othervm/manual443* --enable-native-access=ALL-UNNAMED444* -Djdk.internal.foreign.ProgrammableInvoker.USE_SPEC=true445* -Djdk.internal.foreign.ProgrammableInvoker.USE_INTRINSICS=true446* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_SPEC=false447* -Djdk.internal.foreign.ProgrammableUpcallHandler.USE_INTRINSICS=false448* TestUpcall449*/450451452