lib/lz4/lz4_decompress.c: document deliberate use of `&'
authorJoe Perches <joe@perches.com>
Thu, 11 Jun 2020 01:41:32 +0000 (18:41 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 11 Jun 2020 02:14:17 +0000 (19:14 -0700)
This operation was intentional, but tools such as smatch will warn that it
might not have been.

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Yann Collet <cyan@fb.com>
Cc: Vasily Averin <vvs@virtuozzo.com>
Cc: Gao Xiang <hsiangkao@aol.com>
Link: http://lkml.kernel.org/r/3bf931c6ea0cae3e23f3485801986859851b4f04.camel@perches.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/lz4/lz4_decompress.c

index 0c9d3ad..5371dab 100644 (file)
@@ -141,6 +141,9 @@ static FORCE_INLINE int LZ4_decompress_generic(
                 * space in the output for those 18 bytes earlier, upon
                 * entering the shortcut (in other words, there is a
                 * combined check for both stages).
+                *
+                * The & in the likely() below is intentionally not && so that
+                * some compilers can produce better parallelized runtime code
                 */
                if ((endOnInput ? length != RUN_MASK : length <= 8)
                   /*