<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body style="background-color: rgb(255, 255, 255); color: rgb(0, 0,
    0);" text="#000000" bgcolor="#FFFFFF">
    <br>
    <br>
    <div class="moz-cite-prefix">On 08/24/2017 10:00 PM, Claes Redestad
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:6b7c9690-47bb-ab2b-7b4e-da382ec3c989@oracle.com"><!--[if !IE]><DIV style="border-left: 2px solid #009900; border-right: 2px solid #009900;  padding: 0px 15px; margin: 2px 0px;"><![endif]-->
      <br>
      <br>
      On 2017-08-24 20:06, Claes Redestad wrote:
      <br>
      <blockquote type="cite"><!--[if !IE]><DIV style="border-left: 2px solid #009900; border-right: 2px solid #009900;  padding: 0px 15px; margin: 2px 0px;"><![endif]-->
        <blockquote type="cite"><!--[if !IE]><DIV style="border-left: 2px solid #009900; border-right: 2px solid #009900;  padding: 0px 15px; margin: 2px 0px;"><![endif]-->
          <blockquote type="cite"><!--[if !IE]><DIV style="border-left: 2px solid #009900; border-right: 2px solid #009900;  padding: 0px 15px; margin: 2px 0px;"><![endif]-->
            <br>
            Hm... What about aliases? Would you hard-code them in the
            individual Charset classes (UTF_8, US_ASCII, ISO_8859_1)?
            They are currently generated in the body of
            sun...StandardCharsets.
            <br>
            <br>
            Regards, Peter
            <br>
            <br>
            <!--[if !IE]></DIV><![endif]--></blockquote>
          <br>
          ...perhaps the generator could be modified to generate a
          static method per charset, returning an array of aliasesĀ 
          instead of a static final field. StandardCharsets would become
          very light then as its <clinit> would not do much.
          <br>
          <!--[if !IE]></DIV><![endif]--></blockquote>
        <br>
        Right, I was looking at it from a different angle (generate them
        directly into each corresponding class), but this way is
        actually much easier and should be easy enough to roll into this
        patch.
        <br>
        <!--[if !IE]></DIV><![endif]--></blockquote>
      <br>
      Done:
      <br>
      <br>
      <a class="moz-txt-link-freetext" href="http://cr.openjdk.java.net/~redestad/8186517/jdk.03/">http://cr.openjdk.java.net/~redestad/8186517/jdk.03/</a>
      <br>
      <br>
      Manually verified that generated charsets look correct and ran all
      charset tests without issue.
      <br>
      <br>
      <blockquote type="cite"><!--[if !IE]><DIV style="border-left: 2px solid #009900; border-right: 2px solid #009900;  padding: 0px 15px; margin: 2px 0px;"><![endif]-->
        <br>
        Should be a nice reduction in retained objects on minimal apps.
        <br>
        <!--[if !IE]></DIV><![endif]--></blockquote>
      <br>
      425 fewer objects allocated, -16.5Kb.
      <br>
      <br>
      /Claes
      <br>
      <!--[if !IE]></DIV><![endif]--></blockquote>
    <br>
    Very nice!<br>
    <br>
    The synchronization issue with iteration and unsynchronized lookup()
    still remains, and it's awkward that init() still has to "patch" the
    aliases (must the hack remain in place?), but that could be solved
    in a separate followup issue as well as optimization for public
    java.nio.charset.StandardCharsets.<br>
    <br>
    The startup performance issue has been nicely handled, so this looks
    good to me, Claes.<br>
    <br>
    Regards, Peter<br>
    <br>
  </body>
</html>