Fix support for all GL_EXT_read_format_bgra formats.

Change-Id: I9b3977959aea8bd2711ebd94e06c0e09376d4d6e
Reviewed-on: https://swiftshader-review.googlesource.com/4768
Tested-by: Nicolas Capens <capn@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/common/Image.cpp b/src/OpenGL/common/Image.cpp
index 81dd0c6..cb8c76d 100644
--- a/src/OpenGL/common/Image.cpp
+++ b/src/OpenGL/common/Image.cpp
@@ -469,7 +469,9 @@
 		case GL_BGRA8_EXT:
 			switch(type)
 			{
-			case GL_UNSIGNED_BYTE:          return sw::FORMAT_A8R8G8B8;
+			case GL_UNSIGNED_BYTE:                  return sw::FORMAT_A8R8G8B8;
+			case GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT: return sw::FORMAT_A4R4G4B4;
+			case GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT: return sw::FORMAT_A1R5G5B5;
 			default: UNREACHABLE(type);
 			}
 			break;
@@ -1017,6 +1019,8 @@
 		case GL_UNSIGNED_SHORT_4_4_4_4:
 		case GL_UNSIGNED_SHORT_5_5_5_1:
 		case GL_UNSIGNED_SHORT_5_6_5:
+		case GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT:
+		case GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT:
 			return sizeof(unsigned short);
 		case GL_UNSIGNED_INT_10F_11F_11F_REV:
 		case GL_UNSIGNED_INT_5_9_9_9_REV: