Added floating point formats to glCopyTexImage2D

Added floating point formats to validateColorBufferFormat,
which is used by glCopyTexImage2D, since it was a missing
part of the previously added floating point extensions.

From the extension spec:
https://www.khronos.org/registry/gles/extensions/EXT/EXT_color_buffer_half_float.txt
"9. Should CopyTex[Sub]Image be supported for floating-point formats? [...] Yes."

Change-Id: Ie14d8afd352b004e8a2400cfef16facdeab94e33
Reviewed-on: https://swiftshader-review.googlesource.com/5110
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/libGLESv2.cpp b/src/OpenGL/libGLESv2/libGLESv2.cpp
index 19db3b2..ec8a2fa 100644
--- a/src/OpenGL/libGLESv2/libGLESv2.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv2.cpp
@@ -73,7 +73,9 @@
 		   colorbufferFormat != GL_RGBA &&

 		   colorbufferFormat != GL_RGBA4 &&

 		   colorbufferFormat != GL_RGB5_A1 &&

-		   colorbufferFormat != GL_RGBA8_OES)

+		   colorbufferFormat != GL_RGBA8_OES &&

+		   colorbufferFormat != GL_RGBA16F_EXT &&

+		   colorbufferFormat != GL_RGBA32F_EXT)

 		{

 			return error(GL_INVALID_OPERATION, false);

 		}

@@ -86,7 +88,11 @@
 		   colorbufferFormat != GL_RGBA &&

 		   colorbufferFormat != GL_RGBA4 &&

 		   colorbufferFormat != GL_RGB5_A1 &&

-		   colorbufferFormat != GL_RGBA8_OES)

+		   colorbufferFormat != GL_RGBA8_OES &&

+		   colorbufferFormat != GL_RGB16F_EXT &&

+		   colorbufferFormat != GL_RGB32F_EXT &&

+		   colorbufferFormat != GL_RGBA16F_EXT &&

+		   colorbufferFormat != GL_RGBA32F_EXT)

 		{

 			return error(GL_INVALID_OPERATION, false);

 		}

@@ -96,7 +102,9 @@
 		if(colorbufferFormat != GL_RGBA &&

 		   colorbufferFormat != GL_RGBA4 &&

 		   colorbufferFormat != GL_RGB5_A1 &&

-		   colorbufferFormat != GL_RGBA8_OES)

+		   colorbufferFormat != GL_RGBA8_OES &&

+		   colorbufferFormat != GL_RGBA16F_EXT &&

+		   colorbufferFormat != GL_RGBA32F_EXT)

 		{

 			return error(GL_INVALID_OPERATION, false);

 		}