mirror of
https://github.com/JetBrains/JetBrainsRuntime.git
synced 2025-12-18 15:29:41 +01:00
Compare commits
39 Commits
jdk-11.0.2
...
jdk-11.0.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
be01e6e792 | ||
|
|
40ee106645 | ||
|
|
a3661a5857 | ||
|
|
f65058efd6 | ||
|
|
a956ba6a82 | ||
|
|
911c3597a2 | ||
|
|
bd7420a71c | ||
|
|
f9bedac07d | ||
|
|
345122d7ad | ||
|
|
1f4decf7a7 | ||
|
|
6321d3eaf1 | ||
|
|
24205922cd | ||
|
|
a72d0b2894 | ||
|
|
fca62cfa50 | ||
|
|
250d7a8ad9 | ||
|
|
fac59555ce | ||
|
|
f2488a31e0 | ||
|
|
78141024c2 | ||
|
|
10ddd51b43 | ||
|
|
45e3cbf6ed | ||
|
|
046b213712 | ||
|
|
5a7b227193 | ||
|
|
1b6ff86666 | ||
|
|
4aa3196d4e | ||
|
|
5d14b134c6 | ||
|
|
27bfce0473 | ||
|
|
2b9d54a022 | ||
|
|
a2ef2482c4 | ||
|
|
6038e04bf2 | ||
|
|
623fd8ebe5 | ||
|
|
8f7589fce8 | ||
|
|
2bbab16d08 | ||
|
|
c54521b236 | ||
|
|
416c48e9d3 | ||
|
|
34cc0891f2 | ||
|
|
b773f56744 | ||
|
|
799a7c8d4c | ||
|
|
0bc8b22218 | ||
|
|
3592b70aea |
21
make/data/cacerts/digicertcseccrootg5
Normal file
21
make/data/cacerts/digicertcseccrootg5
Normal file
@@ -0,0 +1,21 @@
|
||||
Owner: CN=DigiCert CS ECC P384 Root G5, O="DigiCert, Inc.", C=US
|
||||
Issuer: CN=DigiCert CS ECC P384 Root G5, O="DigiCert, Inc.", C=US
|
||||
Serial number: 3698fe712d519f3ced0fdb7b1643011
|
||||
Valid from: Fri Jan 15 00:00:00 GMT 2021 until: Sun Jan 14 23:59:59 GMT 2046
|
||||
Signature algorithm name: SHA384withECDSA
|
||||
Subject Public Key Algorithm: 384-bit EC (secp384r1) key
|
||||
Version: 3
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICFjCCAZ2gAwIBAgIQA2mP5xLVGfPO0P23sWQwETAKBggqhkjOPQQDAzBNMQsw
|
||||
CQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMTHERp
|
||||
Z2lDZXJ0IENTIEVDQyBQMzg0IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcNNDYw
|
||||
MTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIElu
|
||||
Yy4xJTAjBgNVBAMTHERpZ2lDZXJ0IENTIEVDQyBQMzg0IFJvb3QgRzUwdjAQBgcq
|
||||
hkjOPQIBBgUrgQQAIgNiAAR/FK2Ftpf9AiE1TWDoOJOTmz0FEG2v0/7v+rv7c5nz
|
||||
7DISjcdouIveiaKIVHeNuyF+M5VWlgno1YyhBLibbhkAYuhCKKZYN4QZVSZ7Mzdn
|
||||
8ppyraGurgBCPBx+uHqeIZyjQjBAMB0GA1UdDgQWBBTwjJhxOThlwjobphdmHcjt
|
||||
Zd6SNjAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQD
|
||||
AwNnADBkAjAjb+EAGSZQ5EYgZYs3p8/rBuHMMskqoewyDXOiHgIcNWEqTmmrOXft
|
||||
l4jAfWvqid0CMEPx0VijdT6Gm7ZVEYsX9z3+CmnFf07GdRtalMvqERHGCCKI3tB6
|
||||
oqV56OMhp80Tsw==
|
||||
-----END CERTIFICATE-----
|
||||
38
make/data/cacerts/digicertcsrsarootg5
Normal file
38
make/data/cacerts/digicertcsrsarootg5
Normal file
@@ -0,0 +1,38 @@
|
||||
Owner: CN=DigiCert CS RSA4096 Root G5, O="DigiCert, Inc.", C=US
|
||||
Issuer: CN=DigiCert CS RSA4096 Root G5, O="DigiCert, Inc.", C=US
|
||||
Serial number: 6cee131be6d55c807f7c0c7fb44e620
|
||||
Valid from: Fri Jan 15 00:00:00 GMT 2021 until: Sun Jan 14 23:59:59 GMT 2046
|
||||
Signature algorithm name: SHA384withRSA
|
||||
Subject Public Key Algorithm: 4096-bit RSA key
|
||||
Version: 3
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFZDCCA0ygAwIBAgIQBs7hMb5tVcgH98DH+0TmIDANBgkqhkiG9w0BAQwFADBM
|
||||
MQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJDAiBgNVBAMT
|
||||
G0RpZ2lDZXJ0IENTIFJTQTQwOTYgUm9vdCBHNTAeFw0yMTAxMTUwMDAwMDBaFw00
|
||||
NjAxMTQyMzU5NTlaMEwxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg
|
||||
SW5jLjEkMCIGA1UEAxMbRGlnaUNlcnQgQ1MgUlNBNDA5NiBSb290IEc1MIICIjAN
|
||||
BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtjNzgNhiA3AULBEcOV58rnyDhh3+
|
||||
Ji9MJK2L6oNfqbw9W/wLmEwCRzDs4v7s6DRbZl6/O9cspiX/jFmz3+rafCnZRlBy
|
||||
CB1u0RsK3R/NmYn6Dw9zxOGcHXUyzW+X2ipqlbJsyQnQ6gt7fRcGSZnv1t7gyFPU
|
||||
rsZ38Ya7Ixy4wN9Z94590e+C5iaLWji1/3XVstlPCfM3iFDaEaSKFBTRUwQAffNq
|
||||
RBj+UHAyBxyomg46HcUKH24LJmm3PKJXcCyG+kxulalYQ7msEtb/P+3XQxdrTM6e
|
||||
xJCr//oQUJqjkFfW54wQrp8WGs81HX/Xdu2KnDWnKLinXSH8MDfd3ggZTxXG56ba
|
||||
kEeO95RTTI5TAr79meXqhtCvAwLTm6qT8asojiAB/0z7zLcpQPWHpBITBR9DbtdR
|
||||
UJ84tCDtFwkSj8y5Ga+fzb5pEdOvVRBtF4Z5llLGsgCd5a84sDX0iGuPDgQ9fO6v
|
||||
zdNqEErGzYbKIj2hSlz7Dv+I31xip8C5HtmsbH44N/53kyXChYpPtTcGWgaBFPHO
|
||||
lJ2ZkeoyWs5nPW4EZq0MTy2jLvee9Xid9wr9fo/jQopVlrzxnzct/J5flf6MGBv8
|
||||
jv1LkK/XA2gSY6zik6eiywTlT2TOA/rGFJ/Zi+jM1GKMa+QALBmfGgbGMYFU+1Mk
|
||||
mq9Vmbqdda64wt0CAwEAAaNCMEAwHQYDVR0OBBYEFGgBk7HSSkBCaZRGLBxaiKkl
|
||||
tEdPMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB
|
||||
DAUAA4ICAQCS/O64AnkXAlF9IcVJZ6ek8agkOOsMaOpaQmuc9HPBaUotszcFUEKY
|
||||
kp4GeSwuBpn2798roM2zkgGDtaDLJ7U8IxqYSaLsLZmlWUOs0rGT1lfXHLyT1sZA
|
||||
4bNvGVW3E9flQzOktavL2sExZA101iztw41u67uvGUdhYS3A9AW5b3jcOvdCQGVT
|
||||
kb2ZDZOSVKapN1krm8uZxrw99wSE8JQzHQ+CWjnLLkXDKBmjspuYyPwxa2CP9umG
|
||||
KLzgPH10XRaJW2kkxxCLxEu7Nk/UWT/DsKSRmfgu0UoBnfWIEu+/WhFqWU9Za1pn
|
||||
84+0Ew/A2C89KHKqGX8RfWpbn5XnX7eUT/E+oVr/Lcyd3yd3jzJzHGcKdvP6XLG/
|
||||
vB29DCibsscXZwszD8O9Ntz7ukILq+2Ew2LWhBapsQdrqW7uxs/msEQpwvCzYYAq
|
||||
i2/SFFwlh1Rk86RMwaH4p2vq/uo6/HnbDo/cxvPJ1Gze6YOhjh0i7Mk6sgB73Dun
|
||||
Qhp/3IupET2Op8Agb10JXUNE5o9mzKlbB/Hvm3oOs1ThlP0OLMaT11X9cZg1uAlK
|
||||
/8YpKCz2Ui3bFBiSJ+IWfozK1GG+goeR65g3P79fXXc/NKwbOEOraHKZMh46Ghml
|
||||
ozhMI9ej58zVKpIXkAtaS70WvfuGauKJmezkoFUYyaMIHxPgMghy0A==
|
||||
-----END CERTIFICATE-----
|
||||
21
make/data/cacerts/digicerttlseccrootg5
Normal file
21
make/data/cacerts/digicerttlseccrootg5
Normal file
@@ -0,0 +1,21 @@
|
||||
Owner: CN=DigiCert TLS ECC P384 Root G5, O="DigiCert, Inc.", C=US
|
||||
Issuer: CN=DigiCert TLS ECC P384 Root G5, O="DigiCert, Inc.", C=US
|
||||
Serial number: 9e09365acf7d9c8b93e1c0b042a2ef3
|
||||
Valid from: Fri Jan 15 00:00:00 GMT 2021 until: Sun Jan 14 23:59:59 GMT 2046
|
||||
Signature algorithm name: SHA384withECDSA
|
||||
Subject Public Key Algorithm: 384-bit EC (secp384r1) key
|
||||
Version: 3
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICGTCCAZ+gAwIBAgIQCeCTZaz32ci5PhwLBCou8zAKBggqhkjOPQQDAzBOMQsw
|
||||
CQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJjAkBgNVBAMTHURp
|
||||
Z2lDZXJ0IFRMUyBFQ0MgUDM4NCBSb290IEc1MB4XDTIxMDExNTAwMDAwMFoXDTQ2
|
||||
MDExNDIzNTk1OVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJ
|
||||
bmMuMSYwJAYDVQQDEx1EaWdpQ2VydCBUTFMgRUNDIFAzODQgUm9vdCBHNTB2MBAG
|
||||
ByqGSM49AgEGBSuBBAAiA2IABMFEoc8Rl1Ca3iOCNQfN0MsYndLxf3c1TzvdlHJS
|
||||
7cI7+Oz6e2tYIOyZrsn8aLN1udsJ7MgT9U7GCh1mMEy7H0cKPGEQQil8pQgO4CLp
|
||||
0zVozptjn4S1mU1YoI71VOeVyaNCMEAwHQYDVR0OBBYEFMFRRVBZqz7nLFr6ICIS
|
||||
B4CIfBFqMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MAoGCCqGSM49
|
||||
BAMDA2gAMGUCMQCJao1H5+z8blUD2WdsJk6Dxv3J+ysTvLd6jLRl0mlpYxNjOyZQ
|
||||
LgGheQaRnUi/wr4CMEfDFXuxoJGZSZOoPHzoRgaLLPIxAJSdYsiJvRmEFOml+wG4
|
||||
DXZDjC5Ty3zfDBeWUA==
|
||||
-----END CERTIFICATE-----
|
||||
38
make/data/cacerts/digicerttlsrsarootg5
Normal file
38
make/data/cacerts/digicerttlsrsarootg5
Normal file
@@ -0,0 +1,38 @@
|
||||
Owner: CN=DigiCert TLS RSA4096 Root G5, O="DigiCert, Inc.", C=US
|
||||
Issuer: CN=DigiCert TLS RSA4096 Root G5, O="DigiCert, Inc.", C=US
|
||||
Serial number: 8f9b478a8fa7eda6a333789de7ccf8a
|
||||
Valid from: Fri Jan 15 00:00:00 GMT 2021 until: Sun Jan 14 23:59:59 GMT 2046
|
||||
Signature algorithm name: SHA384withRSA
|
||||
Subject Public Key Algorithm: 4096-bit RSA key
|
||||
Version: 3
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFZjCCA06gAwIBAgIQCPm0eKj6ftpqMzeJ3nzPijANBgkqhkiG9w0BAQwFADBN
|
||||
MQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMT
|
||||
HERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcN
|
||||
NDYwMTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQs
|
||||
IEluYy4xJTAjBgNVBAMTHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwggIi
|
||||
MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz0PTJeRGd/fxmgefM1eS87IE+
|
||||
ajWOLrfn3q/5B03PMJ3qCQuZvWxX2hhKuHisOjmopkisLnLlvevxGs3npAOpPxG0
|
||||
2C+JFvuUAT27L/gTBaF4HI4o4EXgg/RZG5Wzrn4DReW+wkL+7vI8toUTmDKdFqgp
|
||||
wgscONyfMXdcvyej/Cestyu9dJsXLfKB2l2w4SMXPohKEiPQ6s+d3gMXsUJKoBZM
|
||||
pG2T6T867jp8nVid9E6P/DsjyG244gXazOvswzH016cpVIDPRFtMbzCe88zdH5RD
|
||||
nU1/cHAN1DrRN/BsnZvAFJNY781BOHW8EwOVfH/jXOnVDdXifBBiqmvwPXbzP6Po
|
||||
sMH976pXTayGpxi0KcEsDr9kvimM2AItzVwv8n/vFfQMFawKsPHTDU9qTXeXAaDx
|
||||
Zre3zu/O7Oyldcqs4+Fj97ihBMi8ez9dLRYiVu1ISf6nL3kwJZu6ay0/nTvEF+cd
|
||||
Lvvyz6b84xQslpghjLSR6Rlgg/IwKwZzUNWYOwbpx4oMYIwo+FKbbuH2TbsGJJvX
|
||||
KyY//SovcfXWJL5/MZ4PbeiPT02jP/816t9JXkGPhvnxd3lLG7SjXi/7RgLQZhNe
|
||||
XoVPzthwiHvOAbWWl9fNff2C+MIkwcoBOU+NosEUQB+cZtUMCUbW8tDRSHZWOkPL
|
||||
tgoRObqME2wGtZ7P6wIDAQABo0IwQDAdBgNVHQ4EFgQUUTMc7TZArxfTJc1paPKv
|
||||
TiM+s0EwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN
|
||||
AQEMBQADggIBAGCmr1tfV9qJ20tQqcQjNSH/0GEwhJG3PxDPJY7Jv0Y02cEhJhxw
|
||||
GXIeo8mH/qlDZJY6yFMECrZBu8RHANmfGBg7sg7zNOok992vIGCukihfNudd5N7H
|
||||
PNtQOa27PShNlnx2xlv0wdsUpasZYgcYQF+Xkdycx6u1UQ3maVNVzDl92sURVXLF
|
||||
O4uJ+DQtpBflF+aZfTCIITfNMBc9uPK8qHWgQ9w+iUuQrm0D4ByjoJYJu32jtyoQ
|
||||
REtGBzRj7TG5BO6jm5qu5jF49OokYTurWGT/u4cnYiWB39yhL/btp/96j1EuMPik
|
||||
AdKFOV8BmZZvWltwGUb+hmA+rYAQCd05JS9Yf7vSdPD3Rh9GOUrYU9DzLjtxpdRv
|
||||
/PNn5AeP3SYZ4Y1b+qOTEZvpyDrDVWiakuFSdjjo4bq9+0/V77PnSIMx8IIh47a+
|
||||
p6tv75/fTM8BuGJqIz3nCU2AG3swpMPdB380vqQmsvZB6Akd4yCYqjdP//fx4ilw
|
||||
MUc/dNAUFvohigLVigmUdy7yWSiLfFCSCmZ4OIN1xLVaqBHG5cGdZlXPU8Sv13WF
|
||||
qUITVuwhd4GTWgzqltlJyqEI8pc7bZsEGCREjnwB8twl2F6GmrE52/WRMmrRpnCK
|
||||
ovfepEWFJqgejF0pW8hL2JpqA15w8oVPbEtoL8pU9ozaMv7Da4M/OMZ+
|
||||
-----END CERTIFICATE-----
|
||||
21
make/data/cacerts/letsencryptisrgx2
Normal file
21
make/data/cacerts/letsencryptisrgx2
Normal file
@@ -0,0 +1,21 @@
|
||||
Owner: CN=ISRG Root X2, O=Internet Security Research Group, C=US
|
||||
Issuer: CN=ISRG Root X2, O=Internet Security Research Group, C=US
|
||||
Serial number: 41d29dd172eaeea780c12c6ce92f8752
|
||||
Valid from: Fri Sep 04 00:00:00 GMT 2020 until: Mon Sep 17 16:00:00 GMT 2040
|
||||
Signature algorithm name: SHA384withECDSA
|
||||
Subject Public Key Algorithm: 384-bit EC (secp384r1) key
|
||||
Version: 3
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICGzCCAaGgAwIBAgIQQdKd0XLq7qeAwSxs6S+HUjAKBggqhkjOPQQDAzBPMQsw
|
||||
CQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFyY2gg
|
||||
R3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMjAeFw0yMDA5MDQwMDAwMDBaFw00
|
||||
MDA5MTcxNjAwMDBaME8xCzAJBgNVBAYTAlVTMSkwJwYDVQQKEyBJbnRlcm5ldCBT
|
||||
ZWN1cml0eSBSZXNlYXJjaCBHcm91cDEVMBMGA1UEAxMMSVNSRyBSb290IFgyMHYw
|
||||
EAYHKoZIzj0CAQYFK4EEACIDYgAEzZvVn4CDCuwJSvMWSj5cz3es3mcFDR0HttwW
|
||||
+1qLFNvicWDEukWVEYmO6gbf9yoWHKS5xcUy4APgHoIYOIvXRdgKam7mAHf7AlF9
|
||||
ItgKbppbd9/w+kHsOdx1ymgHDB/qo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T
|
||||
AQH/BAUwAwEB/zAdBgNVHQ4EFgQUfEKWrt5LSDv6kviejM9ti6lyN5UwCgYIKoZI
|
||||
zj0EAwMDaAAwZQIwe3lORlCEwkSHRhtFcP9Ymd70/aTSVaYgLXTWNLxBo1BfASdW
|
||||
tL4ndQavEi51mI38AjEAi/V3bNTIZargCyzuFJ0nN6T5U6VR5CmD1/iQMVtCnwr1
|
||||
/q4AaOeMSQ+2b1tbFfLn
|
||||
-----END CERTIFICATE-----
|
||||
39
make/data/cacerts/teliarootcav2
Normal file
39
make/data/cacerts/teliarootcav2
Normal file
@@ -0,0 +1,39 @@
|
||||
Owner: CN=Telia Root CA v2, O=Telia Finland Oyj, C=FI
|
||||
Issuer: CN=Telia Root CA v2, O=Telia Finland Oyj, C=FI
|
||||
Serial number: 1675f27d6fe7ae3e4acbe095b059e
|
||||
Valid from: Thu Nov 29 11:55:54 GMT 2018 until: Sun Nov 29 11:55:54 GMT 2043
|
||||
Signature algorithm name: SHA256withRSA
|
||||
Subject Public Key Algorithm: 4096-bit RSA key
|
||||
Version: 3
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFdDCCA1ygAwIBAgIPAWdfJ9b+euPkrL4JWwWeMA0GCSqGSIb3DQEBCwUAMEQx
|
||||
CzAJBgNVBAYTAkZJMRowGAYDVQQKDBFUZWxpYSBGaW5sYW5kIE95ajEZMBcGA1UE
|
||||
AwwQVGVsaWEgUm9vdCBDQSB2MjAeFw0xODExMjkxMTU1NTRaFw00MzExMjkxMTU1
|
||||
NTRaMEQxCzAJBgNVBAYTAkZJMRowGAYDVQQKDBFUZWxpYSBGaW5sYW5kIE95ajEZ
|
||||
MBcGA1UEAwwQVGVsaWEgUm9vdCBDQSB2MjCCAiIwDQYJKoZIhvcNAQEBBQADggIP
|
||||
ADCCAgoCggIBALLQPwe84nvQa5n44ndp586dpAO8gm2h/oFlH0wnrI4AuhZ76zBq
|
||||
AMCzdGh+sq/H1WKzej9Qyow2RCRj0jbpDIX2Q3bVTKFgcmfiKDOlyzG4OiIjNLh9
|
||||
vVYiQJ3q9HsDrWj8soFPmNB06o3lfc1jw6P23pLCWBnglrvFxKk9pXSW/q/5iaq9
|
||||
lRdU2HhE8Qx3FZLgmEKnpNaqIJLNwaCzlrI6hEKNfdWV5Nbb6WLEWLN5xYzTNTOD
|
||||
n3WhUidhOPFZPY5Q4L15POdslv5e2QJltI5c0BE0312/UqeBAMN/mUWZFdUXyApT
|
||||
7GPzmX3MaRKGwhfwAZ6/hLzRUssbkmbOpFPlob/E2wnW5olWK8jjfN7j/4nlNW4o
|
||||
6GwLI1GpJQXrSPjdscr6bAhR77cYbETKJuFzxokGgeWKrLDiKca5JLNrRBH0pUPC
|
||||
TEPlcDaMtjNXepUugqD0XBCzYYP2AgWGLnwtbNwDRm41k9V6lS/eINhbfpSQBGq6
|
||||
WT0EBXWdN6IOLj3rwaRSg/7Qa9RmjtzG6RJOHSpXqhC8fF6CfaamyfItufUXJ63R
|
||||
DolUK5X6wK0dmBR4M0KGCqlztft0DbcbMBnEWg4cJ7faGND/isgFuvGqHKI3t+ZI
|
||||
pEYslOqodmJHixBTB0hXbOKSTbauBcvcwUpej6w9GU7C7WB1K9vBykLVAgMBAAGj
|
||||
YzBhMB8GA1UdIwQYMBaAFHKs5DN5qkWH9v2sHZ7Wxy+G2CQ5MB0GA1UdDgQWBBRy
|
||||
rOQzeapFh/b9rB2e1scvhtgkOTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw
|
||||
AwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAoDtZpwmUPjaE0n4vOaWWl/oRrfxn83EJ
|
||||
8rKJhGdEr7nv7ZbsnGTbMjBvZ5qsfl+yqwE2foH65IRe0qw24GtixX1LDoJt0nZi
|
||||
0f6X+J8wfBj5tFJ3gh1229MdqfDBmgC9bXXYfef6xzijnHDoRnkDry5023X4blMM
|
||||
A8iZGok1GTzTyVR8qPAs5m4HeW9q4ebqkYJpCh3DflminmtGFZhb069GHWLIzoBS
|
||||
SRE/yQQSwxN8PzuKlts8oB4KtItUsiRnDe+Cy748fdHif64W1lZYudogsYMVoe+K
|
||||
TTJvQS8TUoKU1xrBeKJR3Stwbbca+few4GeXVtt8YVMJAygCQMez2P2ccGrGKMOF
|
||||
6eLtGpOg3kuYooQ+BXcBlj37tCAPnHICehIv1aO6UXivKitEZU61/Qrowc15h2Er
|
||||
3oBXRb9n8ZuRXqWk7FlIEA04x7D6w0RtBPV4UBySllva9bguulvP5fBqnUsvWHMt
|
||||
Ty3EHD70sz+rFQ47GUGKpMFXEmZxTPpT41frYpUJnlTd0cI8Vzy9OK2YZLe4A5pT
|
||||
VmBds9hCG1xLEooc6+t9xnppxyd/pPiL8uSUZodL6ZQHCRJ5irLrdATczvREWeAW
|
||||
ysUsWNc8e89ihmpQfTU2Zqf7N+cox9jQraVplI/owd8k+BsHMYeB2F326CjYSlKA
|
||||
rBPuUBQemMc=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -143,7 +143,6 @@ inline intptr_t* frame::interpreter_frame_mdp_addr() const {
|
||||
return (intptr_t*) &(get_ijava_state()->mdx);
|
||||
}
|
||||
|
||||
// Pointer beyond the "oldest/deepest" BasicObjectLock on stack.
|
||||
inline BasicObjectLock* frame::interpreter_frame_monitor_end() const {
|
||||
return (BasicObjectLock*) get_ijava_state()->monitors;
|
||||
}
|
||||
|
||||
@@ -1978,7 +1978,7 @@ void InterpreterMacroAssembler::profile_parameters_type(Register tmp1, Register
|
||||
}
|
||||
}
|
||||
|
||||
// Add a InterpMonitorElem to stack (see frame_sparc.hpp).
|
||||
// Add a monitor (see frame_ppc.hpp).
|
||||
void InterpreterMacroAssembler::add_monitor_to_stack(bool stack_is_empty, Register Rtemp1, Register Rtemp2) {
|
||||
|
||||
// Very-local scratch registers.
|
||||
|
||||
@@ -4056,90 +4056,78 @@ void TemplateTable::athrow() {
|
||||
// at next monitor exit.
|
||||
void TemplateTable::monitorenter() {
|
||||
transition(atos, vtos);
|
||||
|
||||
__ verify_oop(R17_tos);
|
||||
|
||||
Register Rcurrent_monitor = R11_scratch1,
|
||||
Rcurrent_obj = R12_scratch2,
|
||||
Register Rcurrent_monitor = R3_ARG1,
|
||||
Rcurrent_obj = R4_ARG2,
|
||||
Robj_to_lock = R17_tos,
|
||||
Rscratch1 = R3_ARG1,
|
||||
Rscratch2 = R4_ARG2,
|
||||
Rscratch3 = R5_ARG3,
|
||||
Rcurrent_obj_addr = R6_ARG4;
|
||||
Rscratch1 = R11_scratch1,
|
||||
Rscratch2 = R12_scratch2,
|
||||
Rbot = R5_ARG3,
|
||||
Rfree_slot = R6_ARG4;
|
||||
|
||||
Label Lfound, Lallocate_new;
|
||||
|
||||
__ ld(Rscratch1, _abi(callers_sp), R1_SP); // load FP
|
||||
__ li(Rfree_slot, 0); // Points to free slot or null.
|
||||
|
||||
// Set up search loop - start with topmost monitor.
|
||||
__ mr(Rcurrent_monitor, R26_monitor);
|
||||
__ addi(Rbot, Rscratch1, -frame::ijava_state_size);
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Null pointer exception.
|
||||
__ null_check_throw(Robj_to_lock, -1, R11_scratch1);
|
||||
__ null_check_throw(Robj_to_lock, -1, Rscratch1);
|
||||
|
||||
// Try to acquire a lock on the object.
|
||||
// Repeat until succeeded (i.e., until monitorenter returns true).
|
||||
// Check if any slot is present => short cut to allocation if not.
|
||||
__ cmpld(CCR0, Rcurrent_monitor, Rbot);
|
||||
__ beq(CCR0, Lallocate_new);
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Find a free slot in the monitor block.
|
||||
Label Lfound, Lexit, Lallocate_new;
|
||||
ConditionRegister found_free_slot = CCR0,
|
||||
found_same_obj = CCR1,
|
||||
reached_limit = CCR6;
|
||||
// Note: The order of the monitors is important for C2 OSR which derives the
|
||||
// unlock order from it (see comments for interpreter_frame_monitor_*).
|
||||
{
|
||||
Label Lloop, Lentry;
|
||||
Register Rlimit = Rcurrent_monitor;
|
||||
Label Lloop, LnotFree, Lexit;
|
||||
|
||||
// Set up search loop - start with topmost monitor.
|
||||
__ add(Rcurrent_obj_addr, BasicObjectLock::obj_offset_in_bytes(), R26_monitor);
|
||||
|
||||
__ ld(Rlimit, 0, R1_SP);
|
||||
__ addi(Rlimit, Rlimit, - (frame::ijava_state_size + frame::interpreter_frame_monitor_size_in_bytes() - BasicObjectLock::obj_offset_in_bytes())); // Monitor base
|
||||
|
||||
// Check if any slot is present => short cut to allocation if not.
|
||||
__ cmpld(reached_limit, Rcurrent_obj_addr, Rlimit);
|
||||
__ bgt(reached_limit, Lallocate_new);
|
||||
|
||||
// Pre-load topmost slot.
|
||||
__ ld(Rcurrent_obj, 0, Rcurrent_obj_addr);
|
||||
__ addi(Rcurrent_obj_addr, Rcurrent_obj_addr, frame::interpreter_frame_monitor_size() * wordSize);
|
||||
// The search loop.
|
||||
__ bind(Lloop);
|
||||
// Found free slot?
|
||||
__ cmpdi(found_free_slot, Rcurrent_obj, 0);
|
||||
// Is this entry for same obj? If so, stop the search and take the found
|
||||
// free slot or allocate a new one to enable recursive locking.
|
||||
__ cmpd(found_same_obj, Rcurrent_obj, Robj_to_lock);
|
||||
__ cmpld(reached_limit, Rcurrent_obj_addr, Rlimit);
|
||||
__ beq(found_free_slot, Lexit);
|
||||
__ beq(found_same_obj, Lallocate_new);
|
||||
__ bgt(reached_limit, Lallocate_new);
|
||||
// Check if last allocated BasicLockObj reached.
|
||||
__ ld(Rcurrent_obj, 0, Rcurrent_obj_addr);
|
||||
__ addi(Rcurrent_obj_addr, Rcurrent_obj_addr, frame::interpreter_frame_monitor_size() * wordSize);
|
||||
// Next iteration if unchecked BasicObjectLocks exist on the stack.
|
||||
__ b(Lloop);
|
||||
__ ld(Rcurrent_obj, BasicObjectLock::obj_offset_in_bytes(), Rcurrent_monitor);
|
||||
// Exit if current entry is for same object; this guarantees, that new monitor
|
||||
// used for recursive lock is above the older one.
|
||||
__ cmpd(CCR0, Rcurrent_obj, Robj_to_lock);
|
||||
__ beq(CCR0, Lexit); // recursive locking
|
||||
|
||||
__ cmpdi(CCR0, Rcurrent_obj, 0);
|
||||
__ bne(CCR0, LnotFree);
|
||||
__ mr(Rfree_slot, Rcurrent_monitor); // remember free slot closest to the bottom
|
||||
__ bind(LnotFree);
|
||||
|
||||
__ addi(Rcurrent_monitor, Rcurrent_monitor, frame::interpreter_frame_monitor_size_in_bytes());
|
||||
__ cmpld(CCR0, Rcurrent_monitor, Rbot);
|
||||
__ bne(CCR0, Lloop);
|
||||
__ bind(Lexit);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Check if we found a free slot.
|
||||
__ bind(Lexit);
|
||||
|
||||
__ addi(Rcurrent_monitor, Rcurrent_obj_addr, -(frame::interpreter_frame_monitor_size() * wordSize) - BasicObjectLock::obj_offset_in_bytes());
|
||||
__ addi(Rcurrent_obj_addr, Rcurrent_obj_addr, - frame::interpreter_frame_monitor_size() * wordSize);
|
||||
__ b(Lfound);
|
||||
__ cmpdi(CCR0, Rfree_slot, 0);
|
||||
__ bne(CCR0, Lfound);
|
||||
|
||||
// We didn't find a free BasicObjLock => allocate one.
|
||||
__ align(32, 12);
|
||||
__ bind(Lallocate_new);
|
||||
__ add_monitor_to_stack(false, Rscratch1, Rscratch2);
|
||||
__ mr(Rcurrent_monitor, R26_monitor);
|
||||
__ addi(Rcurrent_obj_addr, R26_monitor, BasicObjectLock::obj_offset_in_bytes());
|
||||
__ mr(Rfree_slot, R26_monitor);
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// We now have a slot to lock.
|
||||
__ bind(Lfound);
|
||||
|
||||
// Increment bcp to point to the next bytecode, so exception handling for async. exceptions work correctly.
|
||||
// The object has already been poped from the stack, so the expression stack looks correct.
|
||||
// The object has already been popped from the stack, so the expression stack looks correct.
|
||||
__ addi(R14_bcp, R14_bcp, 1);
|
||||
|
||||
__ std(Robj_to_lock, 0, Rcurrent_obj_addr);
|
||||
__ lock_object(Rcurrent_monitor, Robj_to_lock);
|
||||
__ std(Robj_to_lock, BasicObjectLock::obj_offset_in_bytes(), Rfree_slot);
|
||||
__ lock_object(Rfree_slot, Robj_to_lock);
|
||||
|
||||
// Check if there's enough space on the stack for the monitors after locking.
|
||||
// This emits a single store.
|
||||
@@ -4153,46 +4141,40 @@ void TemplateTable::monitorexit() {
|
||||
transition(atos, vtos);
|
||||
__ verify_oop(R17_tos);
|
||||
|
||||
Register Rcurrent_monitor = R11_scratch1,
|
||||
Rcurrent_obj = R12_scratch2,
|
||||
Register Rcurrent_monitor = R3_ARG1,
|
||||
Rcurrent_obj = R4_ARG2,
|
||||
Robj_to_lock = R17_tos,
|
||||
Rcurrent_obj_addr = R3_ARG1,
|
||||
Rlimit = R4_ARG2;
|
||||
Rscratch = R11_scratch1,
|
||||
Rbot = R12_scratch2;
|
||||
|
||||
Label Lfound, Lillegal_monitor_state;
|
||||
|
||||
// Check corner case: unbalanced monitorEnter / Exit.
|
||||
__ ld(Rlimit, 0, R1_SP);
|
||||
__ addi(Rlimit, Rlimit, - (frame::ijava_state_size + frame::interpreter_frame_monitor_size_in_bytes())); // Monitor base
|
||||
__ ld(Rscratch, _abi(callers_sp), R1_SP); // load FP
|
||||
|
||||
// Set up search loop - start with topmost monitor.
|
||||
__ mr(Rcurrent_monitor, R26_monitor);
|
||||
__ addi(Rbot, Rscratch, -frame::ijava_state_size);
|
||||
|
||||
// Null pointer check.
|
||||
__ null_check_throw(Robj_to_lock, -1, R11_scratch1);
|
||||
__ null_check_throw(Robj_to_lock, -1, Rscratch);
|
||||
|
||||
__ cmpld(CCR0, R26_monitor, Rlimit);
|
||||
__ bgt(CCR0, Lillegal_monitor_state);
|
||||
// Check corner case: unbalanced monitorEnter / Exit.
|
||||
__ cmpld(CCR0, Rcurrent_monitor, Rbot);
|
||||
__ beq(CCR0, Lillegal_monitor_state);
|
||||
|
||||
// Find the corresponding slot in the monitors stack section.
|
||||
{
|
||||
Label Lloop;
|
||||
|
||||
// Start with topmost monitor.
|
||||
__ addi(Rcurrent_obj_addr, R26_monitor, BasicObjectLock::obj_offset_in_bytes());
|
||||
__ addi(Rlimit, Rlimit, BasicObjectLock::obj_offset_in_bytes());
|
||||
__ ld(Rcurrent_obj, 0, Rcurrent_obj_addr);
|
||||
__ addi(Rcurrent_obj_addr, Rcurrent_obj_addr, frame::interpreter_frame_monitor_size() * wordSize);
|
||||
|
||||
__ bind(Lloop);
|
||||
__ ld(Rcurrent_obj, BasicObjectLock::obj_offset_in_bytes(), Rcurrent_monitor);
|
||||
// Is this entry for same obj?
|
||||
__ cmpd(CCR0, Rcurrent_obj, Robj_to_lock);
|
||||
__ beq(CCR0, Lfound);
|
||||
|
||||
// Check if last allocated BasicLockObj reached.
|
||||
|
||||
__ ld(Rcurrent_obj, 0, Rcurrent_obj_addr);
|
||||
__ cmpld(CCR0, Rcurrent_obj_addr, Rlimit);
|
||||
__ addi(Rcurrent_obj_addr, Rcurrent_obj_addr, frame::interpreter_frame_monitor_size() * wordSize);
|
||||
|
||||
// Next iteration if unchecked BasicObjectLocks exist on the stack.
|
||||
__ ble(CCR0, Lloop);
|
||||
__ addi(Rcurrent_monitor, Rcurrent_monitor, frame::interpreter_frame_monitor_size_in_bytes());
|
||||
__ cmpld(CCR0, Rcurrent_monitor, Rbot);
|
||||
__ bne(CCR0, Lloop);
|
||||
}
|
||||
|
||||
// Fell through without finding the basic obj lock => throw up!
|
||||
@@ -4202,8 +4184,6 @@ void TemplateTable::monitorexit() {
|
||||
|
||||
__ align(32, 12);
|
||||
__ bind(Lfound);
|
||||
__ addi(Rcurrent_monitor, Rcurrent_obj_addr,
|
||||
-(frame::interpreter_frame_monitor_size() * wordSize) - BasicObjectLock::obj_offset_in_bytes());
|
||||
__ unlock_object(Rcurrent_monitor);
|
||||
}
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
|
||||
#include "precompiled.hpp"
|
||||
#include "gc/shared/gcTimer.hpp"
|
||||
#include "gc/shared/gc_globals.hpp"
|
||||
#include "utilities/growableArray.hpp"
|
||||
|
||||
// the "time" parameter for most functions
|
||||
@@ -129,7 +130,7 @@ void TimePartitions::clear() {
|
||||
}
|
||||
|
||||
void TimePartitions::report_gc_phase_start(const char* name, const Ticks& time, GCPhase::PhaseType type) {
|
||||
assert(_phases->length() <= 1000, "Too many recored phases?");
|
||||
assert(UseZGC || _phases->length() <= 1000, "Too many recorded phases? (count: %d)", _phases->length());
|
||||
|
||||
int level = _active_phases.count();
|
||||
|
||||
|
||||
@@ -556,7 +556,8 @@ JfrConfigureFlightRecorderDCmd::JfrConfigureFlightRecorderDCmd(outputStream* out
|
||||
_thread_buffer_size("thread_buffer_size", "Size of a thread buffer", "MEMORY SIZE", false, "8k"),
|
||||
_memory_size("memorysize", "Overall memory size, ", "MEMORY SIZE", false, "10m"),
|
||||
_max_chunk_size("maxchunksize", "Size of an individual disk chunk", "MEMORY SIZE", false, "12m"),
|
||||
_sample_threads("samplethreads", "Activate Thread sampling", "BOOLEAN", false, "true") {
|
||||
_sample_threads("samplethreads", "Activate Thread sampling", "BOOLEAN", false, "true"),
|
||||
_verbose(true) {
|
||||
_dcmdparser.add_dcmd_option(&_repository_path);
|
||||
_dcmdparser.add_dcmd_option(&_dump_path);
|
||||
_dcmdparser.add_dcmd_option(&_stack_depth);
|
||||
@@ -643,7 +644,7 @@ void JfrConfigureFlightRecorderDCmd::execute(DCmdSource source, TRAPS) {
|
||||
|
||||
static const char klass[] = "jdk/jfr/internal/dcmd/DCmdConfigure";
|
||||
static const char method[] = "execute";
|
||||
static const char signature[] = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;"
|
||||
static const char signature[] = "(ZLjava/lang/String;Ljava/lang/String;Ljava/lang/Integer;"
|
||||
"Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;"
|
||||
"Ljava/lang/Long;Ljava/lang/Boolean;)Ljava/lang/String;";
|
||||
|
||||
@@ -651,6 +652,7 @@ void JfrConfigureFlightRecorderDCmd::execute(DCmdSource source, TRAPS) {
|
||||
execute_args.set_receiver(h_dcmd_instance);
|
||||
|
||||
// params
|
||||
execute_args.push_int(_verbose ? 1 : 0);
|
||||
execute_args.push_jobject(repository_path);
|
||||
execute_args.push_jobject(dump_path);
|
||||
execute_args.push_jobject(stack_depth);
|
||||
|
||||
@@ -150,9 +150,13 @@ class JfrConfigureFlightRecorderDCmd : public DCmdWithParser {
|
||||
DCmdArgument<MemorySizeArgument> _memory_size;
|
||||
DCmdArgument<MemorySizeArgument> _max_chunk_size;
|
||||
DCmdArgument<bool> _sample_threads;
|
||||
bool _verbose;
|
||||
|
||||
public:
|
||||
JfrConfigureFlightRecorderDCmd(outputStream* output, bool heap);
|
||||
void set_verbose(bool verbose) {
|
||||
_verbose = verbose;
|
||||
}
|
||||
static const char* name() {
|
||||
return "JFR.configure";
|
||||
}
|
||||
|
||||
@@ -366,6 +366,7 @@ bool JfrOptionSet::configure(TRAPS) {
|
||||
configure._sample_threads.set_is_set(_dcmd_sample_threads.is_set());
|
||||
configure._sample_threads.set_value(_dcmd_sample_threads.value());
|
||||
|
||||
configure.set_verbose(false);
|
||||
configure.execute(DCmd_Source_Internal, THREAD);
|
||||
|
||||
if (HAS_PENDING_EXCEPTION) {
|
||||
|
||||
@@ -60,6 +60,7 @@ import java.util.function.Supplier;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import jdk.internal.logger.LoggerFinderLoader.TemporaryLoggerFinder;
|
||||
import jdk.internal.util.StaticProperty;
|
||||
import jdk.internal.module.ModuleBootstrap;
|
||||
import jdk.internal.module.ServicesCatalog;
|
||||
@@ -1619,13 +1620,16 @@ public final class System {
|
||||
// We do not need to synchronize: LoggerFinderLoader will
|
||||
// always return the same instance, so if we don't have it,
|
||||
// just fetch it again.
|
||||
if (service == null) {
|
||||
LoggerFinder finder = service;
|
||||
if (finder == null) {
|
||||
PrivilegedAction<LoggerFinder> pa =
|
||||
() -> LoggerFinderLoader.getLoggerFinder();
|
||||
service = AccessController.doPrivileged(pa, null,
|
||||
finder = AccessController.doPrivileged(pa, null,
|
||||
LOGGERFINDER_PERMISSION);
|
||||
if (finder instanceof TemporaryLoggerFinder) return finder;
|
||||
service = finder;
|
||||
}
|
||||
return service;
|
||||
return finder;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -216,6 +216,7 @@ public final class Objects {
|
||||
* @return {@code obj} if not {@code null}
|
||||
* @throws NullPointerException if {@code obj} is {@code null}
|
||||
*/
|
||||
@ForceInline
|
||||
public static <T> T requireNonNull(T obj) {
|
||||
if (obj == null)
|
||||
throw new NullPointerException();
|
||||
@@ -241,6 +242,7 @@ public final class Objects {
|
||||
* @return {@code obj} if not {@code null}
|
||||
* @throws NullPointerException if {@code obj} is {@code null}
|
||||
*/
|
||||
@ForceInline
|
||||
public static <T> T requireNonNull(T obj, String message) {
|
||||
if (obj == null)
|
||||
throw new NullPointerException(message);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -38,7 +38,6 @@ import java.util.function.Function;
|
||||
import java.util.function.Supplier;
|
||||
import java.lang.System.LoggerFinder;
|
||||
import java.lang.System.Logger;
|
||||
import java.lang.System.Logger.Level;
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.ExecutionException;
|
||||
@@ -228,9 +227,19 @@ public final class BootstrapLogger implements Logger, PlatformLogger.Bridge,
|
||||
|
||||
// The accessor in which this logger is temporarily set.
|
||||
final LazyLoggerAccessor holder;
|
||||
// tests whether the logger is invoked by the loading thread before
|
||||
// the LoggerFinder is loaded; can be null;
|
||||
final BooleanSupplier isLoadingThread;
|
||||
|
||||
BootstrapLogger(LazyLoggerAccessor holder) {
|
||||
// returns true if the logger is invoked by the loading thread before the
|
||||
// LoggerFinder service is loaded
|
||||
boolean isLoadingThread() {
|
||||
return isLoadingThread != null && isLoadingThread.getAsBoolean();
|
||||
}
|
||||
|
||||
BootstrapLogger(LazyLoggerAccessor holder, BooleanSupplier isLoadingThread) {
|
||||
this.holder = holder;
|
||||
this.isLoadingThread = isLoadingThread;
|
||||
}
|
||||
|
||||
// Temporary data object storing log events
|
||||
@@ -499,14 +508,15 @@ public final class BootstrapLogger implements Logger, PlatformLogger.Bridge,
|
||||
static void log(LogEvent log, PlatformLogger.Bridge logger) {
|
||||
final SecurityManager sm = System.getSecurityManager();
|
||||
if (sm == null || log.acc == null) {
|
||||
log.log(logger);
|
||||
BootstrapExecutors.submit(() -> log.log(logger));
|
||||
} else {
|
||||
// not sure we can actually use lambda here. We may need to create
|
||||
// an anonymous class. Although if we reach here, then it means
|
||||
// the VM is booted.
|
||||
AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
|
||||
log.log(logger); return null;
|
||||
}, log.acc);
|
||||
BootstrapExecutors.submit(() ->
|
||||
AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
|
||||
log.log(logger); return null;
|
||||
}, log.acc));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -553,8 +563,9 @@ public final class BootstrapLogger implements Logger, PlatformLogger.Bridge,
|
||||
* @return true if the VM is still bootstrapping.
|
||||
*/
|
||||
boolean checkBootstrapping() {
|
||||
if (isBooted()) {
|
||||
if (isBooted() && !isLoadingThread()) {
|
||||
BootstrapExecutors.flush();
|
||||
holder.getConcreteLogger(this);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
@@ -928,10 +939,16 @@ public final class BootstrapLogger implements Logger, PlatformLogger.Bridge,
|
||||
// - the logging backend is a custom backend
|
||||
// - the logging backend is JUL, there is no custom config,
|
||||
// and the LogManager has not been initialized yet.
|
||||
public static synchronized boolean useLazyLoggers() {
|
||||
return !BootstrapLogger.isBooted()
|
||||
|| DetectBackend.detectedBackend == LoggingBackend.CUSTOM
|
||||
|| useSurrogateLoggers();
|
||||
public static boolean useLazyLoggers() {
|
||||
// Note: avoid triggering the initialization of the DetectBackend class
|
||||
// while holding the BootstrapLogger class monitor
|
||||
if (!BootstrapLogger.isBooted() ||
|
||||
DetectBackend.detectedBackend == LoggingBackend.CUSTOM) {
|
||||
return true;
|
||||
}
|
||||
synchronized (BootstrapLogger.class) {
|
||||
return useSurrogateLoggers();
|
||||
}
|
||||
}
|
||||
|
||||
// Called by LazyLoggerAccessor. This method will determine whether
|
||||
@@ -939,9 +956,9 @@ public final class BootstrapLogger implements Logger, PlatformLogger.Bridge,
|
||||
// a SurrogateLogger (if JUL is the default backend and there
|
||||
// is no custom JUL configuration and LogManager is not yet initialized),
|
||||
// or a logger returned by the loaded LoggerFinder (all other cases).
|
||||
static Logger getLogger(LazyLoggerAccessor accessor) {
|
||||
if (!BootstrapLogger.isBooted()) {
|
||||
return new BootstrapLogger(accessor);
|
||||
static Logger getLogger(LazyLoggerAccessor accessor, BooleanSupplier isLoading) {
|
||||
if (!BootstrapLogger.isBooted() || isLoading != null && isLoading.getAsBoolean()) {
|
||||
return new BootstrapLogger(accessor, isLoading);
|
||||
} else {
|
||||
if (useSurrogateLoggers()) {
|
||||
// JUL is the default backend, there is no custom configuration,
|
||||
@@ -957,6 +974,12 @@ public final class BootstrapLogger implements Logger, PlatformLogger.Bridge,
|
||||
}
|
||||
}
|
||||
|
||||
// trigger class initialization outside of holding lock
|
||||
static void ensureBackendDetected() {
|
||||
assert VM.isBooted() : "VM is not booted";
|
||||
// triggers detection of the backend
|
||||
var backend = DetectBackend.detectedBackend;
|
||||
}
|
||||
|
||||
// If the backend is JUL, and there is no custom configuration, and
|
||||
// nobody has attempted to call LogManager.getLogManager() yet, then
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -32,6 +32,9 @@ import java.lang.System.LoggerFinder;
|
||||
import java.lang.System.Logger;
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.Objects;
|
||||
import java.util.function.BooleanSupplier;
|
||||
|
||||
import jdk.internal.logger.LoggerFinderLoader.TemporaryLoggerFinder;
|
||||
import jdk.internal.misc.VM;
|
||||
import sun.util.logging.PlatformLogger;
|
||||
|
||||
@@ -110,6 +113,9 @@ public final class LazyLoggers {
|
||||
// We need to pass the actual caller module when creating the logger.
|
||||
private final WeakReference<Module> moduleRef;
|
||||
|
||||
// whether this is the loading thread, can be null
|
||||
private final BooleanSupplier isLoadingThread;
|
||||
|
||||
// The name of the logger that will be created lazyly
|
||||
final String name;
|
||||
// The plain logger SPI object - null until it is accessed for the
|
||||
@@ -122,16 +128,24 @@ public final class LazyLoggers {
|
||||
private LazyLoggerAccessor(String name,
|
||||
LazyLoggerFactories<? extends Logger> factories,
|
||||
Module module) {
|
||||
this(Objects.requireNonNull(name), Objects.requireNonNull(factories),
|
||||
Objects.requireNonNull(module), null);
|
||||
this(name, factories, module, null);
|
||||
}
|
||||
|
||||
private LazyLoggerAccessor(String name,
|
||||
LazyLoggerFactories<? extends Logger> factories,
|
||||
Module module, Void unused) {
|
||||
Module module, BooleanSupplier isLoading) {
|
||||
|
||||
this(Objects.requireNonNull(name), Objects.requireNonNull(factories),
|
||||
Objects.requireNonNull(module), isLoading, null);
|
||||
}
|
||||
|
||||
private LazyLoggerAccessor(String name,
|
||||
LazyLoggerFactories<? extends Logger> factories,
|
||||
Module module, BooleanSupplier isLoading, Void unused) {
|
||||
this.name = name;
|
||||
this.factories = factories;
|
||||
this.moduleRef = new WeakReference<>(module);
|
||||
this.isLoadingThread = isLoading;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -162,7 +176,7 @@ public final class LazyLoggers {
|
||||
// BootstrapLogger has the logic to decide whether to invoke the
|
||||
// SPI or use a temporary (BootstrapLogger or SimpleConsoleLogger)
|
||||
// logger.
|
||||
wrapped = BootstrapLogger.getLogger(this);
|
||||
wrapped = BootstrapLogger.getLogger(this, isLoadingThread);
|
||||
synchronized(this) {
|
||||
// if w has already been in between, simply drop 'wrapped'.
|
||||
setWrappedIfNotSet(wrapped);
|
||||
@@ -194,7 +208,7 @@ public final class LazyLoggers {
|
||||
// BootstrapLogger has the logic to decide whether to invoke the
|
||||
// SPI or use a temporary (BootstrapLogger or SimpleConsoleLogger)
|
||||
// logger.
|
||||
final Logger wrapped = BootstrapLogger.getLogger(this);
|
||||
final Logger wrapped = BootstrapLogger.getLogger(this, isLoadingThread);
|
||||
synchronized(this) {
|
||||
// if w has already been set, simply drop 'wrapped'.
|
||||
setWrappedIfNotSet(wrapped);
|
||||
@@ -282,10 +296,10 @@ public final class LazyLoggers {
|
||||
* Creates a new lazy logger accessor for the named logger. The given
|
||||
* factories will be use when it becomes necessary to actually create
|
||||
* the logger.
|
||||
* @param <T> An interface that extends {@link Logger}.
|
||||
* @param name The logger name.
|
||||
* @param factories The factories that should be used to create the
|
||||
* wrapped logger.
|
||||
* @param module The module for which the logger is being created
|
||||
* @return A new LazyLoggerAccessor.
|
||||
*/
|
||||
public static LazyLoggerAccessor makeAccessor(String name,
|
||||
@@ -339,6 +353,7 @@ public final class LazyLoggers {
|
||||
prov = sm == null ? LoggerFinder.getLoggerFinder() :
|
||||
AccessController.doPrivileged(
|
||||
(PrivilegedAction<LoggerFinder>)LoggerFinder::getLoggerFinder);
|
||||
if (prov instanceof TemporaryLoggerFinder) return prov;
|
||||
provider = prov;
|
||||
}
|
||||
return prov;
|
||||
@@ -358,7 +373,6 @@ public final class LazyLoggers {
|
||||
new LazyLoggerFactories<>(loggerSupplier);
|
||||
|
||||
|
||||
|
||||
// A concrete implementation of Logger that delegates to a System.Logger,
|
||||
// but only creates the System.Logger instance lazily when it's used for
|
||||
// the first time.
|
||||
@@ -376,6 +390,11 @@ public final class LazyLoggers {
|
||||
}
|
||||
}
|
||||
|
||||
static Logger makeLazyLogger(String name, Module module, BooleanSupplier isLoading) {
|
||||
final LazyLoggerAccessor holder = new LazyLoggerAccessor(name, factories, module, isLoading);
|
||||
return new JdkLazyLogger(holder, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a logger from the LoggerFinder. Creates the actual concrete
|
||||
* logger.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -25,6 +25,8 @@
|
||||
package jdk.internal.logger;
|
||||
|
||||
import java.io.FilePermission;
|
||||
import java.lang.System.Logger;
|
||||
import java.lang.System.LoggerFinder;
|
||||
import java.security.AccessController;
|
||||
import java.security.Permission;
|
||||
import java.security.PrivilegedAction;
|
||||
@@ -32,6 +34,9 @@ import java.util.Iterator;
|
||||
import java.util.Locale;
|
||||
import java.util.ServiceConfigurationError;
|
||||
import java.util.ServiceLoader;
|
||||
import java.util.function.BooleanSupplier;
|
||||
|
||||
import jdk.internal.vm.annotation.Stable;
|
||||
import sun.security.util.SecurityConstants;
|
||||
import sun.security.action.GetPropertyAction;
|
||||
|
||||
@@ -64,13 +69,28 @@ public final class LoggerFinderLoader {
|
||||
throw new InternalError("LoggerFinderLoader cannot be instantiated");
|
||||
}
|
||||
|
||||
|
||||
// record the loadingThread while loading the backend
|
||||
static volatile Thread loadingThread;
|
||||
// Return the loaded LoggerFinder, or load it if not already loaded.
|
||||
private static System.LoggerFinder service() {
|
||||
if (service != null) return service;
|
||||
// ensure backend is detected before attempting to load the finder
|
||||
BootstrapLogger.ensureBackendDetected();
|
||||
synchronized(lock) {
|
||||
if (service != null) return service;
|
||||
service = loadLoggerFinder();
|
||||
Thread currentThread = Thread.currentThread();
|
||||
if (loadingThread == currentThread) {
|
||||
// recursive attempt to load the backend while loading the backend
|
||||
// use a temporary logger finder that returns special BootstrapLogger
|
||||
// which will wait until loading is finished
|
||||
return TemporaryLoggerFinder.INSTANCE;
|
||||
}
|
||||
loadingThread = currentThread;
|
||||
try {
|
||||
service = loadLoggerFinder();
|
||||
} finally {
|
||||
loadingThread = null;
|
||||
}
|
||||
}
|
||||
// Since the LoggerFinder is already loaded - we can stop using
|
||||
// temporary loggers.
|
||||
@@ -78,6 +98,12 @@ public final class LoggerFinderLoader {
|
||||
return service;
|
||||
}
|
||||
|
||||
// returns true if called by the thread that loads the LoggerFinder, while
|
||||
// loading the LoggerFinder.
|
||||
static boolean isLoadingThread() {
|
||||
return loadingThread != null && loadingThread == Thread.currentThread();
|
||||
}
|
||||
|
||||
// Get configuration error policy
|
||||
private static ErrorPolicy configurationErrorPolicy() {
|
||||
String errorPolicy =
|
||||
@@ -115,6 +141,34 @@ public final class LoggerFinderLoader {
|
||||
return iterator;
|
||||
}
|
||||
|
||||
public static final class TemporaryLoggerFinder extends LoggerFinder {
|
||||
private TemporaryLoggerFinder() {}
|
||||
@Stable
|
||||
private LoggerFinder loadedService;
|
||||
|
||||
private static final BooleanSupplier isLoadingThread = new BooleanSupplier() {
|
||||
@Override
|
||||
public boolean getAsBoolean() {
|
||||
return LoggerFinderLoader.isLoadingThread();
|
||||
}
|
||||
};
|
||||
private static final TemporaryLoggerFinder INSTANCE = new TemporaryLoggerFinder();
|
||||
|
||||
@Override
|
||||
public Logger getLogger(String name, Module module) {
|
||||
if (loadedService == null) {
|
||||
loadedService = service;
|
||||
if (loadedService == null) {
|
||||
return LazyLoggers.makeLazyLogger(name, module, isLoadingThread);
|
||||
}
|
||||
}
|
||||
assert loadedService != null;
|
||||
assert !LoggerFinderLoader.isLoadingThread();
|
||||
assert loadedService != this;
|
||||
return LazyLoggers.getLogger(name, module);
|
||||
}
|
||||
}
|
||||
|
||||
// Loads the LoggerFinder using ServiceLoader. If no LoggerFinder
|
||||
// is found returns the default (possibly JUL based) implementation
|
||||
private static System.LoggerFinder loadLoggerFinder() {
|
||||
|
||||
@@ -134,10 +134,10 @@ int main(int argc, char *argv[]) {
|
||||
ChildStuff c;
|
||||
int t;
|
||||
struct stat buf;
|
||||
/* argv[0] contains the fd number to read all the child info */
|
||||
/* argv[1] contains the fd number to read all the child info */
|
||||
int r, fdin, fdout;
|
||||
|
||||
r = sscanf (argv[argc-1], "%d:%d", &fdin, &fdout);
|
||||
r = sscanf (argv[1], "%d:%d", &fdin, &fdout);
|
||||
if (r == 2 && fcntl(fdin, F_GETFD) != -1) {
|
||||
fstat(fdin, &buf);
|
||||
if (!S_ISFIFO(buf.st_mode))
|
||||
|
||||
@@ -394,16 +394,20 @@ spawnChild(JNIEnv *env, jobject process, ChildStuff *c, const char *helperpath)
|
||||
jboolean isCopy;
|
||||
int i, offset, rval, bufsize, magic;
|
||||
char *buf, buf1[16];
|
||||
char *hlpargs[2];
|
||||
char *hlpargs[3];
|
||||
SpawnInfo sp;
|
||||
|
||||
/* need to tell helper which fd is for receiving the childstuff
|
||||
* and which fd to send response back on
|
||||
*/
|
||||
snprintf(buf1, sizeof(buf1), "%d:%d", c->childenv[0], c->fail[1]);
|
||||
/* put the fd string as argument to the helper cmd */
|
||||
hlpargs[0] = buf1;
|
||||
hlpargs[1] = 0;
|
||||
/* NULL-terminated argv array.
|
||||
* argv[0] contains path to jspawnhelper, to follow conventions.
|
||||
* argv[1] contains the fd string as argument to jspawnhelper
|
||||
*/
|
||||
hlpargs[0] = (char*)helperpath;
|
||||
hlpargs[1] = buf1;
|
||||
hlpargs[2] = NULL;
|
||||
|
||||
/* Following items are sent down the pipe to the helper
|
||||
* after it is spawned.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 2020, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -23,32 +23,30 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
*/
|
||||
#include <sys/types.h>
|
||||
#include <sys/uio.h>
|
||||
#include <sys/socket.h>
|
||||
#include <string.h>
|
||||
#include <limits.h>
|
||||
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
#include "jvm.h"
|
||||
#include "jlong.h"
|
||||
#include "sun_nio_ch_DatagramDispatcher.h"
|
||||
#include <sys/types.h>
|
||||
#include <sys/uio.h>
|
||||
#include <sys/socket.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "nio.h"
|
||||
#include "nio_util.h"
|
||||
#include <limits.h>
|
||||
#include "sun_nio_ch_DatagramDispatcher.h"
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_sun_nio_ch_DatagramDispatcher_read0(JNIEnv *env, jclass clazz,
|
||||
jobject fdo, jlong address, jint len)
|
||||
jobject fdo, jlong address, jint len)
|
||||
{
|
||||
jint fd = fdval(env, fdo);
|
||||
void *buf = (void *)jlong_to_ptr(address);
|
||||
int result = recv(fd, buf, len, 0);
|
||||
if (result < 0 && errno == ECONNREFUSED) {
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return -2;
|
||||
return IOS_THROWN;
|
||||
}
|
||||
return convertReturnVal(env, result, JNI_TRUE);
|
||||
}
|
||||
@@ -56,7 +54,7 @@ Java_sun_nio_ch_DatagramDispatcher_read0(JNIEnv *env, jclass clazz,
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
Java_sun_nio_ch_DatagramDispatcher_readv0(JNIEnv *env, jclass clazz,
|
||||
jobject fdo, jlong address, jint len)
|
||||
jobject fdo, jlong address, jint len)
|
||||
{
|
||||
jint fd = fdval(env, fdo);
|
||||
ssize_t result = 0;
|
||||
@@ -74,28 +72,28 @@ Java_sun_nio_ch_DatagramDispatcher_readv0(JNIEnv *env, jclass clazz,
|
||||
result = recvmsg(fd, &m, 0);
|
||||
if (result < 0 && errno == ECONNREFUSED) {
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return -2;
|
||||
return IOS_THROWN;
|
||||
}
|
||||
return convertLongReturnVal(env, (jlong)result, JNI_TRUE);
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_sun_nio_ch_DatagramDispatcher_write0(JNIEnv *env, jclass clazz,
|
||||
jobject fdo, jlong address, jint len)
|
||||
jobject fdo, jlong address, jint len)
|
||||
{
|
||||
jint fd = fdval(env, fdo);
|
||||
void *buf = (void *)jlong_to_ptr(address);
|
||||
int result = send(fd, buf, len, 0);
|
||||
if (result < 0 && errno == ECONNREFUSED) {
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return -2;
|
||||
return IOS_THROWN;
|
||||
}
|
||||
return convertReturnVal(env, result, JNI_FALSE);
|
||||
}
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
Java_sun_nio_ch_DatagramDispatcher_writev0(JNIEnv *env, jclass clazz,
|
||||
jobject fdo, jlong address, jint len)
|
||||
jobject fdo, jlong address, jint len)
|
||||
{
|
||||
jint fd = fdval(env, fdo);
|
||||
struct iovec *iov = (struct iovec *)jlong_to_ptr(address);
|
||||
@@ -113,7 +111,7 @@ Java_sun_nio_ch_DatagramDispatcher_writev0(JNIEnv *env, jclass clazz,
|
||||
result = sendmsg(fd, &m, 0);
|
||||
if (result < 0 && errno == ECONNREFUSED) {
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return -2;
|
||||
return IOS_THROWN;
|
||||
}
|
||||
return convertLongReturnVal(env, (jlong)result, JNI_FALSE);
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2002, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 2020, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -23,21 +23,19 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
*/
|
||||
|
||||
#include <windows.h>
|
||||
#include <winsock2.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
#include "jvm.h"
|
||||
#include "jlong.h"
|
||||
#include "sun_nio_ch_DatagramDispatcher.h"
|
||||
|
||||
#include "nio.h"
|
||||
#include "nio_util.h"
|
||||
|
||||
#include "sun_nio_ch_DatagramDispatcher.h"
|
||||
|
||||
|
||||
/**************************************************************
|
||||
* DatagramDispatcher.c
|
||||
@@ -45,7 +43,7 @@
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_sun_nio_ch_DatagramDispatcher_read0(JNIEnv *env, jclass clazz, jobject fdo,
|
||||
jlong address, jint len)
|
||||
jlong address, jint len)
|
||||
{
|
||||
/* set up */
|
||||
int i = 0;
|
||||
@@ -69,16 +67,18 @@ Java_sun_nio_ch_DatagramDispatcher_read0(JNIEnv *env, jclass clazz, jobject fdo,
|
||||
|
||||
if (i == SOCKET_ERROR) {
|
||||
int theErr = (jint)WSAGetLastError();
|
||||
if (theErr == WSAEWOULDBLOCK) {
|
||||
return IOS_UNAVAILABLE;
|
||||
}
|
||||
if (theErr == WSAECONNRESET) {
|
||||
purgeOutstandingICMP(env, clazz, fd);
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
if (theErr != WSAEMSGSIZE) {
|
||||
if (theErr == WSAEWOULDBLOCK) {
|
||||
return IOS_UNAVAILABLE;
|
||||
}
|
||||
if (theErr == WSAECONNRESET) {
|
||||
purgeOutstandingICMP(env, clazz, fd);
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return IOS_THROWN;
|
||||
}
|
||||
JNU_ThrowIOExceptionWithLastError(env, "WSARecv failed");
|
||||
return IOS_THROWN;
|
||||
}
|
||||
JNU_ThrowIOExceptionWithLastError(env, "Write failed");
|
||||
return IOS_THROWN;
|
||||
}
|
||||
|
||||
return convertReturnVal(env, (jint)read, JNI_TRUE);
|
||||
@@ -104,7 +104,7 @@ Java_sun_nio_ch_DatagramDispatcher_readv0(JNIEnv *env, jclass clazz,
|
||||
for(i=0; i<len; i++) {
|
||||
bufs[i].buf = (char *)iovp[i].iov_base;
|
||||
bufs[i].len = (u_long)iovp[i].iov_len;
|
||||
}
|
||||
}
|
||||
|
||||
/* read into the buffers */
|
||||
i = WSARecv((SOCKET)fd, /* Socket */
|
||||
@@ -120,16 +120,18 @@ Java_sun_nio_ch_DatagramDispatcher_readv0(JNIEnv *env, jclass clazz,
|
||||
|
||||
if (i != 0) {
|
||||
int theErr = (jint)WSAGetLastError();
|
||||
if (theErr == WSAEWOULDBLOCK) {
|
||||
return IOS_UNAVAILABLE;
|
||||
}
|
||||
if (theErr == WSAECONNRESET) {
|
||||
purgeOutstandingICMP(env, clazz, fd);
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
if (theErr != WSAEMSGSIZE) {
|
||||
if (theErr == WSAEWOULDBLOCK) {
|
||||
return IOS_UNAVAILABLE;
|
||||
}
|
||||
if (theErr == WSAECONNRESET) {
|
||||
purgeOutstandingICMP(env, clazz, fd);
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return IOS_THROWN;
|
||||
}
|
||||
JNU_ThrowIOExceptionWithLastError(env, "WSARecv failed");
|
||||
return IOS_THROWN;
|
||||
}
|
||||
JNU_ThrowIOExceptionWithLastError(env, "Write failed");
|
||||
return IOS_THROWN;
|
||||
}
|
||||
|
||||
return convertLongReturnVal(env, (jlong)read, JNI_TRUE);
|
||||
@@ -169,7 +171,7 @@ Java_sun_nio_ch_DatagramDispatcher_write0(JNIEnv *env, jclass clazz,
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return IOS_THROWN;
|
||||
}
|
||||
JNU_ThrowIOExceptionWithLastError(env, "Write failed");
|
||||
JNU_ThrowIOExceptionWithLastError(env, "WSASend failed");
|
||||
return IOS_THROWN;
|
||||
}
|
||||
|
||||
@@ -178,7 +180,7 @@ Java_sun_nio_ch_DatagramDispatcher_write0(JNIEnv *env, jclass clazz,
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
Java_sun_nio_ch_DatagramDispatcher_writev0(JNIEnv *env, jclass clazz,
|
||||
jobject fdo, jlong address, jint len)
|
||||
jobject fdo, jlong address, jint len)
|
||||
{
|
||||
/* set up */
|
||||
int i = 0;
|
||||
@@ -219,7 +221,7 @@ Java_sun_nio_ch_DatagramDispatcher_writev0(JNIEnv *env, jclass clazz,
|
||||
JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException", 0);
|
||||
return IOS_THROWN;
|
||||
}
|
||||
JNU_ThrowIOExceptionWithLastError(env, "Write failed");
|
||||
JNU_ThrowIOExceptionWithLastError(env, "WSASend failed");
|
||||
return IOS_THROWN;
|
||||
}
|
||||
|
||||
|
||||
@@ -67,7 +67,8 @@ public class ProgressMonitorInputStream extends FilterInputStream
|
||||
private ProgressMonitor monitor;
|
||||
private int nread = 0;
|
||||
private int size = 0;
|
||||
|
||||
Component parentComponent;
|
||||
Object message;
|
||||
|
||||
/**
|
||||
* Constructs an object to monitor the progress of an input stream.
|
||||
@@ -88,6 +89,8 @@ public class ProgressMonitorInputStream extends FilterInputStream
|
||||
catch(IOException ioe) {
|
||||
size = 0;
|
||||
}
|
||||
this.parentComponent = parentComponent;
|
||||
this.message = message;
|
||||
monitor = new ProgressMonitor(parentComponent, message, null, 0, size);
|
||||
}
|
||||
|
||||
@@ -119,6 +122,25 @@ public class ProgressMonitorInputStream extends FilterInputStream
|
||||
return c;
|
||||
}
|
||||
|
||||
private void setProgress(int nr) throws IOException {
|
||||
if (nr > 0) {
|
||||
if (nread + nr > nread) {
|
||||
monitor.setProgress(nread += nr);
|
||||
} else {
|
||||
size = in.available();
|
||||
nread = 0;
|
||||
monitor.close();
|
||||
monitor = new ProgressMonitor(this.parentComponent,
|
||||
this.message, null, 0, size);
|
||||
}
|
||||
}
|
||||
if (monitor.isCanceled()) {
|
||||
InterruptedIOException exc =
|
||||
new InterruptedIOException("progress");
|
||||
exc.bytesTransferred = nread;
|
||||
throw exc;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Overrides <code>FilterInputStream.read</code>
|
||||
@@ -126,13 +148,7 @@ public class ProgressMonitorInputStream extends FilterInputStream
|
||||
*/
|
||||
public int read(byte b[]) throws IOException {
|
||||
int nr = in.read(b);
|
||||
if (nr > 0) monitor.setProgress(nread += nr);
|
||||
if (monitor.isCanceled()) {
|
||||
InterruptedIOException exc =
|
||||
new InterruptedIOException("progress");
|
||||
exc.bytesTransferred = nread;
|
||||
throw exc;
|
||||
}
|
||||
setProgress(nr);
|
||||
return nr;
|
||||
}
|
||||
|
||||
@@ -145,13 +161,7 @@ public class ProgressMonitorInputStream extends FilterInputStream
|
||||
int off,
|
||||
int len) throws IOException {
|
||||
int nr = in.read(b, off, len);
|
||||
if (nr > 0) monitor.setProgress(nread += nr);
|
||||
if (monitor.isCanceled()) {
|
||||
InterruptedIOException exc =
|
||||
new InterruptedIOException("progress");
|
||||
exc.bytesTransferred = nread;
|
||||
throw exc;
|
||||
}
|
||||
setProgress(nr);
|
||||
return nr;
|
||||
}
|
||||
|
||||
@@ -162,7 +172,13 @@ public class ProgressMonitorInputStream extends FilterInputStream
|
||||
*/
|
||||
public long skip(long n) throws IOException {
|
||||
long nr = in.skip(n);
|
||||
if (nr > 0) monitor.setProgress(nread += nr);
|
||||
if (nr > 0) {
|
||||
if ((int)(nread + nr) > nread) {
|
||||
monitor.setProgress(nread += nr);
|
||||
} else {
|
||||
monitor.setProgress(monitor.getMaximum());
|
||||
}
|
||||
}
|
||||
return nr;
|
||||
}
|
||||
|
||||
|
||||
@@ -41,12 +41,19 @@ public abstract class PhysicalFont extends Font2D {
|
||||
protected Object nativeNames;
|
||||
|
||||
public boolean equals(Object o) {
|
||||
return (o != null && o.getClass() == this.getClass() &&
|
||||
((Font2D)o).fullName.equals(this.fullName));
|
||||
if (o == null || o.getClass() != this.getClass()) {
|
||||
return false;
|
||||
}
|
||||
PhysicalFont other = (PhysicalFont)o;
|
||||
return
|
||||
(this.fullName.equals(other.fullName)) &&
|
||||
((this.platName == null && other.platName == null) ||
|
||||
(this.platName != null && this.platName.equals(other.platName)));
|
||||
}
|
||||
|
||||
public int hashCode() {
|
||||
return fullName.hashCode();
|
||||
return fullName.hashCode() +
|
||||
(platName != null ? platName.hashCode() : 0);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -314,8 +314,9 @@ public abstract class CachedPainter {
|
||||
|
||||
@Override
|
||||
public Image getResolutionVariant(double destWidth, double destHeight) {
|
||||
int w = (int) Math.ceil(destWidth);
|
||||
int h = (int) Math.ceil(destHeight);
|
||||
int w = (int) Math.floor(destWidth + 0.5);
|
||||
int h = (int) Math.floor(destHeight + 0.5);
|
||||
|
||||
return getImage(PainterMultiResolutionCachedImage.class,
|
||||
c, baseWidth, baseHeight, w, h, args);
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -147,7 +147,7 @@ final class ListHelper implements XScrollbarClient {
|
||||
}
|
||||
|
||||
void removeAll() {
|
||||
items.removeAll(items);
|
||||
items.clear();
|
||||
updateScrollbars();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -40,10 +40,13 @@
|
||||
|
||||
package com.sun.java.swing.plaf.windows;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.*;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Insets;
|
||||
import java.awt.Point;
|
||||
import java.util.EnumMap;
|
||||
import javax.swing.JComponent;
|
||||
|
||||
import sun.awt.windows.ThemeReader;
|
||||
|
||||
@@ -55,7 +58,7 @@ import sun.awt.windows.ThemeReader;
|
||||
*
|
||||
* @author Leif Samuelsson
|
||||
*/
|
||||
class TMSchema {
|
||||
public final class TMSchema {
|
||||
|
||||
/**
|
||||
* An enumeration of the various Windows controls (also known as
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2002, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -40,14 +40,41 @@
|
||||
|
||||
package com.sun.java.swing.plaf.windows;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.image.*;
|
||||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.GraphicsConfiguration;
|
||||
import java.awt.Image;
|
||||
import java.awt.Insets;
|
||||
import java.awt.Point;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.Toolkit;
|
||||
import java.awt.geom.AffineTransform;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.awt.image.DataBufferInt;
|
||||
import java.awt.image.WritableRaster;
|
||||
import java.security.AccessController;
|
||||
import java.util.*;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.*;
|
||||
import javax.swing.plaf.*;
|
||||
import javax.swing.AbstractButton;
|
||||
import javax.swing.CellRendererPane;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JCheckBox;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JComponent;
|
||||
import javax.swing.JRadioButton;
|
||||
import javax.swing.JToolBar;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.UIManager;
|
||||
import javax.swing.border.AbstractBorder;
|
||||
import javax.swing.border.Border;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.border.LineBorder;
|
||||
import javax.swing.plaf.ColorUIResource;
|
||||
import javax.swing.plaf.InsetsUIResource;
|
||||
import javax.swing.plaf.UIResource;
|
||||
import javax.swing.text.JTextComponent;
|
||||
|
||||
import sun.awt.image.SunWritableRaster;
|
||||
@@ -55,8 +82,10 @@ import sun.awt.windows.ThemeReader;
|
||||
import sun.security.action.GetPropertyAction;
|
||||
import sun.swing.CachedPainter;
|
||||
|
||||
import static com.sun.java.swing.plaf.windows.TMSchema.*;
|
||||
|
||||
import static com.sun.java.swing.plaf.windows.TMSchema.Part;
|
||||
import static com.sun.java.swing.plaf.windows.TMSchema.Prop;
|
||||
import static com.sun.java.swing.plaf.windows.TMSchema.State;
|
||||
import static com.sun.java.swing.plaf.windows.TMSchema.TypeEnum;
|
||||
|
||||
/**
|
||||
* Implements Windows XP Styles for the Windows Look and Feel.
|
||||
@@ -675,6 +704,11 @@ class XPStyle {
|
||||
w = bi.getWidth();
|
||||
h = bi.getHeight();
|
||||
|
||||
// Get DPI to pass further to ThemeReader.paintBackground()
|
||||
Graphics2D g2d = (Graphics2D) g;
|
||||
AffineTransform at = g2d.getTransform();
|
||||
int dpi = (int)(at.getScaleX() * 96);
|
||||
|
||||
WritableRaster raster = bi.getRaster();
|
||||
DataBufferInt dbi = (DataBufferInt)raster.getDataBuffer();
|
||||
// Note that stealData() requires a markDirty() afterwards
|
||||
@@ -682,7 +716,8 @@ class XPStyle {
|
||||
ThemeReader.paintBackground(SunWritableRaster.stealData(dbi, 0),
|
||||
part.getControlName(c), part.getValue(),
|
||||
State.getValue(part, state),
|
||||
0, 0, w, h, w);
|
||||
0, 0, w, h, w, dpi);
|
||||
|
||||
SunWritableRaster.markDirty(dbi);
|
||||
}
|
||||
|
||||
|
||||
@@ -30,11 +30,14 @@ import java.awt.Dimension;
|
||||
import java.awt.Insets;
|
||||
import java.awt.Point;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.locks.Lock;
|
||||
import java.util.concurrent.locks.ReadWriteLock;
|
||||
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||
|
||||
import static com.sun.java.swing.plaf.windows.TMSchema.Part;
|
||||
|
||||
/* !!!! WARNING !!!!
|
||||
* This class has to be in sync with
|
||||
* src/solaris/classes/sun/awt/windows/ThemeReader.java
|
||||
@@ -51,7 +54,24 @@ import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||
*/
|
||||
public final class ThemeReader {
|
||||
|
||||
private static final Map<String, Long> widgetToTheme = new HashMap<>();
|
||||
private static final int defaultDPI = 96;
|
||||
|
||||
/**
|
||||
* List of widgets for which we need to get the part size for the current DPI.
|
||||
*/
|
||||
private static final List<String> partSizeWidgets =
|
||||
List.of("MENU", "BUTTON");
|
||||
|
||||
/**
|
||||
* List of widget parts for which we need to get the part size for the current DPI.
|
||||
*/
|
||||
private static final List<Integer> partSizeWidgetParts =
|
||||
List.of(Part.BP_RADIOBUTTON.getValue(),
|
||||
Part.BP_CHECKBOX.getValue(),
|
||||
Part.MP_POPUPCHECK.getValue());
|
||||
|
||||
private static final Map<Integer, Map<String, Long>> dpiAwareWidgetToTheme
|
||||
= new HashMap<>();
|
||||
|
||||
// lock for the cache
|
||||
// reading should be done with readLock
|
||||
@@ -87,28 +107,30 @@ public final class ThemeReader {
|
||||
return xpStyleEnabled;
|
||||
}
|
||||
|
||||
private static Long openThemeImpl(String widget, int dpi) {
|
||||
Long theme;
|
||||
int i = widget.indexOf("::");
|
||||
if (i > 0) {
|
||||
// We're using the syntax "subAppName::controlName" here, as used by msstyles.
|
||||
// See documentation for SetWindowTheme on MSDN.
|
||||
setWindowTheme(widget.substring(0, i));
|
||||
theme = openTheme(widget.substring(i + 2), dpi);
|
||||
setWindowTheme(null);
|
||||
} else {
|
||||
theme = openTheme(widget, dpi);
|
||||
}
|
||||
return theme;
|
||||
}
|
||||
|
||||
// this should be called only with writeLock held
|
||||
private static Long getThemeImpl(String widget) {
|
||||
Long theme = widgetToTheme.get(widget);
|
||||
if (theme == null) {
|
||||
int i = widget.indexOf("::");
|
||||
if (i > 0) {
|
||||
// We're using the syntax "subAppName::controlName" here, as used by msstyles.
|
||||
// See documentation for SetWindowTheme on MSDN.
|
||||
setWindowTheme(widget.substring(0, i));
|
||||
theme = openTheme(widget.substring(i+2));
|
||||
setWindowTheme(null);
|
||||
} else {
|
||||
theme = openTheme(widget);
|
||||
}
|
||||
widgetToTheme.put(widget, theme);
|
||||
}
|
||||
return theme;
|
||||
private static Long getThemeImpl(String widget, int dpi) {
|
||||
return dpiAwareWidgetToTheme.computeIfAbsent(dpi, key -> new HashMap<>())
|
||||
.computeIfAbsent(widget, w -> openThemeImpl(widget, dpi));
|
||||
}
|
||||
|
||||
// returns theme value
|
||||
// this method should be invoked with readLock locked
|
||||
private static Long getTheme(String widget) {
|
||||
private static Long getTheme(String widget, int dpi) {
|
||||
if (!isThemed) {
|
||||
throw new IllegalStateException("Themes are not loaded");
|
||||
}
|
||||
@@ -118,10 +140,12 @@ public final class ThemeReader {
|
||||
try {
|
||||
if (!valid) {
|
||||
// Close old themes.
|
||||
for (Long value : widgetToTheme.values()) {
|
||||
closeTheme(value);
|
||||
for (Map<String, Long> dpiVal : dpiAwareWidgetToTheme.values()) {
|
||||
for (Long value : dpiVal.values()) {
|
||||
closeTheme(value);
|
||||
}
|
||||
}
|
||||
widgetToTheme.clear();
|
||||
dpiAwareWidgetToTheme.clear();
|
||||
valid = true;
|
||||
}
|
||||
} finally {
|
||||
@@ -130,13 +154,20 @@ public final class ThemeReader {
|
||||
}
|
||||
}
|
||||
|
||||
Long theme = null;
|
||||
|
||||
Map<String, Long> widgetToTheme = dpiAwareWidgetToTheme.get(dpi);
|
||||
|
||||
if (widgetToTheme != null) {
|
||||
theme = widgetToTheme.get(widget);
|
||||
}
|
||||
|
||||
// mostly copied from the javadoc for ReentrantReadWriteLock
|
||||
Long theme = widgetToTheme.get(widget);
|
||||
if (theme == null) {
|
||||
readLock.unlock();
|
||||
writeLock.lock();
|
||||
try {
|
||||
theme = getThemeImpl(widget);
|
||||
theme = getThemeImpl(widget, dpi);
|
||||
} finally {
|
||||
readLock.lock();
|
||||
writeLock.unlock();// Unlock write, still hold read
|
||||
@@ -146,14 +177,23 @@ public final class ThemeReader {
|
||||
}
|
||||
|
||||
private static native void paintBackground(int[] buffer, long theme,
|
||||
int part, int state, int x,
|
||||
int y, int w, int h, int stride);
|
||||
int part, int state,
|
||||
int rectRight, int rectBottom,
|
||||
int w, int h, int stride);
|
||||
|
||||
public static void paintBackground(int[] buffer, String widget,
|
||||
int part, int state, int x, int y, int w, int h, int stride) {
|
||||
int part, int state, int x, int y, int w, int h, int stride, int dpi) {
|
||||
readLock.lock();
|
||||
try {
|
||||
paintBackground(buffer, getTheme(widget), part, state, x, y, w, h, stride);
|
||||
/* For widgets and parts in the lists, we get the part size
|
||||
for the current screen DPI to scale them better. */
|
||||
Dimension d = (partSizeWidgets.contains(widget)
|
||||
&& partSizeWidgetParts.contains(Integer.valueOf(part)))
|
||||
? getPartSize(getTheme(widget, dpi), part, state)
|
||||
: new Dimension(w, h);
|
||||
|
||||
paintBackground(buffer, getTheme(widget, dpi), part, state,
|
||||
d.width, d.height, w, h, stride);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -165,7 +205,7 @@ public final class ThemeReader {
|
||||
public static Insets getThemeMargins(String widget, int part, int state, int marginType) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getThemeMargins(getTheme(widget), part, state, marginType);
|
||||
return getThemeMargins(getTheme(widget, defaultDPI), part, state, marginType);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -176,7 +216,7 @@ public final class ThemeReader {
|
||||
public static boolean isThemePartDefined(String widget, int part, int state) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return isThemePartDefined(getTheme(widget), part, state);
|
||||
return isThemePartDefined(getTheme(widget, defaultDPI), part, state);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -188,7 +228,7 @@ public final class ThemeReader {
|
||||
public static Color getColor(String widget, int part, int state, int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getColor(getTheme(widget), part, state, property);
|
||||
return getColor(getTheme(widget, defaultDPI), part, state, property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -200,7 +240,7 @@ public final class ThemeReader {
|
||||
public static int getInt(String widget, int part, int state, int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getInt(getTheme(widget), part, state, property);
|
||||
return getInt(getTheme(widget, defaultDPI), part, state, property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -212,7 +252,7 @@ public final class ThemeReader {
|
||||
public static int getEnum(String widget, int part, int state, int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getEnum(getTheme(widget), part, state, property);
|
||||
return getEnum(getTheme(widget, defaultDPI), part, state, property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -225,7 +265,7 @@ public final class ThemeReader {
|
||||
int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getBoolean(getTheme(widget), part, state, property);
|
||||
return getBoolean(getTheme(widget, defaultDPI), part, state, property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -236,7 +276,7 @@ public final class ThemeReader {
|
||||
public static boolean getSysBoolean(String widget, int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getSysBoolean(getTheme(widget), property);
|
||||
return getSysBoolean(getTheme(widget, defaultDPI), property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -248,7 +288,7 @@ public final class ThemeReader {
|
||||
public static Point getPoint(String widget, int part, int state, int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getPoint(getTheme(widget), part, state, property);
|
||||
return getPoint(getTheme(widget, defaultDPI), part, state, property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -261,7 +301,7 @@ public final class ThemeReader {
|
||||
int property) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getPosition(getTheme(widget), part,state,property);
|
||||
return getPosition(getTheme(widget, defaultDPI), part,state,property);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -273,13 +313,13 @@ public final class ThemeReader {
|
||||
public static Dimension getPartSize(String widget, int part, int state) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getPartSize(getTheme(widget), part, state);
|
||||
return getPartSize(getTheme(widget, defaultDPI), part, state);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
private static native long openTheme(String widget);
|
||||
private static native long openTheme(String widget, int dpi);
|
||||
|
||||
private static native void closeTheme(long theme);
|
||||
|
||||
@@ -292,8 +332,9 @@ public final class ThemeReader {
|
||||
int stateFrom, int stateTo, int propId) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getThemeTransitionDuration(getTheme(widget),
|
||||
part, stateFrom, stateTo, propId);
|
||||
return getThemeTransitionDuration(getTheme(widget, defaultDPI),
|
||||
part, stateFrom, stateTo,
|
||||
propId);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
@@ -308,8 +349,9 @@ public final class ThemeReader {
|
||||
int part, int state, int boundingWidth, int boundingHeight) {
|
||||
readLock.lock();
|
||||
try {
|
||||
return getThemeBackgroundContentMargins(getTheme(widget),
|
||||
part, state, boundingWidth, boundingHeight);
|
||||
return getThemeBackgroundContentMargins(getTheme(widget, defaultDPI),
|
||||
part, state,
|
||||
boundingWidth, boundingHeight);
|
||||
} finally {
|
||||
readLock.unlock();
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ typedef HRESULT(__stdcall *PFNCLOSETHEMEDATA)(HTHEME hTheme);
|
||||
typedef HRESULT(__stdcall *PFNDRAWTHEMEBACKGROUND)(HTHEME hTheme, HDC hdc,
|
||||
int iPartId, int iStateId, const RECT *pRect, const RECT *pClipRect);
|
||||
|
||||
typedef HTHEME(__stdcall *PFNOPENTHEMEDATA)(HWND hwnd, LPCWSTR pszClassList);
|
||||
typedef HTHEME(__stdcall *PFNOPENTHEMEDATAFORDPI)(HWND hwnd, LPCWSTR pszClassList, UINT dpi);
|
||||
|
||||
typedef HRESULT (__stdcall *PFNDRAWTHEMETEXT)(HTHEME hTheme, HDC hdc,
|
||||
int iPartId, int iStateId, LPCWSTR pszText, int iCharCount,
|
||||
@@ -134,7 +134,7 @@ typedef HRESULT (__stdcall *PFNGETTHEMETRANSITIONDURATION)
|
||||
(HTHEME hTheme, int iPartId, int iStateIdFrom, int iStateIdTo,
|
||||
int iPropId, DWORD *pdwDuration);
|
||||
|
||||
static PFNOPENTHEMEDATA OpenThemeData = NULL;
|
||||
static PFNOPENTHEMEDATAFORDPI OpenThemeDataForDpiFunc = NULL;
|
||||
static PFNDRAWTHEMEBACKGROUND DrawThemeBackground = NULL;
|
||||
static PFNCLOSETHEMEDATA CloseThemeData = NULL;
|
||||
static PFNDRAWTHEMETEXT DrawThemeText = NULL;
|
||||
@@ -161,8 +161,8 @@ BOOL InitThemes() {
|
||||
DTRACE_PRINTLN1("InitThemes hModThemes = %x\n", hModThemes);
|
||||
if(hModThemes) {
|
||||
DTRACE_PRINTLN("Loaded UxTheme.dll\n");
|
||||
OpenThemeData = (PFNOPENTHEMEDATA)GetProcAddress(hModThemes,
|
||||
"OpenThemeData");
|
||||
OpenThemeDataForDpiFunc = (PFNOPENTHEMEDATAFORDPI)GetProcAddress(
|
||||
hModThemes, "OpenThemeDataForDpi");
|
||||
DrawThemeBackground = (PFNDRAWTHEMEBACKGROUND)GetProcAddress(
|
||||
hModThemes, "DrawThemeBackground");
|
||||
CloseThemeData = (PFNCLOSETHEMEDATA)GetProcAddress(
|
||||
@@ -198,7 +198,7 @@ BOOL InitThemes() {
|
||||
(PFNGETTHEMETRANSITIONDURATION)GetProcAddress(hModThemes,
|
||||
"GetThemeTransitionDuration");
|
||||
|
||||
if(OpenThemeData
|
||||
if(OpenThemeDataForDpiFunc
|
||||
&& DrawThemeBackground
|
||||
&& CloseThemeData
|
||||
&& DrawThemeText
|
||||
@@ -216,9 +216,12 @@ BOOL InitThemes() {
|
||||
&& IsThemeBackgroundPartiallyTransparent
|
||||
) {
|
||||
DTRACE_PRINTLN("Loaded function pointers.\n");
|
||||
// We need to make sure we can load the Theme. This may not be
|
||||
// the case on a WinXP machine with classic mode enabled.
|
||||
HTHEME hTheme = OpenThemeData(AwtToolkit::GetInstance().GetHWnd(), L"Button");
|
||||
// We need to make sure we can load the Theme.
|
||||
// Use the default DPI value of 96 on windows.
|
||||
constexpr unsigned int defaultDPI = 96;
|
||||
HTHEME hTheme = OpenThemeDataForDpiFunc (
|
||||
AwtToolkit::GetInstance().GetHWnd(),
|
||||
L"Button", defaultDPI);
|
||||
if(hTheme) {
|
||||
DTRACE_PRINTLN("Loaded Theme data.\n");
|
||||
CloseThemeData(hTheme);
|
||||
@@ -275,7 +278,7 @@ static void assert_result(HRESULT hres, JNIEnv *env) {
|
||||
* Signature: (Ljava/lang/String;)J
|
||||
*/
|
||||
JNIEXPORT jlong JNICALL Java_sun_awt_windows_ThemeReader_openTheme
|
||||
(JNIEnv *env, jclass klass, jstring widget) {
|
||||
(JNIEnv *env, jclass klass, jstring widget, jint dpi) {
|
||||
|
||||
LPCTSTR str = (LPCTSTR) JNU_GetStringPlatformChars(env, widget, NULL);
|
||||
if (str == NULL) {
|
||||
@@ -284,7 +287,9 @@ JNIEXPORT jlong JNICALL Java_sun_awt_windows_ThemeReader_openTheme
|
||||
}
|
||||
// We need to open the Theme on a Window that will stick around.
|
||||
// The best one for that purpose is the Toolkit window.
|
||||
HTHEME htheme = OpenThemeData(AwtToolkit::GetInstance().GetHWnd(), str);
|
||||
HTHEME htheme = OpenThemeDataForDpiFunc(
|
||||
AwtToolkit::GetInstance().GetHWnd(),
|
||||
str, dpi);
|
||||
JNU_ReleaseStringPlatformChars(env, widget, str);
|
||||
return (jlong) htheme;
|
||||
}
|
||||
@@ -417,7 +422,7 @@ static void copyDIBToBufferedImage(int *pDstBits, int *pSrcBits,
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_sun_awt_windows_ThemeReader_paintBackground
|
||||
(JNIEnv *env, jclass klass, jintArray array, jlong theme, jint part, jint state,
|
||||
jint x, jint y, jint w, jint h, jint stride) {
|
||||
jint rectRight, jint rectBottom, jint w, jint h, jint stride) {
|
||||
|
||||
int *pDstBits=NULL;
|
||||
int *pSrcBits=NULL;
|
||||
@@ -463,8 +468,8 @@ JNIEXPORT void JNICALL Java_sun_awt_windows_ThemeReader_paintBackground
|
||||
|
||||
rect.left = 0;
|
||||
rect.top = 0;
|
||||
rect.bottom = h;
|
||||
rect.right = w;
|
||||
rect.bottom = rectBottom;
|
||||
rect.right = rectRight;
|
||||
|
||||
ZeroMemory(pSrcBits,(BITS_PER_PIXEL>>3)*w*h);
|
||||
|
||||
@@ -753,27 +758,6 @@ JNIEXPORT jobject JNICALL Java_sun_awt_windows_ThemeReader_getPosition
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void rescale(SIZE *size) {
|
||||
static int dpiX = -1;
|
||||
static int dpiY = -1;
|
||||
if (dpiX == -1 || dpiY == -1) {
|
||||
HWND hWnd = ::GetDesktopWindow();
|
||||
HDC hDC = ::GetDC(hWnd);
|
||||
dpiX = ::GetDeviceCaps(hDC, LOGPIXELSX);
|
||||
dpiY = ::GetDeviceCaps(hDC, LOGPIXELSY);
|
||||
::ReleaseDC(hWnd, hDC);
|
||||
}
|
||||
|
||||
if (dpiX !=0 && dpiX != 96) {
|
||||
float invScaleX = 96.0f / dpiX;
|
||||
size->cx = ROUND_TO_INT(size->cx * invScaleX);
|
||||
}
|
||||
if (dpiY != 0 && dpiY != 96) {
|
||||
float invScaleY = 96.0f / dpiY;
|
||||
size->cy = ROUND_TO_INT(size->cy * invScaleY);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Class: sun_awt_windows_ThemeReader
|
||||
* Method: getPartSize
|
||||
@@ -800,7 +784,6 @@ JNIEXPORT jobject JNICALL Java_sun_awt_windows_ThemeReader_getPartSize
|
||||
CHECK_NULL_RETURN(dimMID, NULL);
|
||||
}
|
||||
|
||||
rescale(&size);
|
||||
jobject dimObj = env->NewObject(dimClassID, dimMID, size.cx, size.cy);
|
||||
if (safe_ExceptionOccurred(env)) {
|
||||
env->ExceptionDescribe();
|
||||
|
||||
@@ -775,9 +775,13 @@ final class LDAPCertStoreImpl {
|
||||
} catch (IllegalArgumentException e) {
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
} else if (nameObject instanceof String) {
|
||||
issuerName = (String)nameObject;
|
||||
} else {
|
||||
throw new CertStoreException(
|
||||
"unrecognized issuerName: must be String or byte[]");
|
||||
}
|
||||
|
||||
// If all we want is CA certs, try to get the (probably shorter) ARL
|
||||
Collection<X509CRL> entryCRLs = Collections.emptySet();
|
||||
if (certChecking == null || certChecking.getBasicConstraints() != -1) {
|
||||
|
||||
@@ -59,6 +59,7 @@ final class DCmdConfigure extends AbstractDCmd {
|
||||
*/
|
||||
public String execute
|
||||
(
|
||||
boolean verbose,
|
||||
String repositoryPath,
|
||||
String dumpPath,
|
||||
Integer stackDepth,
|
||||
@@ -92,66 +93,86 @@ final class DCmdConfigure extends AbstractDCmd {
|
||||
} catch (Exception e) {
|
||||
throw new DCmdException("Could not use " + repositoryPath + " as repository. " + e.getMessage(), e);
|
||||
}
|
||||
printRepositoryPath();
|
||||
if (verbose) {
|
||||
printRepositoryPath();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (dumpPath != null) {
|
||||
Options.setDumpPath(new SafePath(dumpPath));
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Emergency dump path set to " + dumpPath);
|
||||
printDumpPath();
|
||||
if (verbose) {
|
||||
printDumpPath();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (stackDepth != null) {
|
||||
Options.setStackDepth(stackDepth);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Stack depth set to " + stackDepth);
|
||||
printStackDepth();
|
||||
if (verbose) {
|
||||
printStackDepth();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (globalBufferCount != null) {
|
||||
Options.setGlobalBufferCount(globalBufferCount);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Global buffer count set to " + globalBufferCount);
|
||||
printGlobalBufferCount();
|
||||
if (verbose) {
|
||||
printGlobalBufferCount();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (globalBufferSize != null) {
|
||||
Options.setGlobalBufferSize(globalBufferSize);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Global buffer size set to " + globalBufferSize);
|
||||
printGlobalBufferSize();
|
||||
if (verbose) {
|
||||
printGlobalBufferSize();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (threadBufferSize != null) {
|
||||
Options.setThreadBufferSize(threadBufferSize);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Thread buffer size set to " + threadBufferSize);
|
||||
printThreadBufferSize();
|
||||
if (verbose) {
|
||||
printThreadBufferSize();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (memorySize != null) {
|
||||
Options.setMemorySize(memorySize);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Memory size set to " + memorySize);
|
||||
printMemorySize();
|
||||
if (verbose) {
|
||||
printMemorySize();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (maxChunkSize != null) {
|
||||
Options.setMaxChunkSize(maxChunkSize);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Max chunk size set to " + maxChunkSize);
|
||||
printMaxChunkSize();
|
||||
if (verbose) {
|
||||
printMaxChunkSize();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (sampleThreads != null) {
|
||||
Options.setSampleThreads(sampleThreads);
|
||||
Logger.log(LogTag.JFR, LogLevel.INFO, "Sample threads set to " + sampleThreads);
|
||||
printSampleThreads();
|
||||
if (verbose) {
|
||||
printSampleThreads();
|
||||
}
|
||||
updated = true;
|
||||
}
|
||||
|
||||
if (!verbose) {
|
||||
return "";
|
||||
}
|
||||
if (!updated) {
|
||||
println("Current configuration:");
|
||||
println();
|
||||
|
||||
56
test/hotspot/jtreg/compiler/locks/TestUnlockOSR.java
Normal file
56
test/hotspot/jtreg/compiler/locks/TestUnlockOSR.java
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
* Copyright (c) 2023 SAP SE. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @bug 8316746
|
||||
* @summary During OSR, locks get transferred from interpreter frame.
|
||||
* Check that unlocking 2 such locks works in the OSR compiled nmethod.
|
||||
* Some platforms verify that the unlocking happens in the corrent order.
|
||||
*
|
||||
* @run main/othervm -Xbatch TestUnlockOSR
|
||||
*/
|
||||
|
||||
public class TestUnlockOSR {
|
||||
static void test_method(Object a, Object b, int limit) {
|
||||
synchronized(a) { // allocate space for monitors
|
||||
synchronized(b) {
|
||||
}
|
||||
} // free space to test allocation in reused space
|
||||
synchronized(a) { // reuse the space
|
||||
synchronized(b) {
|
||||
for (int i = 0; i < limit; i++) {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
Object a = new TestUnlockOSR(),
|
||||
b = new TestUnlockOSR();
|
||||
// avoid uncommon trap before last unlocks
|
||||
for (int i = 0; i < 100; i++) { test_method(a, b, 0); }
|
||||
// trigger OSR
|
||||
test_method(a, b, 100000);
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -21,21 +21,16 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 0
|
||||
* -mode direct
|
||||
/* @test TestNoPerfCounter
|
||||
* @bug 8210265
|
||||
* @requires vm.gc=="null"
|
||||
* @library /test/lib /
|
||||
* @summary Tests that disabling perf counters does not crash the VM
|
||||
* @run main/othervm -XX:-UsePerfData TestNoPerfCounter
|
||||
*/
|
||||
|
||||
public class TestNoPerfCounter {
|
||||
public static void main(String[] args) throws Exception {
|
||||
// Nothing to do
|
||||
}
|
||||
}
|
||||
@@ -27,13 +27,12 @@ import java.util.concurrent.TimeoutException;
|
||||
import sun.hotspot.WhiteBox;
|
||||
|
||||
/*
|
||||
* @test TestStressRSetCoarsening.java
|
||||
* @test
|
||||
* @key stress
|
||||
* @bug 8146984 8147087
|
||||
* @requires vm.gc.G1
|
||||
* @requires os.maxMemory > 3G
|
||||
* @requires vm.opt.MaxGCPauseMillis == "null"
|
||||
*
|
||||
* @summary Stress G1 Remembered Set by creating a lot of cross region links
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
@@ -43,27 +42,87 @@ import sun.hotspot.WhiteBox;
|
||||
* @run main/othervm/timeout=300
|
||||
* -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
|
||||
* -XX:+UseG1GC -Xlog:gc* -XX:MaxGCPauseMillis=1000
|
||||
* -Xmx500m -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 1 0 300
|
||||
* -Xmx500m -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 1 0 300
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires vm.gc.G1
|
||||
* @requires os.maxMemory > 3G
|
||||
* @requires vm.opt.MaxGCPauseMillis == "null"
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* sun.hotspot.WhiteBox$WhiteBoxPermission
|
||||
* @run main/othervm/timeout=300
|
||||
* -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
|
||||
* -XX:+UseG1GC -Xlog:gc* -XX:MaxGCPauseMillis=1000
|
||||
* -Xmx500m -XX:G1HeapRegionSize=8m gc.stress.TestStressRSetCoarsening 1 10 300
|
||||
* -Xmx500m -XX:G1HeapRegionSize=8m gc.stress.TestStressRSetCoarsening 1 10 300
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires vm.gc.G1
|
||||
* @requires os.maxMemory > 3G
|
||||
* @requires vm.opt.MaxGCPauseMillis == "null"
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* sun.hotspot.WhiteBox$WhiteBoxPermission
|
||||
* @run main/othervm/timeout=300
|
||||
* -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
|
||||
* -XX:+UseG1GC -Xlog:gc* -XX:MaxGCPauseMillis=1000
|
||||
* -Xmx500m -XX:G1HeapRegionSize=32m gc.stress.TestStressRSetCoarsening 42 10 300
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires vm.gc.G1
|
||||
* @requires os.maxMemory > 3G
|
||||
* @requires vm.opt.MaxGCPauseMillis == "null"
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* sun.hotspot.WhiteBox$WhiteBoxPermission
|
||||
* @run main/othervm/timeout=300
|
||||
* -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
|
||||
* -XX:+UseG1GC -Xlog:gc* -XX:MaxGCPauseMillis=1000
|
||||
* -Xmx500m -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 2 0 300
|
||||
* -Xmx500m -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 2 0 300
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires vm.gc.G1
|
||||
* @requires os.maxMemory > 3G
|
||||
* @requires vm.opt.MaxGCPauseMillis == "null"
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* sun.hotspot.WhiteBox$WhiteBoxPermission
|
||||
* @run main/othervm/timeout=1800
|
||||
* -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
|
||||
* -XX:+UseG1GC -Xlog:gc* -XX:MaxGCPauseMillis=1000
|
||||
* -Xmx1G -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 500 0 1800
|
||||
* -Xmx1G -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 500 0 1800
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires vm.gc.G1
|
||||
* @requires os.maxMemory > 3G
|
||||
* @requires vm.opt.MaxGCPauseMillis == "null"
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* sun.hotspot.WhiteBox$WhiteBoxPermission
|
||||
* @run main/othervm/timeout=1800
|
||||
* -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
|
||||
* -XX:+UseG1GC -Xlog:gc* -XX:MaxGCPauseMillis=1000
|
||||
* -Xmx1G -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 10 10 1800
|
||||
* -Xmx1G -XX:G1HeapRegionSize=1m gc.stress.TestStressRSetCoarsening 10 10 1800
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -96,7 +155,7 @@ public class TestStressRSetCoarsening {
|
||||
}
|
||||
int objectsPerRegion = Integer.parseInt(args[0]); // 1 means humongous
|
||||
int regsToRefresh = Integer.parseInt(args[1]); // 0 means no regions to refresh at the end of cycle
|
||||
int timeout = Integer.parseInt(args[2]); // in seconds, test should stop working eariler
|
||||
int timeout = Integer.parseInt(args[2]); // in seconds, test should stop working earlier
|
||||
new TestStressRSetCoarsening(objectsPerRegion, regsToRefresh, timeout).go();
|
||||
}
|
||||
|
||||
|
||||
@@ -33,6 +33,8 @@
|
||||
* @build HelloStringGC sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* @run main ExerciseGC
|
||||
* @run main/othervm -XX:+UseStringDeduplication ExerciseGC
|
||||
* @run main/othervm -XX:-CompactStrings ExerciseGC
|
||||
*/
|
||||
public class ExerciseGC {
|
||||
public static void main(String[] args) throws Exception {
|
||||
|
||||
@@ -36,6 +36,8 @@
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox sun.hotspot.WhiteBox$WhiteBoxPermission
|
||||
* @build HelloString
|
||||
* @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:. IncompatibleOptions
|
||||
* @run main/othervm -XX:+UseStringDeduplication -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:. IncompatibleOptions
|
||||
* @run main/othervm -XX:-CompactStrings -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:. IncompatibleOptions
|
||||
*/
|
||||
|
||||
import jdk.test.lib.Asserts;
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* @run main InternSharedString
|
||||
* @run main/othervm -XX:+UseStringDeduplication InternSharedString
|
||||
* @run main/othervm -XX:-CompactStrings InternSharedString
|
||||
*/
|
||||
|
||||
public class InternSharedString {
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
* jdk.jartool/sun.tools.jar
|
||||
* @build HelloString
|
||||
* @run main InvalidFileFormat
|
||||
* @run main/othervm -XX:+UseStringDeduplication InvalidFileFormat
|
||||
* @run main/othervm -XX:-CompactStrings InvalidFileFormat
|
||||
*/
|
||||
|
||||
import jdk.test.lib.process.OutputAnalyzer;
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
* jdk.jartool/sun.tools.jar
|
||||
* @build HelloString
|
||||
* @run main LargePages
|
||||
* @run main/othervm -XX:+UseStringDeduplication LargePages
|
||||
* @run main/othervm -XX:-CompactStrings LargePages
|
||||
*/
|
||||
public class LargePages {
|
||||
public static void main(String[] args) throws Exception {
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
* @build sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* @run main LockSharedStrings
|
||||
* @run main/othervm -XX:+UseStringDeduplication LockSharedStrings
|
||||
* @run main/othervm -XX:-CompactStrings LockSharedStrings
|
||||
*/
|
||||
|
||||
public class LockSharedStrings {
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
* jdk.jartool/sun.tools.jar
|
||||
* @build HelloString
|
||||
* @run main SharedStringsBasic
|
||||
* @run main/othervm -XX:+UseStringDeduplication SharedStringsBasic
|
||||
* @run main/othervm -XX:-CompactStrings SharedStringsBasic
|
||||
*/
|
||||
import jdk.test.lib.process.OutputAnalyzer;
|
||||
import jdk.test.lib.process.ProcessTools;
|
||||
|
||||
@@ -33,6 +33,8 @@
|
||||
* @build HelloStringPlus sun.hotspot.WhiteBox
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* @run main SharedStringsBasicPlus
|
||||
* @run main/othervm -XX:+UseStringDeduplication SharedStringsBasicPlus
|
||||
* @run main/othervm -XX:-CompactStrings SharedStringsBasicPlus
|
||||
*/
|
||||
|
||||
public class SharedStringsBasicPlus {
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
* @modules jdk.jartool/sun.tools.jar
|
||||
* @build HelloString
|
||||
* @run main SharedStringsStress
|
||||
* @run main/othervm -XX:+UseStringDeduplication SharedStringsStress
|
||||
* @run main/othervm -XX:-CompactStrings SharedStringsStress
|
||||
*/
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
|
||||
@@ -33,6 +33,8 @@
|
||||
* @build sun.hotspot.WhiteBox SharedStringsWb
|
||||
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
|
||||
* @run main SharedStringsWbTest
|
||||
* @run main/othervm -XX:+UseStringDeduplication SharedStringsWbTest
|
||||
* @run main/othervm -XX:-CompactStrings SharedStringsWbTest
|
||||
*/
|
||||
|
||||
import java.io.*;
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @modules java.management
|
||||
* @run main SysDictCrash
|
||||
* @run main/othervm -XX:+UseStringDeduplication SysDictCrash
|
||||
* @run main/othervm -XX:-CompactStrings SysDictCrash
|
||||
*/
|
||||
|
||||
import jdk.test.lib.process.OutputAnalyzer;
|
||||
|
||||
58
test/hotspot/jtreg/runtime/jsig/Testjsig.java
Normal file
58
test/hotspot/jtreg/runtime/jsig/Testjsig.java
Normal file
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
* Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test Testjsig.java
|
||||
* @bug 8017498
|
||||
* @bug 8020791
|
||||
* @bug 8021296
|
||||
* @bug 8022301
|
||||
* @bug 8025519
|
||||
* @summary sigaction(sig) results in process hang/timed-out if sig is much greater than SIGRTMAX
|
||||
* @requires (os.family == "linux")
|
||||
* @library /test/lib
|
||||
* @compile TestJNI.java
|
||||
* @run driver Testjsig
|
||||
*/
|
||||
|
||||
import jdk.test.lib.process.ProcessTools;
|
||||
import jdk.test.lib.process.OutputAnalyzer;
|
||||
|
||||
public class Testjsig {
|
||||
|
||||
public static void main(String[] args) throws Throwable {
|
||||
|
||||
// Get the JDK, library and class path properties
|
||||
String libpath = System.getProperty("java.library.path");
|
||||
|
||||
// Create a new java process for the TestJNI Java/JNI test
|
||||
ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
|
||||
"-Djava.library.path=" + libpath + ":.",
|
||||
"TestJNI",
|
||||
"100");
|
||||
|
||||
// Start the process and check the output
|
||||
OutputAnalyzer output = new OutputAnalyzer(pb.start());
|
||||
output.shouldContain("old handler");
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -27,8 +27,7 @@
|
||||
* @bug 6969574
|
||||
*
|
||||
* @summary converted from VM Testbase vm/mlvm/mixed/stress/regression/b6969574.
|
||||
* VM Testbase keywords: [feature_mlvm, nonconcurrent, quarantine]
|
||||
* VM Testbase comments: 8079650
|
||||
* VM Testbase keywords: [feature_mlvm, nonconcurrent]
|
||||
*
|
||||
* @library /vmTestbase
|
||||
* /test/lib
|
||||
@@ -313,10 +312,8 @@ public class INDIFY_Test extends MlvmTest {
|
||||
private final static int REFLECTION_CALL = 1;
|
||||
private final static int INVOKE_EXACT = 2;
|
||||
private final static int INVOKE = 3;
|
||||
private final static int INVOKE_WITHARG = 4;
|
||||
private final static int INVOKE_WITHARG_TYPECONV = 5;
|
||||
private final static int INDY = 6;
|
||||
private final static int BENCHMARK_COUNT = 7;
|
||||
private final static int INDY = 4;
|
||||
private final static int BENCHMARK_COUNT = 5;
|
||||
|
||||
//
|
||||
// Test body
|
||||
@@ -356,18 +353,6 @@ public class INDIFY_Test extends MlvmTest {
|
||||
}
|
||||
});
|
||||
|
||||
benchmarks[INVOKE_WITHARG] = new Benchmark("MH.invokeWithArguments(), exact types", new T() {
|
||||
public void run() throws Throwable {
|
||||
mhTestee.invokeWithArguments(testData, TESTEE_ARG2, TESTEE_ARG3);
|
||||
}
|
||||
});
|
||||
|
||||
benchmarks[INVOKE_WITHARG_TYPECONV] = new Benchmark("MH.invokeWithArguments() + type conv.", new T() {
|
||||
public void run() throws Throwable {
|
||||
mhTestee.invokeWithArguments((Object) testData, null, (Short) Short.MAX_VALUE);
|
||||
}
|
||||
});
|
||||
|
||||
benchmarks[INDY] = new Benchmark("invokedynamic instruction", new T() {
|
||||
public void run() throws Throwable {
|
||||
indyWrapper(testData);
|
||||
@@ -412,11 +397,9 @@ public class INDIFY_Test extends MlvmTest {
|
||||
// TODO: exclude GC time, compilation time (optionally) from measurements
|
||||
|
||||
print("Comparing invocation time orders");
|
||||
verifyTimeOrder(results[REFLECTION_CALL], results[INVOKE_EXACT]);
|
||||
verifyTimeOrder(results[INDY], results[REFLECTION_CALL]);
|
||||
verifyTimeOrder(results[INVOKE_EXACT], results[DIRECT_CALL]);
|
||||
verifyTimeOrder(results[INVOKE], results[DIRECT_CALL]);
|
||||
verifyTimeOrder(results[INVOKE_WITHARG], results[INVOKE_EXACT]);
|
||||
verifyTimeOrder(results[INVOKE_WITHARG_TYPECONV], results[INVOKE_EXACT]);
|
||||
verifyTimeOrder(results[INVOKE_EXACT], results[INDY]);
|
||||
|
||||
return true;
|
||||
|
||||
@@ -131,7 +131,7 @@ OVERVIEW
|
||||
where
|
||||
|
||||
majorVer - major version of class files for generated concrete classes
|
||||
values: ver49, ver50, ver51, ver52
|
||||
values: ver49, ver52
|
||||
|
||||
methodFlags - additional access flags for methods in generated classes
|
||||
values:
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2048
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2048
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2048
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2048
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2048
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2048
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 32
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 32
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 32
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 32
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 32
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 32
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2080
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2080
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2080
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2080
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2080
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 50
|
||||
* -flags 2080
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 0
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 0
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2048
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2048
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2048
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2048
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2048
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2048
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 32
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 32
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 32
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 32
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 32
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 32
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2080
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2080
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2080
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2080
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2080
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.BasicTest
|
||||
* -ver 51
|
||||
* -flags 2080
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_direct_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.ConflictingDefaultsTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_direct_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.ConflictingDefaultsTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode direct
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_invoke_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.ConflictingDefaultsTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_invoke_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.ConflictingDefaultsTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode invoke
|
||||
*/
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_reflect_noredefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm
|
||||
* -XX:+IgnoreUnrecognizedVMOptions
|
||||
* vm.runtime.defmeth.ConflictingDefaultsTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
|
||||
*
|
||||
* @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_reflect_redefine.
|
||||
* VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick]
|
||||
*
|
||||
* @library /vmTestbase /test/lib
|
||||
*
|
||||
* @comment build retransform.jar in current dir
|
||||
* @run driver vm.runtime.defmeth.shared.BuildJar
|
||||
*
|
||||
* @run driver jdk.test.lib.FileInstaller . .
|
||||
* @run main/othervm/native
|
||||
* -agentlib:redefineClasses
|
||||
* -javaagent:retransform.jar
|
||||
* vm.runtime.defmeth.ConflictingDefaultsTest
|
||||
* -ver 50
|
||||
* -flags 0
|
||||
* -redefine
|
||||
* -retransform
|
||||
* -mode reflect
|
||||
*/
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user