On Sun, 24 Jan 2021 16:10:44 GMT, Anton Kozlov <akoz...@openjdk.org> wrote:

>> src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp line 394:
>> 
>>> 392: 
>>> 393: class SlowSignatureHandler
>>> 394:   : public NativeSignatureIterator {
>> 
>> SlowSignatureHandler is turning into a maintenance nightmare. This isn't the 
>> fault of this commit so much as some nasty cut-and-paste programming in the 
>> code you're editing. It might well be better to rewrite this whole thing to 
>> use a table-driven approach, with a table that contains the increment and 
>> the size of each native type: then we'd have only a single routine which 
>> could pass data of any type, and each OS needs only supply a table of 
>> constants.
>
> Would you like me to do something about it now? The problem is that the 
> functions of SlowSignatureHandler are subtly different, so it will be 
> multiple tables, not sure how many. Such change is another candidate for a 
> separate code enhancement, which I would like not to mix into the JEP 
> implementation (it's already not a small change :)). But if you think it 
> would be a good thing, please let me know. In another case, I'll add this to 
> a queue of follow-up enhancements.

I'm not sure it can wait. This change turns already-messy code into something 
significantly messier, to the extent that it's not really good enough to go 
into mainline.

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

PR: https://git.openjdk.java.net/jdk/pull/2200

Reply via email to