Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8010203 Optimize IR memory footprint
  3. JDK-8013925

Remove symbol fields from nodes that don't need them

    XMLWordPrintable

Details

    • Sub-task
    • Resolution: Fixed
    • P3
    • 8
    • 8
    • core-libs
    • None
    • b100
    • generic
    • generic

    Description

      Symbol is now in the Node superclass, facilitating Nodes being cloneable for the entire copy on write thing, when in reality these are the only nodes that use symbols

      20985 [testng] class jdk.nashorn.internal.ir.ObjectNode
      1973 [testng] class jdk.nashorn.internal.ir.TernaryNode
      53290 [testng] class jdk.nashorn.internal.ir.PropertyNode
      *32223 [testng] class jdk.nashorn.internal.ir.VarNode
      *231519 [testng] class jdk.nashorn.internal.ir.CallNode
      *3798 [testng] class jdk.nashorn.internal.ir.RuntimeNode
      * 11642 [testng] class jdk.nashorn.internal.ir.LiteralNode
      *32506 [testng] class jdk.nashorn.internal.ir.FunctionNode
      *50964 [testng] class jdk.nashorn.internal.ir.IndexNode
      *71103 [testng] class jdk.nashorn.internal.ir.AccessNode
      *114744 [testng] class jdk.nashorn.internal.ir.UnaryNode
      *231651 [testng] class jdk.nashorn.internal.ir.BinaryNode
      * 821058 [testng] class jdk.nashorn.internal.ir.IdentNode

      (counts in a mandreel run)

      We should move symbols into nodes that use them.

      Also literals are by virtue of their definitions not in need of symbols, at least not in the traditional typed way - slots maybe

      Attachments

        Issue Links

          Activity

            People

              attila Attila Szegedi
              lagergren Marcus Lagergren
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: