RegisterImpl declarations take up too much space

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P4
    • 1.4.1
    • Affects Version/s: 1.4.0
    • Component/s: hotspot
    • None
    • hopper
    • sparc
    • solaris_8

      Currently the way we declare Registers uses up a lot of space. The
      definition:

      const Register noreg = as_Register(-1);

      results in a private definition of noreg in every file that sees it
      plus a static construtor call to initialize it. Since sparc has a lot
      of registers and register_<arch>.hpp is seen by almost all files, roughly 220, this results in a lot wasted space. There are about 125 registers declared in total, including the ones used by the interpreter, which total about 125 * 220 * 4 = 110k of local definitions of Register. In addition everyone of these has a static constructor that is run at library load time. The code for these totals roughly 120k.
      ###@###.### 2002-02-25

            Assignee:
            Tom Rodriguez
            Reporter:
            Tom Rodriguez
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: