On Thu, 3 Apr 2025 06:36:04 GMT, Nikita Gubarkov <ngubar...@openjdk.org> wrote:

>I just accepted any pixel-interleaved surface with 4-byte stride and assumed 
>that I can blit it directly. 

So you implemented logic similar to [this 
one](https://github.com/openjdk/jdk/blob/bd74922157230c866802b4c5269da81e872525aa/src/java.desktop/share/native/libawt/java2d/loops/LoopMacros.h#L847).

I haven’t found yet whether we have logic to fall back to a "generic Java loop" 
if the gap is not stored in the array and that memcpy fails. If we’re missing 
this, we should either:

- Add the fallback,
- Implement another version of the loop that handles the tail, or
- Update the current ISOSCALE_BLIT.

A similar approach could be implemented for Vulkan as well.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24111#discussion_r2026378715

Reply via email to