RFR: 8356176: C2 MemorySegment: missing RCE with byteSize() in Loop Exit Check inside the for Expression [v3]
    Manuel Hässig 
    mhaessig at openjdk.org
       
    Tue Aug 12 15:20:20 UTC 2025
    
    
  
On Tue, 12 Aug 2025 12:54:13 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> Manuel Hässig has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - Improve comment
>>  - Fix build failure on product
>
> test/hotspot/jtreg/compiler/loopopts/superword/TestMemorySegmentByteSizeLongLoopLimit.java line 62:
> 
>> 60:     @Test
>> 61:     @IR(counts = {IRNode.LOAD_VECTOR_I, IRNode.VECTOR_SIZE_ANY, "> 0",
>> 62:                   IRNode.ADD_VI, IRNode.VECTOR_SIZE_ANY,        "> 0",
> 
> Oh I only just saw it now. Do you think we can specify the `VECTOR_SIZE` more precisely?
> If we don't assert the vector size, it could be that we generate vectors that are smaller, and produce lower performance.
> 
> The issue may have been that we have mixed types here.
> 
> I wonder if this approach would work for you here:
> `test/hotspot/jtreg/compiler/loopopts/superword/TestUnorderedReductionPartialVectorization.java:                  IRNode.VECTOR_CAST_I2L, IRNode.VECTOR_SIZE + "min(max_int, max_long)", "> 0",`
TIL about the  language for vector sizes, thank you.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26429#discussion_r2270242045
    
    
More information about the hotspot-compiler-dev
mailing list