This is part of changes which try to reduce size of `nmethod` and `codeblob` 
data vs code in CodeCache.
These changes reduced size of `nmethod` header from 288 to 240 bytes. From 304 
to 256 in optimized VM:

Statistics for 1282 bytecoded nmethods for C2:
 total in heap = 5560352 (100%)
 header = 389728 (7.009053%)

vs

Statistics for 1298 bytecoded nmethods for C2:
 total in heap  = 5766040 (100%)
 header         = 332288 (5.762846%)


Several unneeded fields in `nmethod` and `CodeBlob` were removed. Some fields 
were changed from `int` to `int16_t` with added corresponding asserts to make 
sure their values are fit into 16 bits.

I did additional cleanup after recent `CompiledMethod` removal.

Tested tier1-7,stress,xcomp and performance testing.

-------------

Commit messages:
 - 8329433: Reduce nmethod header size

Changes: https://git.openjdk.org/jdk/pull/18768/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=18768&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8329433
  Stats: 386 lines in 15 files changed: 92 ins; 115 del; 179 mod
  Patch: https://git.openjdk.org/jdk/pull/18768.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/18768/head:pull/18768

PR: https://git.openjdk.org/jdk/pull/18768

Reply via email to