[jdk17] Integrated: 8269828: corrections in some instruction patterns for KNL x86 platform
Jatin Bhateja
jbhateja at openjdk.java.net
Thu Jul 8 12:23:54 UTC 2021
On Wed, 7 Jul 2021 16:09:08 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
> Currently a temporary operand with register class regD is used in rep_stos_evex and rep_stos_large_evex instruction patterns, whose encoding blocks calls xmm_clear_mem routine which has a VEX encoded instruction in the control path.
> Thus regD class should be changed to legRegD on AVX512 platforms so that operand is always allocated from lower register bank (0-15).
>
> There is one more issue related to usage of regD operand which is a scalar operand in a vector instruction, usually such cases may result into problems during spilling/restoration since only a scalar value is dumped and restored back, but in current context its a temporary operand may never get spilled.
This pull request has now been integrated.
Changeset: 168af2e6
Author: Jatin Bhateja <jbhateja at openjdk.org>
URL: https://git.openjdk.java.net/jdk17/commit/168af2e6b2343d6674fa053dcb09aca028e372bf
Stats: 4 lines in 2 files changed: 0 ins; 0 del; 4 mod
8269828: corrections in some instruction patterns for KNL x86 platform
Reviewed-by: kvn, dlong
-------------
PR: https://git.openjdk.java.net/jdk17/pull/225
More information about the hotspot-compiler-dev
mailing list