Store the shader bytecode in ShaderExecutable to pass it to CreateInputLayout.

TRAC #22191
Signed-off-by: Shannon Woods
Signed-off-by: Daniel Koch
Author: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1535 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/renderer/ShaderExecutable9.cpp b/src/libGLESv2/renderer/ShaderExecutable9.cpp
index e81a652..ad50e54 100644
--- a/src/libGLESv2/renderer/ShaderExecutable9.cpp
+++ b/src/libGLESv2/renderer/ShaderExecutable9.cpp
@@ -14,14 +14,16 @@
 namespace rx
 {
 
-ShaderExecutable9::ShaderExecutable9(IDirect3DPixelShader9 *executable, gl::D3DConstantTable *constantTable)
+ShaderExecutable9::ShaderExecutable9(const void *function, size_t length, IDirect3DPixelShader9 *executable, gl::D3DConstantTable *constantTable)
+    : ShaderExecutable(function, length)
 {
     mPixelExecutable = executable;
     mVertexExecutable = NULL;
     mConstantTable = constantTable;
 }
 
-ShaderExecutable9::ShaderExecutable9(IDirect3DVertexShader9 *executable, gl::D3DConstantTable *constantTable)
+ShaderExecutable9::ShaderExecutable9(const void *function, size_t length, IDirect3DVertexShader9 *executable, gl::D3DConstantTable *constantTable)
+    : ShaderExecutable(function, length)
 {
     mVertexExecutable = executable;
     mPixelExecutable = NULL;
@@ -48,26 +50,6 @@
     return static_cast<ShaderExecutable9*>(executable);
 }
 
-bool ShaderExecutable9::getVertexFunction(void *pData, UINT *pSizeOfData)
-{
-    HRESULT hr = D3DERR_INVALIDCALL;
-    if (mVertexExecutable)
-    {
-        hr = mVertexExecutable->GetFunction(pData, pSizeOfData);
-    }
-    return SUCCEEDED(hr);
-}
-
-bool ShaderExecutable9::getPixelFunction(void *pData, UINT *pSizeOfData)
-{
-    HRESULT hr = D3DERR_INVALIDCALL;
-    if (mPixelExecutable)
-    {
-        hr = mPixelExecutable->GetFunction(pData, pSizeOfData);
-    }
-    return SUCCEEDED(hr);
-}
-
 IDirect3DVertexShader9 *ShaderExecutable9::getVertexShader()
 {
     return mVertexExecutable;