RFR: 8255397: x86: coalesce reference and int entry points into vtos bytecodes [v2]

Claes Redestad redestad at openjdk.java.net
Wed Oct 28 11:14:20 UTC 2020


On Wed, 28 Oct 2020 11:07:53 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Claes Redestad has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:
>> 
>>  - Drop verification from comment
>>  - Introduce push_i_or_ptr
>>  - Merge branch 'master' into atos_itos_opt
>>  - x86: coalesce some ptr and int entry points
>
> Changes requested by shade (Reviewer).

> Would rebalancing the entry points order give the similar improvement without messing up the code? For example, what happens if we move `aep` to be the last entry point, and set up `[bcsi]ep` for a short jump?

Looks like a wash, at least on Hello World

> There is a middle-ground, I think: introduce `push_i_or_ptr` and delegate it to `push`. That would make it clear what usages expect `push_i` and `push_ptr` shapes to match, and if later it proves to be a problem, we could easily revert all new usages to the old form.

Good suggestion.

> src/hotspot/cpu/x86/interp_masm_x86.hpp line 152:
> 
>> 150:   // an int might have some advantage, while still documenting the fact that a
>> 151:   // ptr might be pushed to the stack. This method will never do any
>> 152:   // verification of the oop.
> 
> I don't think we need to mention verification here.

Sure, I'll drop that.

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

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


More information about the hotspot-dev mailing list