]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdePkg/BaseSafeIntLib: clean up parentheses in MIN_INT64_MAGNITUDE
authorLaszlo Ersek <lersek@redhat.com>
Thu, 15 Feb 2018 16:09:43 +0000 (17:09 +0100)
committerLaszlo Ersek <lersek@redhat.com>
Wed, 21 Feb 2018 10:57:36 +0000 (11:57 +0100)
The definition of the MIN_INT64_MAGNITUDE macro is correct, but it's
harder to read than necessary: the sub-expression

      (( (UINT64) - (MIN_INT64 + 1) ))

is doubly parenthesized. Reusing one pair of the outer parens, rewrite the
sub-expression (without change in meaning) so that the minus sign cannot
be mistaken for subtraction:

      ( (UINT64)(- (MIN_INT64 + 1)) )

The resultant macro definition matches the following expressions in
SafeInt64Mult():

>     //
>     // Avoid negating the most negative number.
>     //
>     UnsignedMultiplicand = ((UINT64)(- (Multiplicand + 1))) + 1;

and

>     //
>     // Avoid negating the most negative number.
>     //
>     UnsignedMultiplier = ((UINT64)(- (Multiplier + 1))) + 1;

Cc: Bret Barkelew <Bret.Barkelew@microsoft.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Michael D Kinney <michael.d.kinney@intel.com>
MdePkg/Library/BaseSafeIntLib/SafeIntLib.c

index 56d97cf65601835aacd0d1e79cf2318368f3e9cf..de91ffeca2a560b17b0bbc8cd7dd6309b745c9e3 100644 (file)
@@ -33,7 +33,7 @@
 //\r
 // Magnitude of MIN_INT64 as expressed by a UINT64 number.\r
 //\r
-#define MIN_INT64_MAGNITUDE ((((UINT64) - (MIN_INT64 + 1))) + 1)\r
+#define MIN_INT64_MAGNITUDE (((UINT64)(- (MIN_INT64 + 1))) + 1)\r
 \r
 //\r
 // Conversion functions\r