Fixed Windows warnings

- Removed unused variables
- Removed unreachable code
- Fixed size_t <-> int conversions
- Fixed uninitialized variables

Change-Id: Ifc3912e92b8f0710094e939bd0da4757148b559a
Reviewed-on: https://swiftshader-review.googlesource.com/5681
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/Main/FrameBufferDD.cpp b/src/Main/FrameBufferDD.cpp
index 5fd8dbb..9d85ea5 100644
--- a/src/Main/FrameBufferDD.cpp
+++ b/src/Main/FrameBufferDD.cpp
@@ -82,7 +82,7 @@
 			surfaceDescription.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
 			surfaceDescription.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_FLIP | DDSCAPS_COMPLEX;
 			surfaceDescription.dwBackBufferCount = 1;
-			long result = directDraw->CreateSurface(&surfaceDescription, &frontBuffer, 0);
+			directDraw->CreateSurface(&surfaceDescription, &frontBuffer, 0);
 
 			if(frontBuffer)
 			{
@@ -352,7 +352,6 @@
 		{
 			int width = DDSD.dwWidth;
 			int height = DDSD.dwHeight;
-			int bitDepth = DDSD.ddpfPixelFormat.dwRGBBitCount;
 			int stride = DDSD.lPitch;
 
 			void *sourceBuffer = DDSD.lpSurface;
@@ -424,7 +423,6 @@
 		{
 			width = DDSD.dwWidth;
 			height = DDSD.dwHeight;
-			int bitDepth = DDSD.ddpfPixelFormat.dwRGBBitCount;
 			stride = DDSD.lPitch;
 
 			locked = DDSD.lpSurface;
diff --git a/src/OpenGL/compiler/ConstantUnion.h b/src/OpenGL/compiler/ConstantUnion.h
index 27f816c..6b1050f 100644
--- a/src/OpenGL/compiler/ConstantUnion.h
+++ b/src/OpenGL/compiler/ConstantUnion.h
@@ -152,8 +152,6 @@
 		default:
 			return false;
 		}
-
-		return false;
 	}
 
 	bool operator!=(const int i) const
@@ -194,8 +192,6 @@
 		default:
 			return false;   // Invalid operation, handled at semantic analysis
 		}
-
-		return false;
 	}
 
 	bool operator<(const ConstantUnion& constant) const
@@ -211,8 +207,6 @@
 		default:
 			return false;   // Invalid operation, handled at semantic analysis
 		}
-
-		return false;
 	}
 
 	bool operator<=(const ConstantUnion& constant) const
@@ -228,8 +222,6 @@
 		default:
 			return false;   // Invalid operation, handled at semantic analysis
 		}
-
-		return false;
 	}
 
 	bool operator>=(const ConstantUnion& constant) const
@@ -245,8 +237,6 @@
 		default:
 			return false;   // Invalid operation, handled at semantic analysis
 		}
-
-		return false;
 	}
 
 	ConstantUnion operator+(const ConstantUnion& constant) const
diff --git a/src/OpenGL/libEGL/Display.cpp b/src/OpenGL/libEGL/Display.cpp
index 387d23e..63ad1ea 100644
--- a/src/OpenGL/libEGL/Display.cpp
+++ b/src/OpenGL/libEGL/Display.cpp
@@ -542,13 +542,13 @@
 
 			return status == True;
 		}
+		return false;
 	#elif defined(__APPLE__)
 		return sw::OSX::IsValidWindow(window);
 	#else
 		#error "Display::isValidWindow unimplemented for this platform"
+		return false;
 	#endif
-
-	return false;
 }
 
 bool Display::hasExistingWindowSurface(EGLNativeWindowType window)
diff --git a/src/OpenGL/libEGL/libEGL.cpp b/src/OpenGL/libEGL/libEGL.cpp
index a85d301..4fa1cf3 100644
--- a/src/OpenGL/libEGL/libEGL.cpp
+++ b/src/OpenGL/libEGL/libEGL.cpp
@@ -1043,17 +1043,15 @@
 {
 	TRACE("(EGLenum platform = 0x%X, void *native_display = %p, const EGLint *attrib_list = %p)", platform, native_display, attrib_list);
 
-	switch(platform)
-	{
 	#if defined(__linux__) && !defined(__ANDROID__)
-	case EGL_PLATFORM_X11_EXT: break;
-	case EGL_PLATFORM_GBM_KHR: break;
-	#endif
-	default:
-		return error(EGL_BAD_PARAMETER, EGL_NO_DISPLAY);
-	}
+		switch(platform)
+		{
+		case EGL_PLATFORM_X11_EXT: break;
+		case EGL_PLATFORM_GBM_KHR: break;
+		default:
+			return error(EGL_BAD_PARAMETER, EGL_NO_DISPLAY);
+		}
 
-	#if defined(__linux__) && !defined(__ANDROID__)
 		if(platform == EGL_PLATFORM_X11_EXT)
 		{
 			if(!libX11)
@@ -1075,9 +1073,11 @@
 
 			return success(HEADLESS_DISPLAY);
 		}
-	#endif
 
-	return success(PRIMARY_DISPLAY);   // We only support the default display
+		return success(PRIMARY_DISPLAY);   // We only support the default display
+	#else
+		return error(EGL_BAD_PARAMETER, EGL_NO_DISPLAY);
+	#endif
 }
 
 EGLSurface CreatePlatformWindowSurfaceEXT(EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list)
diff --git a/src/OpenGL/libGLESv2/IndexDataManager.cpp b/src/OpenGL/libGLESv2/IndexDataManager.cpp
index 8405aea..2bdd596 100644
--- a/src/OpenGL/libGLESv2/IndexDataManager.cpp
+++ b/src/OpenGL/libGLESv2/IndexDataManager.cpp
@@ -125,7 +125,7 @@
 	}
 	else
 	{
-		unsigned int streamOffset = 0;
+		size_t streamOffset = 0;
 		int convertCount = count;
 
 		streamingBuffer->reserveSpace(convertCount * typeSize(type), type);
@@ -143,7 +143,7 @@
 		computeRange(type, indices, count, &translated->minIndex, &translated->maxIndex);
 
 		translated->indexBuffer = streamingBuffer->getResource();
-		translated->indexOffset = streamOffset;
+		translated->indexOffset = static_cast<unsigned int>(streamOffset);
 	}
 
 	if(translated->minIndex < start || translated->maxIndex > end)
@@ -165,7 +165,7 @@
 	}
 }
 
-StreamingIndexBuffer::StreamingIndexBuffer(unsigned int initialSize) : mIndexBuffer(NULL), mBufferSize(initialSize)
+StreamingIndexBuffer::StreamingIndexBuffer(size_t initialSize) : mIndexBuffer(NULL), mBufferSize(initialSize)
 {
 	if(initialSize > 0)
 	{
@@ -188,7 +188,7 @@
 	}
 }
 
-void *StreamingIndexBuffer::map(unsigned int requiredSpace, unsigned int *offset)
+void *StreamingIndexBuffer::map(size_t requiredSpace, size_t *offset)
 {
 	void *mapPtr = NULL;
 
@@ -217,7 +217,7 @@
 	}
 }
 
-void StreamingIndexBuffer::reserveSpace(unsigned int requiredSpace, GLenum type)
+void StreamingIndexBuffer::reserveSpace(size_t requiredSpace, GLenum type)
 {
 	if(requiredSpace > mBufferSize)
 	{
diff --git a/src/OpenGL/libGLESv2/IndexDataManager.h b/src/OpenGL/libGLESv2/IndexDataManager.h
index 225e30c..0a5e398 100644
--- a/src/OpenGL/libGLESv2/IndexDataManager.h
+++ b/src/OpenGL/libGLESv2/IndexDataManager.h
@@ -37,19 +37,19 @@
 class StreamingIndexBuffer
 {
 public:
-	StreamingIndexBuffer(unsigned int initialSize);
+	StreamingIndexBuffer(size_t initialSize);
 	virtual ~StreamingIndexBuffer();
 
-	void *map(unsigned int requiredSpace, unsigned int *offset);
+	void *map(size_t requiredSpace, size_t *offset);
 	void unmap();
-	void reserveSpace(unsigned int requiredSpace, GLenum type);
+	void reserveSpace(size_t requiredSpace, GLenum type);
 
 	sw::Resource *getResource() const;
 
 private:
 	sw::Resource *mIndexBuffer;
-	unsigned int mBufferSize;
-	unsigned int mWritePosition;
+	size_t mBufferSize;
+	size_t mWritePosition;
 };
 
 class IndexDataManager
diff --git a/src/OpenGL/libGLESv2/utilities.cpp b/src/OpenGL/libGLESv2/utilities.cpp
index 9d22290..841bcab 100644
--- a/src/OpenGL/libGLESv2/utilities.cpp
+++ b/src/OpenGL/libGLESv2/utilities.cpp
@@ -776,7 +776,7 @@
 			return error(GL_INVALID_ENUM, false);
 		}
 
-		if(internalformat != format)
+		if((GLenum)internalformat != format)
 		{
 			if(clientVersion < 3)
 			{
@@ -993,7 +993,7 @@
 
 		#undef VALIDATE_INTERNALFORMAT
 
-		if(internalformat != format && !validSizedInternalformat)
+		if((GLenum)internalformat != format && !validSizedInternalformat)
 		{
 			return error(GL_INVALID_OPERATION, false);
 		}
diff --git a/src/Reactor/RoutineManager.cpp b/src/Reactor/RoutineManager.cpp
index c3636e0..820d25a 100644
--- a/src/Reactor/RoutineManager.cpp
+++ b/src/Reactor/RoutineManager.cpp
@@ -51,7 +51,7 @@
 	{
 		if(actualSize == 0)   // Estimate size
 		{
-			int instructionCount = 0;
+			size_t instructionCount = 0;
 			for(llvm::Function::const_iterator basicBlock = function->begin(); basicBlock != function->end(); basicBlock++)
 			{
 				instructionCount += basicBlock->size();
diff --git a/src/Renderer/RoutineCache.hpp b/src/Renderer/RoutineCache.hpp
index 8965a1c..c6e9b4f 100644
--- a/src/Renderer/RoutineCache.hpp
+++ b/src/Renderer/RoutineCache.hpp
@@ -133,7 +133,7 @@
 						#else
 							for(int j = 1; j < codeSize - 4; j++)
 							{
-								unsigned char modRM_SIB = entry[j - 1];
+							//	unsigned char modRM_SIB = entry[j - 1];
 								uint64_t address = *(uint64_t*)&entry[j];
 
 							//	if((modRM_SIB & 0x05) == 0x05 && (address % 4) == 0)
diff --git a/src/Renderer/Surface.cpp b/src/Renderer/Surface.cpp
index c758b98..5ddea4a 100644
--- a/src/Renderer/Surface.cpp
+++ b/src/Renderer/Surface.cpp
@@ -2577,8 +2577,6 @@
 		default:
 			return bytes(format) * width * height * depth;
 		}
-
-		return 0;
 	}
 
 	bool Surface::isStencil(Format format)
@@ -2834,8 +2832,6 @@
 		default:
 			return false;
 		}
-
-		return false;
 	}
 
 	bool Surface::isSRGBwritable(Format format)
diff --git a/src/Renderer/VertexProcessor.cpp b/src/Renderer/VertexProcessor.cpp
index 402e11a..574cdbb 100644
--- a/src/Renderer/VertexProcessor.cpp
+++ b/src/Renderer/VertexProcessor.cpp
@@ -191,7 +191,7 @@
 		}
 	}
 
-	void VertexProcessor::setTransformFeedbackBuffer(int index, sw::Resource* buffer, int offset, unsigned int reg, unsigned int row, unsigned int col, size_t stride)
+	void VertexProcessor::setTransformFeedbackBuffer(int index, sw::Resource* buffer, int offset, unsigned int reg, unsigned int row, unsigned int col, unsigned int stride)
 	{
 		transformFeedbackInfo[index].buffer = buffer;
 		transformFeedbackInfo[index].offset = offset;
diff --git a/src/Renderer/VertexProcessor.hpp b/src/Renderer/VertexProcessor.hpp
index 1337860..f0cf124 100644
--- a/src/Renderer/VertexProcessor.hpp
+++ b/src/Renderer/VertexProcessor.hpp
@@ -195,7 +195,7 @@
 		void setUniformBuffer(int index, sw::Resource* uniformBuffer, int offset);
 		void lockUniformBuffers(byte** u, sw::Resource* uniformBuffers[]);
 
-		void setTransformFeedbackBuffer(int index, sw::Resource* transformFeedbackBuffer, int offset, unsigned int reg, unsigned int row, unsigned int col, size_t stride);
+		void setTransformFeedbackBuffer(int index, sw::Resource* transformFeedbackBuffer, int offset, unsigned int reg, unsigned int row, unsigned int col, unsigned int stride);
 		void lockTransformFeedbackBuffers(byte** t, unsigned int* v, unsigned int* r, unsigned int* c, unsigned int* s, sw::Resource* transformFeedbackBuffers[]);
 
 		// Transformations
@@ -308,11 +308,11 @@
 			TransformFeedbackInfo();
 
 			Resource* buffer;
-			int offset;
-			int reg;
-			int row;
-			int col;
-			size_t stride;
+			unsigned int offset;
+			unsigned int reg;
+			unsigned int row;
+			unsigned int col;
+			unsigned int stride;
 		};
 		TransformFeedbackInfo transformFeedbackInfo[MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS];
 
diff --git a/src/Shader/PixelPipeline.cpp b/src/Shader/PixelPipeline.cpp
index e353c27..5987768 100644
--- a/src/Shader/PixelPipeline.cpp
+++ b/src/Shader/PixelPipeline.cpp
@@ -378,9 +378,9 @@
 
 	void PixelPipeline::blendTexture(Vector4s &temp, Vector4s &texture, int stage)
 	{
-		Vector4s *arg1;
-		Vector4s *arg2;
-		Vector4s *arg3;
+		Vector4s *arg1 = nullptr;
+		Vector4s *arg2 = nullptr;
+		Vector4s *arg3 = nullptr;
 		Vector4s res;
 
 		Vector4s constant;
diff --git a/src/Shader/Shader.cpp b/src/Shader/Shader.cpp
index deb6180..d61dcde 100644
--- a/src/Shader/Shader.cpp
+++ b/src/Shader/Shader.cpp
@@ -1457,7 +1457,7 @@
 		usedSamplers |= 1 << i;
 	}
 
-	const Shader::Instruction *Shader::getInstruction(unsigned int i) const
+	const Shader::Instruction *Shader::getInstruction(size_t i) const
 	{
 		ASSERT(i < instruction.size());
 
diff --git a/src/Shader/Shader.hpp b/src/Shader/Shader.hpp
index 6b93999..3cd08a3 100644
--- a/src/Shader/Shader.hpp
+++ b/src/Shader/Shader.hpp
@@ -552,7 +552,7 @@
 		void append(Instruction *instruction);
 		void declareSampler(int i);
 
-		const Instruction *getInstruction(unsigned int i) const;
+		const Instruction *getInstruction(size_t i) const;
 		int size(unsigned long opcode) const;
 		static int size(unsigned long opcode, unsigned short version);
 
diff --git a/src/Shader/VertexShader.cpp b/src/Shader/VertexShader.cpp
index 06dd1b2..733c113 100644
--- a/src/Shader/VertexShader.cpp
+++ b/src/Shader/VertexShader.cpp
@@ -30,7 +30,7 @@
 
 		for(int i = 0; i < MAX_VERTEX_INPUTS; i++)
 		{
-			input[i] = Semantic(-1, -1);
+			input[i] = Semantic();
 		}
 
 		if(vs)   // Make a copy
@@ -62,7 +62,7 @@
 
 		for(int i = 0; i < MAX_VERTEX_INPUTS; i++)
 		{
-			input[i] = Semantic(-1, -1);
+			input[i] = Semantic();
 		}
 
 		optimize();