On Mon, 30 Mar 2026 08:13:11 GMT, Emanuel Peter <[email protected]> wrote:

>> I did not write this - it was already there before!
>> But you are right it is obvious non-sense, given the assert below 
>> `assert(resSizeLog2 >= 0);`
>> 
>> I think I'm going to just delete these two lines. Given all the other 
>> comments, they are now not very helpful any more. Let me know if you 
>> disagree.
>
> Ah no wait. It is sensible and correct.
> But maybe I can reformulate it.
> `resSizeLog2 = 0` means the logical result is exactly a single byte.
> `resSizeLog2 < 0` would mean we have less than a byte in total for the logial 
> result. So a fractional byte. That is obviously non-sense, hence the assert 
> below.

Going with this:

~ 504         // resSizeLog2 = 0 => logical result only has a single byte
~ 505         //                    e.g. cast L64 (1-element long) to B8 
(1-element byte)
+ 506         // resSizeLog2 < 0 => logical result has less than a byte -> 
impossible!                                                                     
                                                                                
                                                                                
                                                                                
                                 
+ 507         //                    currently, all vectors start with at least 
8 bytes,
+ 508         //                    and we can contract by at most a factor of 
8.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/30113#discussion_r3008254522

Reply via email to