Fix additional issues reported by UB sanitizers

Most of these involved overrunning the signed 32-bit JLONG type whenever
building libjpeg-turbo with a 32-bit compiler.  These issues are not
believed to represent actual security threats, but eliminating them
makes it easier to detect such threats should they arise in the future.
diff --git a/jdcolor.c b/jdcolor.c
index 6a5d819..af7c575 100644
--- a/jdcolor.c
+++ b/jdcolor.c
@@ -604,7 +604,7 @@
  */
 
 #define DITHER_MASK       0x3
-#define DITHER_ROTATE(x)  (((x) << 24) | (((x) >> 8) & 0x00FFFFFF))
+#define DITHER_ROTATE(x)  ((((x) & 0xFF) << 24) | (((x) >> 8) & 0x00FFFFFF))
 static const JLONG dither_matrix[4] = {
   0x0008020A,
   0x0C040E06,