diff --git a/src/OpenGL/compiler/OutputASM.cpp b/src/OpenGL/compiler/OutputASM.cpp
index 7ca0353..75f7167 100644
--- a/src/OpenGL/compiler/OutputASM.cpp
+++ b/src/OpenGL/compiler/OutputASM.cpp
@@ -2479,6 +2479,13 @@
 					int stride = (argumentInfo.typedMemberInfo.matrixStride > 0) ? argumentInfo.typedMemberInfo.matrixStride : argumentInfo.typedMemberInfo.arrayStride;
 					parameter.index = argumentInfo.typedMemberInfo.offset + argumentInfo.clampedIndex * stride;
 				}
+
+				if(parameter.index >= sw::NUM_TEMPORARY_REGISTERS)
+				{
+					mContext.error(arg->getLine(),
+						"Too many temporary registers required to compile shader",
+						pixelShader ? "pixel shader" : "vertex shader");
+				}
 			}
 
 			if(!IsSampler(arg->getBasicType()))
@@ -2493,6 +2500,14 @@
 		parameter.type = registerType(arg);
 		parameter.index = registerIndex(arg) + index;
 		parameter.mask = writeMask(arg, index);
+
+		if(parameter.index >= sw::NUM_TEMPORARY_REGISTERS)
+		{
+			mContext.error(arg->getLine(),
+				"Too many temporary registers required to compile shader",
+				pixelShader ? "pixel shader" : "vertex shader");
+		}
+
 	}
 
 	void OutputASM::copy(TIntermTyped *dst, TIntermNode *src, int offset)
