From 125c30268a04495470833b18eb56f0469bc4ce42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Olivier=20B=C3=A9gassat?= Date: Sat, 21 Sep 2024 11:08:05 +0200 Subject: [PATCH] fix: full check arguments --- .../linea/zktracer/module/mmio/MmioData.java | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/arithmetization/src/main/java/net/consensys/linea/zktracer/module/mmio/MmioData.java b/arithmetization/src/main/java/net/consensys/linea/zktracer/module/mmio/MmioData.java index fdb6b9ba2..6abda566c 100644 --- a/arithmetization/src/main/java/net/consensys/linea/zktracer/module/mmio/MmioData.java +++ b/arithmetization/src/main/java/net/consensys/linea/zktracer/module/mmio/MmioData.java @@ -217,20 +217,20 @@ public void onePartialToTwo( public void oneToOnePadded( final Bytes16 sourceBytes, - final short sourceOffsetTrigger, - final short targetByteOffsetTrigger, + final short sourceByteOffset, + final short targetByteOffset, final short size) { - checkArgument(sourceOffsetTrigger <= LLARGEMO); - checkArgument(size <= LLARGE); - checkArgument(sourceOffsetTrigger + size - 1 <= LLARGEMO); - checkArgument(targetByteOffsetTrigger <= LLARGEMO); - checkArgument(targetByteOffsetTrigger + size - 1 <= LLARGEMO); + checkArgument(0 <= sourceByteOffset && sourceByteOffset <= LLARGEMO); + checkArgument(0 < size && size <= LLARGE); + checkArgument(sourceByteOffset + size - 1 <= LLARGEMO); + checkArgument(0 <= targetByteOffset && targetByteOffset <= LLARGEMO); + checkArgument(targetByteOffset + size - 1 <= LLARGEMO); for (short ct = 0; ct < LLARGE; ct++) { - bit1.add(ct, plateau(sourceOffsetTrigger, ct)); - bit2.add(ct, plateau(sourceOffsetTrigger + size, ct)); - bit3.add(ct, plateau(targetByteOffsetTrigger + size, ct)); + bit1.add(ct, plateau(sourceByteOffset, ct)); + bit2.add(ct, plateau(sourceByteOffset + size, ct)); + bit3.add(ct, plateau(targetByteOffset + size, ct)); } acc1 = isolateChunk(sourceBytes, bit1, bit2); pow2561 = power(bit3); @@ -250,21 +250,21 @@ public void excision(final Bytes16 target, final short targetOffsetTrigger, fina public void twoToOnePadded( final Bytes16 sourceBytes1, final Bytes16 sourceBytes2, - final short sourceOffsetTrigger, - final short targetOffsetTrigger, + final short sourceByteOffset, + final short targetByteOffset, final short size) { - checkArgument(sourceOffsetTrigger <= LLARGEMO); - checkArgument(size <= LLARGE); - checkArgument(sourceOffsetTrigger + size - 1 > LLARGEMO); - checkArgument(targetOffsetTrigger <= LLARGEMO); - checkArgument(targetOffsetTrigger + size - 1 <= LLARGEMO); + checkArgument(0 <= sourceByteOffset && sourceByteOffset <= LLARGEMO); + checkArgument(0 < size && size <= LLARGE); + checkArgument(sourceByteOffset + size - 1 > LLARGEMO); + checkArgument(0 <= targetByteOffset && targetByteOffset <= LLARGEMO); + checkArgument(targetByteOffset + size - 1 <= LLARGEMO); for (short ct = 0; ct < LLARGE; ct++) { - bit1.add(ct, plateau(sourceOffsetTrigger, ct)); - bit2.add(ct, plateau(sourceOffsetTrigger + size - LLARGE, ct)); - bit3.add(ct, plateau(targetOffsetTrigger + LLARGE - sourceOffsetTrigger, ct)); - bit4.add(ct, plateau(targetOffsetTrigger + size, ct)); + bit1.add(ct, plateau(sourceByteOffset, ct)); + bit2.add(ct, plateau(sourceByteOffset + size - LLARGE, ct)); + bit3.add(ct, plateau(targetByteOffset + LLARGE - sourceByteOffset, ct)); + bit4.add(ct, plateau(targetByteOffset + size, ct)); } acc1 = isolateSuffix(sourceBytes1, bit1); acc2 = isolatePrefix(sourceBytes2, bit2);