Re: When to use JSRInlinerAdapter
Remi Forax <[email protected]> Tue, 3 Dec 2019 23:34:44 +0100 (CET)
| Newsgroups | gmane.comp.java.objectweb.asm |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format... ------------=_1575412972-16452-26 Content-Type: multipart/alternative; boundary="=_660925e8-8299-433f-81d2-39fcb219e06b" --=_660925e8-8299-433f-81d2-39fcb219e06b Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Arshan,=20 starting with Java 6, a new verifier was introduced, because the old one is= not linear. This new verifier that doesn't allow JSR/RET is named the spli= t verifier (because half of the verification has to be done by introducing = stack frame in the bytecode).=20 That said, between Java 6 and Java 7, you had the option to use -XX:-SplitV= erifier to ask the VM to use the old verifier, that option was removed with= Java 8.=20 So since Java 8, all the classes version V1_6+ can only run with the split = verifier so should not contain any JSR/RET.=20 regards,=20 R=C3=A9mi=20 [1] https://stackoverflow.com/questions/15253173/how-safe-is-it-to-use-xx-u= sesplitverifier=20 > De: "Arshan Dabirsiaghi" <[email protected]> > =C3=80: "asm" <[email protected]> > Envoy=C3=A9: Mardi 3 D=C3=A9cembre 2019 22:33:33 > Objet: [asm] When to use JSRInlinerAdapter > Is there a rule of thumb for when you must accept the cost of running > JSRInlinerAdapter on user code? > Our use case allows users to run on JVMs of version 1.6+, but of course t= he > bytecode laying around in their JVMs could be (and often is) very old. > My google-fu is not revealing a strict rule, like "bytecode targeting ver= sion 7 > doesn't require this adapter". The JavaDoc is silent on this, so I feel l= ike > this list is probably the best place to ask. > Thanks, > Arshan > -- > You receive this message as a subscriber of the [email protected] mailing list. > To unsubscribe: mailto:[email protected] > For general help: mailto:[email protected]?subject=3Dhelp > OW2 mailing lists service home page: http://www.ow2.org/wws --=_660925e8-8299-433f-81d2-39fcb219e06b Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <html><body><div style=3D"font-family: arial, helvetica, sans-serif; font-s= ize: 12pt; color: #000000"><div>Hi Arshan,<br></div><div>starting with Java= 6, a new verifier was introduced, because the old one is not linear. This = new verifier that doesn't allow JSR/RET is named the split verifier (becaus= e half of the verification has to be done by introducing stack frame in the= bytecode).<br></div><div>That said, between Java 6 and Java 7, you had the= option to use -XX:-SplitVerifier to ask the VM to use the old verifier, th= at option was removed with Java 8.</div><div><br data-mce-bogus=3D"1"></div= ><div>So since Java 8, all the classes version V1_6+ can only run with the = split verifier so should not contain any JSR/RET.<br></div><div><br data-mc= e-bogus=3D"1"></div><div>regards,<br data-mce-bogus=3D"1"></div><div>R=C3= =A9mi</div><div><br data-mce-bogus=3D"1"></div><div>[1] https://stackoverfl= ow.com/questions/15253173/how-safe-is-it-to-use-xx-usesplitverifier<br data= -mce-bogus=3D"1"></div><div><br></div><hr id=3D"zwchr" data-marker=3D"__DIV= IDER__"><div data-marker=3D"__HEADERS__"><blockquote style=3D"border-left:2= px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:no= rmal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,san= s-serif;font-size:12pt;"><b>De: </b>"Arshan Dabirsiaghi" <arshan.dabirsi= [email protected]><br><b>=C3=80: </b>"asm" <[email protected]><br><b>Envoy= =C3=A9: </b>Mardi 3 D=C3=A9cembre 2019 22:33:33<br><b>Objet: </b>[asm] When= to use JSRInlinerAdapter<br></blockquote></div><div data-marker=3D"__QUOTE= D_TEXT__"><blockquote style=3D"border-left:2px solid #1010FF;margin-left:5p= x;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-dec= oration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><div d= ir=3D"ltr">Is there a rule of thumb for when you must accept the cost of ru= nning JSRInlinerAdapter on user code? <br><div>Our use case allows use= rs to run on JVMs of version 1.6+, but of course the bytecode laying around= in their JVMs could be (and often is) very old. <br><div>My google-fu= is not revealing a strict rule, like "bytecode targeting version 7 doesn't= require this adapter". The JavaDoc is silent on this, so I feel like this = list is probably the best place to ask.</div></div><br><div>Thanks,</div><d= iv>Arshan</div></div> <br><br>-- <br>You receive this message as a subscriber of the [email protected] = mailing list.<br>To unsubscribe: mailto:[email protected]<br>For gene= ral help: mailto:[email protected]?subject=3Dhelp<br>OW2 mailing lists service = home page: http://www.ow2.org/wws<br></blockquote></div></div></body></html= >= --=_660925e8-8299-433f-81d2-39fcb219e06b-- ------------=_1575412972-16452-26 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit -- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws ------------=_1575412972-16452-26--