RFR: 8327652: S390x: Implements SLP support [v6]

Sidraya Jayagond sjayagond at openjdk.org
Wed Mar 27 08:31:25 UTC 2024


On Mon, 25 Mar 2024 17:07:00 GMT, Lutz Schmidt <lucy at openjdk.org> wrote:

>> Sidraya Jayagond has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Fix cosmetic review comments
>
> src/hotspot/cpu/s390/s390.ad line 1194:
> 
>> 1192:     }
>> 1193:     return size;
>> 1194:   }
> 
> How about doing the size calculation like 
> 
>   if (cbuf) {
>     C2_MacroAssembler _masm(cbuf);
>     int start_off = __ offset();
>     __ z_vlr(Rdst, Rsrc);
>     size += __offset() - start_off;
>   }
> 
> That way, you are sure to have the correct size. And you only increase the size if you actually emit code.

Thank you @RealLucy  for taking a look. 
I have tried  your suggestion however some of the jtreg tests are crashing at below line

#  Internal Error (output.cpp:1799), pid=846930, tid=846947
#  guarantee((int)(blk_starts[i+1] - blk_starts[i]) >= (current_offset - blk_offset)) failed: shouldn't increase block size
#
# JRE version: OpenJDK Runtime Environment (23.0) (build 23-internal-adhoc.root.jdk)
# Java VM: OpenJDK 64-Bit Server VM (23-internal-adhoc.root.jdk, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-s390x)
# Problematic frame:
# V  [libjvm.so+0x9f8ce6]  PhaseOutput::fill_buffer(CodeBuffer*, unsigned int*)+0x153e

> src/hotspot/cpu/s390/sharedRuntime_s390.cpp line 315:
> 
>> 313:   const int vregstosave_num     = save_vectors ? (sizeof(RegisterSaver_LiveVRegs) /
>> 314:                                                   sizeof(RegisterSaver::LiveRegType))
>> 315:                                                   : 0;
> 
> I'd like to have this calculation in only one place. Don't duplicate code, in particular when it's a calculation that must yield the same result.

Yes, I fix this.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18162#discussion_r1540657605
PR Review Comment: https://git.openjdk.org/jdk/pull/18162#discussion_r1540659426


More information about the hotspot-dev mailing list