From 57ecf581d053f5cacf2e8fc3c024490e0bbe536f Mon Sep 17 00:00:00 2001 From: Brendan Bolles Date: Wed, 13 Aug 2014 19:54:10 -0700 Subject: [PATCH 1/2] Use LL for 64-bit literals On a 32-bit architecture, these literals are too big for just a long, they need to be long long, otherwise I get an error in GCC. --- OpenEXR/IlmImf/ImfFastHuf.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/OpenEXR/IlmImf/ImfFastHuf.cpp b/OpenEXR/IlmImf/ImfFastHuf.cpp index 86c84dce21..01edad401a 100644 --- a/OpenEXR/IlmImf/ImfFastHuf.cpp +++ b/OpenEXR/IlmImf/ImfFastHuf.cpp @@ -107,7 +107,7 @@ FastHufDecoder::FastHufDecoder for (int i = 0; i <= MAX_CODE_LEN; ++i) { codeCount[i] = 0; - base[i] = 0xffffffffffffffffL; + base[i] = 0xffffffffffffffffLL; offset[i] = 0; } @@ -352,7 +352,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) for (int i = 0; i <= MAX_CODE_LEN; ++i) { - if (base[i] != 0xffffffffffffffffL) + if (base[i] != 0xffffffffffffffffLL) { _ljBase[i] = base[i] << (64 - i); } @@ -362,7 +362,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) // Unused code length - insert dummy values // - _ljBase[i] = 0xffffffffffffffffL; + _ljBase[i] = 0xffffffffffffffffLL; } } @@ -417,7 +417,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) int minIdx = TABLE_LOOKUP_BITS; - while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffL) + while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffLL) minIdx--; if (minIdx < 0) @@ -427,7 +427,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) // Set the min value such that the table is never tested. // - _tableMin = 0xffffffffffffffffL; + _tableMin = 0xffffffffffffffffLL; } else { From 353cbc2e89c582e07796f01bce8f203e84c8ae46 Mon Sep 17 00:00:00 2001 From: Brendan Bolles Date: Thu, 14 Aug 2014 18:49:56 -0700 Subject: [PATCH 2/2] Change suffixes to ULL because Int64 is unsigned As discusses in pull request #126 --- OpenEXR/IlmImf/ImfFastHuf.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/OpenEXR/IlmImf/ImfFastHuf.cpp b/OpenEXR/IlmImf/ImfFastHuf.cpp index 01edad401a..10bc3187e8 100644 --- a/OpenEXR/IlmImf/ImfFastHuf.cpp +++ b/OpenEXR/IlmImf/ImfFastHuf.cpp @@ -107,7 +107,7 @@ FastHufDecoder::FastHufDecoder for (int i = 0; i <= MAX_CODE_LEN; ++i) { codeCount[i] = 0; - base[i] = 0xffffffffffffffffLL; + base[i] = 0xffffffffffffffffULL; offset[i] = 0; } @@ -352,7 +352,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) for (int i = 0; i <= MAX_CODE_LEN; ++i) { - if (base[i] != 0xffffffffffffffffLL) + if (base[i] != 0xffffffffffffffffULL) { _ljBase[i] = base[i] << (64 - i); } @@ -362,7 +362,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) // Unused code length - insert dummy values // - _ljBase[i] = 0xffffffffffffffffLL; + _ljBase[i] = 0xffffffffffffffffULL; } } @@ -417,7 +417,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) int minIdx = TABLE_LOOKUP_BITS; - while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffLL) + while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffULL) minIdx--; if (minIdx < 0) @@ -427,7 +427,7 @@ FastHufDecoder::buildTables (Int64 *base, Int64 *offset) // Set the min value such that the table is never tested. // - _tableMin = 0xffffffffffffffffLL; + _tableMin = 0xffffffffffffffffULL; } else {