Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Vladimir Kozlov
On Tue, 16 Apr 2024 19:47:06 GMT, Vladimir Kozlov wrote: >> Okay. > > It is tempting to do for `nmethod` to replace `init_defaults()`. I will look > what can be done. It does not work. It does not allow fields initialization after delegation: src/hotspot/share/code/nmethod.cpp: In constructor

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Vladimir Kozlov
On Tue, 16 Apr 2024 19:20:37 GMT, Vladimir Kozlov wrote: >> Delegating constructors are the answer to having some common 'init' >> functions. It would simply save lines of code that look the same in both >> constructor initializer lists. But it's a drive-by comment. > > Okay. It is tempting

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Vladimir Kozlov
On Tue, 16 Apr 2024 19:03:01 GMT, Coleen Phillimore wrote: >> Thank you, @coleenp, foe looking on these changes. >> >> Which fields are initialized twice? Only `_oop_maps` is set to `nullptr` >> before we proper build oop maps in first constructor. >> >> The only saving could be lines of code

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Coleen Phillimore
On Tue, 16 Apr 2024 18:54:40 GMT, Vladimir Kozlov wrote: >> src/hotspot/share/code/codeBlob.cpp line 106: >> >>> 104: >>> 105: // Simple CodeBlob used for simple BufferBlob. >>> 106: CodeBlob::CodeBlob(const char* name, CodeBlobKind kind, int size, >>> uint16_t header_size) : >> >> Just a

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Vladimir Kozlov
On Tue, 16 Apr 2024 16:33:18 GMT, Coleen Phillimore wrote: >> Vladimir Kozlov has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Use 16-bits types for header_size and frame_complete_offset arguments > > src/hotspot/share/code/codeBlob.cpp

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Coleen Phillimore
On Tue, 16 Apr 2024 03:31:25 GMT, Vladimir Kozlov wrote: >> 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 232 bytes. From >> 304 to 248 in optimized VM: >> >> Statistics

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-16 Thread Vladimir Kozlov
On Tue, 16 Apr 2024 03:31:25 GMT, Vladimir Kozlov wrote: >> 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 232 bytes. From >> 304 to 248 in optimized VM: >> >> Statistics

Re: RFR: 8329433: Reduce nmethod header size [v4]

2024-04-15 Thread Vladimir Kozlov
> 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 232 bytes. From > 304 to 248 in optimized VM: > > Statistics for 1282 bytecoded nmethods for C2: > total in heap = 5560352