GTest: add support for FreeBSD and Hurd
[WebKit-https.git] / Source / ThirdParty / ANGLE / ChangeLog
1 2013-09-06  peavo@outlook.com  <peavo@outlook.com>
2
3         [Win][WebGL] WebGL rendering is slow.
4         https://bugs.webkit.org/show_bug.cgi?id=120841
5
6         Reviewed by Brent Fulgham.
7
8         Rendering WebGL content is slow on Windows, because lots of debug information is written to debug.txt.
9
10         * ANGLE.vcxproj/ANGLERelease.props: Disable logging in release builds.
11
12 2013-09-05  Dan Bernstein  <mitz@apple.com>
13
14         INSTALL_PATH_PREFIX is used even when not installing
15         https://bugs.webkit.org/show_bug.cgi?id=120818
16
17         Reviewed by Darin Adler.
18
19         * Configurations/ANGLE.xcconfig: Changed the definition of PRIVATE_HEADERS_FOLDER_PATH
20         to include INSTALL_PATH_PREFIX only when installing.
21
22 2013-08-17  David Kilzer  <ddkilzer@apple.com>
23
24         ANGLE fails to build with trunk clang: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]
25         <http://webkit.org/b/119931>
26         <rdar://problem/14763822>
27
28         Reviewed by Darin Adler.
29
30         * src/compiler/glslang.l:
31         * src/compiler/glslang_lex.cpp:
32         * src/compiler/preprocessor/Tokenizer.cpp:
33         * src/compiler/preprocessor/Tokenizer.l:
34         Add pragma statements to ignore -Wdeprecated-register warnings
35         in generated code.  Also ignore -Wunknown-pragmas so this
36         doesn't cause a build failure in older versions of clang.
37
38 2013-08-16  Commit Queue  <commit-queue@webkit.org>
39
40         Unreviewed, rolling out r153749.
41         http://trac.webkit.org/changeset/153749
42         https://bugs.webkit.org/show_bug.cgi?id=119892
43
44         The bison generation of the glslang* files has now been fixed. (Requested by zdobersek on #webkit).
45
46         * GNUmakefile.am: Preserve the libANGLE.la dependency on the ANGLE's GNUmakefile.am.
47
48 2013-08-15  Allan Sandfeld Jensen  <allan.jensen@digia.com>
49
50         ANGLE doesn't build with bison 3.0
51         https://bugs.webkit.org/show_bug.cgi?id=119798
52
53         Reviewed by Antti Koivisto.
54
55         Make glslang.y compatible with bison 3.0, by using %lex-param
56         to set YYLEX_PARAM and getting rid of useless YYID macro.
57
58         * src/compiler/glslang.y:
59
60 2013-08-09  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
61
62         [Qt] Buidfix after r153664. Adding ANGLE_WEBKIT_WIN definition.
63         https://bugs.webkit.org/show_bug.cgi?id=119577
64
65         Reviewed by Allan Sandfeld Jensen.
66
67         * Target.pri:
68
69 2013-08-08  Alex Christensen  <achristensen@apple.com>
70
71         Link to correct DirectX libraries for Win64 ANGLE build.
72         https://bugs.webkit.org/show_bug.cgi?id=119600
73
74         Reviewed by Brent Fulgham.
75
76         * ANGLE.vcxproj/DirectX32.props: Added with x86 DirectX library directory.
77         * ANGLE.vcxproj/DirectX64.props: Added with x64 DirectX library directory.
78         * ANGLE.vcxproj/libEGL.vcxproj:
79         * ANGLE.vcxproj/libGLESv2.vcxproj:
80         Use DirectX32.props and DirectX64.props.
81         * ANGLE.vcxproj/libEGLCommon.props:
82         * ANGLE.vcxproj/libGLESv2Common.props:
83         Removed DirectX library directory.
84
85 2013-07-23  David Farler  <dfarler@apple.com>
86
87         Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
88         https://bugs.webkit.org/show_bug.cgi?id=117762
89
90         Reviewed by Mark Rowe.
91
92         * Configurations/DebugRelease.xcconfig:
93         Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS.
94
95 2013-08-06  Zan Dobersek  <zdobersek@igalia.com>
96
97         webkit-gtk fails to build with bison-3.0
98         https://bugs.webkit.org/show_bug.cgi?id=119373
99
100         Reviewed by Gustavo Noronha Silva.
101
102         * GNUmakefile.am: Stop relying on generated glslang_tab.(cpp|h) and glslang.cpp sources as Bison 3.0
103         produces non-compilable source code. Instead, compile these pregenerated files as they're included in
104         the tree. Originally, the ANGLE source tree provides these files as generated by Bison 2.7, but they're
105         at the moment regenerated with Bison 2.3 when the third-party ANGLE source is being updated.
106
107 2013-08-05  Alex Christensen  <achristensen@apple.com>
108
109         Added optimizations to Windows ANGLE builds.
110         https://bugs.webkit.org/show_bug.cgi?id=119500
111
112         Reviewed by Brent Fulgham.
113
114         * ANGLE.vcxproj/ANGLERelease.props: Added.
115         * ANGLE.vcxproj/libEGL.vcxproj:
116         * ANGLE.vcxproj/libGLESv2.vcxproj:
117         * ANGLE.vcxproj/preprocessor.vcxproj:
118         * ANGLE.vcxproj/translator_common.vcxproj:
119         * ANGLE.vcxproj/translator_glsl.vcxproj:
120         * ANGLE.vcxproj/translator_hlsl.vcxproj:
121         Use ANGLERelease.props for Release, Release_WinCairo, and Production configurations.
122
123 2013-08-02  Alex Christensen  <achristensen@apple.com>
124
125         Soft link ANGLE on Windows.
126         https://bugs.webkit.org/show_bug.cgi?id=119452
127
128         Reviewed by Dean Jackson.
129
130         * ANGLE.vcxproj/libEGL.vcxproj:
131         * ANGLE.vcxproj/libEGL.vcxproj.filters:
132         * ANGLE.vcxproj/libGLESv2.vcxproj:
133         * ANGLE.vcxproj/libGLESv2.vcxproj.filters:
134         Added soft linking headers.
135         * ANGLE.vcxproj/libEGLCommon.props:
136         * ANGLE.vcxproj/libGLESv2Common.props:
137         * ANGLE.vcxproj/translatorCommon.props:
138         Added ANGLE_WEBKIT_WIN macro definition for egl.h and gl2.h.
139         * include/EGL/egl.h:
140         * include/GLES2/gl2.h:
141         Conditionally include soft linking headers based on ANGLE_WEBKIT_WIN macro.
142         * include/EGL/eglsoftlinking.h: Added.
143         * include/GLES2/gl2softlinking.h: Added.
144
145 2013-08-01  Alex Christensen  <achristensen@apple.com>
146
147         Fixed wrong static_casting in ANGLE from r153064.
148         https://bugs.webkit.org/show_bug.cgi?id=119296
149
150         Reviewed by Dean Jackson.
151
152         * src/compiler/Intermediate.cpp:
153         (TIntermediate::promoteConstantUnion):
154         Undid erroneous static_cast change.
155         * src/compiler/intermediate.h:
156         (TIntermConstantUnion::getIConst):
157         (TIntermConstantUnion::getFConst):
158         (TIntermConstantUnion::getBConst):
159         Made getters use size_t instead of int.
160
161 2013-07-29  Carlos Garcia Campos  <cgarcia@igalia.com>
162
163         Unreviewed. Fix make distcheck.
164
165         * GNUmakefile.am: Add missing header files to compilation.
166
167 2013-07-29  Alex Christensen  <achristensen@apple.com>
168
169         Separated translator into preprocessor, translator_common,
170         translator_hlsl (for libGLESv2), and translator_glsl
171         (for ANGLEWebKitBridge).
172         https://bugs.webkit.org/show_bug.cgi?id=119221
173
174         Reviewed by Brent Fulgham.
175
176         * ANGLE.vcxproj/ANGLEGenerated.vcxproj:
177         Removed unused preprocessor definitions.
178         * ANGLE.vcxproj/libEGL.vcxproj:
179         * ANGLE.vcxproj/libGLESv2.vcxproj:
180         Removed dependency on removed translator project.
181         * ANGLE.vcxproj/libGLESv2Common.props:
182         Link to translator_hlsl libraries.
183         * ANGLE.vcxproj/preprocessor.vcxproj: Added.
184         * ANGLE.vcxproj/preprocessor.vcxproj.filters: Added.
185         * ANGLE.vcxproj/translator.vcxproj: Removed.
186         * ANGLE.vcxproj/translator.vcxproj.filters: Removed.
187         * ANGLE.vcxproj/translator_common.vcxproj: Added.
188         * ANGLE.vcxproj/translator_common.vcxproj.filters: Added.
189         * ANGLE.vcxproj/translator_glsl.vcxproj: Added.
190         * ANGLE.vcxproj/translator_glsl.vcxproj.filters: Added.
191         * ANGLE.vcxproj/translator_hlsl.vcxproj: Added.
192         * ANGLE.vcxproj/translator_hlsl.vcxproj.filters: Added.
193
194 2013-07-26  Alex Christensen  <achristensen@apple.com>
195
196         Added module definition file for building libEGL.
197         https://bugs.webkit.org/show_bug.cgi?id=119162
198
199         Reviewed by Brent Fulgham.
200
201         * ANGLE.vcxproj/libEGLCommon.props: Added reference to libEGL.def.
202
203 2013-07-25  Alex Christensen  <achristensen@apple.com>
204
205         Made Windows build system for ANGLE and removed existing broken build system.
206         Removed empty src/libGLESv2/shaders directory and old README files.
207         https://bugs.webkit.org/show_bug.cgi?id=119103
208
209         Reviewed by Brent Fulgham.
210
211         * ANGLE.vcxproj: Added.
212         * ANGLE.vcxproj/ANGLEGenerated.vcxproj: Added.
213         * ANGLE.vcxproj/ANGLEGenerated.vcxproj.filters: Added.
214         * ANGLE.vcxproj/libEGL.vcxproj: Added.
215         * ANGLE.vcxproj/libEGL.vcxproj.filters: Added.
216         * ANGLE.vcxproj/libEGLCommon.props: Added.
217         * ANGLE.vcxproj/libGLESv2.vcxproj: Added.
218         * ANGLE.vcxproj/libGLESv2.vcxproj.filters: Added.
219         * ANGLE.vcxproj/libGLESv2Common.props: Added.
220         * ANGLE.vcxproj/translator.vcxproj: Added.
221         * ANGLE.vcxproj/translator.vcxproj.filters: Added.
222         * ANGLE.vcxproj/translatorCommon.props: Added.
223         * src/ANGLE.sln: Removed.
224         * src/compiler/preprocessor/preprocessor.vcxproj: Removed.
225         * src/compiler/preprocessor/preprocessor.vcxproj.filters: Removed.
226         * src/compiler/translator_common.vcxproj: Removed.
227         * src/compiler/translator_common.vcxproj.filters: Removed.
228         * src/compiler/translator_hlsl.vcxproj: Removed.
229         * src/compiler/translator_hlsl.vcxproj.filters: Removed.
230         * src/libEGL/README: Removed.
231         * src/libEGL/libEGL.vcxproj: Removed.
232         * src/libEGL/libEGL.vcxproj.filters: Removed.
233         * src/libGLESv2/README: Removed.
234         * src/libGLESv2/libGLESv2.vcxproj: Removed.
235         * src/libGLESv2/libGLESv2.vcxproj.filters: Removed.
236         * src/libGLESv2/shaders: Removed.
237
238 2013-07-24  Alex Christensen  <achristensen@apple.com>
239
240         Generate derived files in ANGLE at build time rather than when updating from upstream.
241         https://bugs.webkit.org/show_bug.cgi?id=118872
242
243         Reviewed by Mark Rowe.
244
245         * ANGLE.xcodeproj/project.pbxproj: Made Derived Sources target which calls DerivedSources.make,
246         moved generated files into Derived Sources group.
247         * DerivedSources.make: Added.
248
249 2013-07-24  Zan Dobersek  <zdobersek@igalia.com>
250
251         Unreviewed. Setting the svn:eol-style=native property on the ANGLE.sln file.
252
253         * src/ANGLE.sln: Added property svn:eol-style.
254
255 2013-07-24  Gabor Abraham  <abrhm@inf.u-szeged.hu>
256
257         [Qt] Buildfix after r153064. Add Uniform files to the Target.pri.
258
259         Reviewed by Csaba Osztrogon√°c.
260
261         * Target.pri:
262
263 2013-07-23  Alex Christensen  <achristensen@apple.com>
264
265         Updated ANGLE to latest git commit (047373aa3eb408be62be52ade840fa5f11e72337).
266         Added missing ANGLE files except unused tests, extensions, samples, build, and .git directories.
267         Ran Bison after making some changes to fix compile errors (see below).
268
269         https://bugs.webkit.org/show_bug.cgi?id=118550
270
271         Reviewed by Dean Jackson.
272
273         * ANGLE.plist: Updated from svn to git.
274         * ANGLE.xcodeproj/project.pbxproj: Renamed DetectRecursion to DetectCallDepth.
275         * AUTHORS: Added.
276         * CONTRIBUTORS: Added.
277         * DEPS: Added.
278         * GNUmakefile.am: Renamed DetectRecursion to DetectCallDepth and added Uniform.cpp.
279         * LICENSE: Added.
280         * README.chromium: Added.
281         * Target.pri: Renamed DetectRecursion to DetectCallDepth.
282         * codereview.settings: Added.
283         * include/EGL/eglext.h:
284         * include/GLES2/gl2ext.h:
285         * include/GLSLANG/ShaderLang.h:
286         * src/ANGLE.sln: Added.
287         * src/build_angle.gyp: Added.
288         * src/build_angle.gypi: Added.
289         * src/common/RefCountObject.cpp:
290         * src/common/angleutils.h:
291         (ArraySize):
292         (SafeRelease):
293         * src/common/debug.cpp:
294         * src/common/debug.h:
295         * src/common/system.h:
296         * src/common/version.h:
297         * src/compiler/64bit-lexer-safety.patch: Added.
298         * src/compiler/BaseTypes.h:
299         (getQualifierString):
300         * src/compiler/CodeGenHLSL.cpp:
301         (ConstructCompiler):
302         * src/compiler/Common.h:
303         * src/compiler/Compiler.cpp:
304         (TCompiler::TCompiler):
305         (TCompiler::Init):
306         (TCompiler::compile):
307         (TCompiler::InitBuiltInSymbolTable):
308         (TCompiler::detectCallDepth):
309         (TCompiler::limitExpressionComplexity):
310         (TCompiler::getResources):
311         * src/compiler/ConstantUnion.h:
312         (ConstantUnion::ConstantUnion):
313         * src/compiler/DetectCallDepth.cpp: Added.
314         (DetectCallDepth::FunctionNode::FunctionNode):
315         (DetectCallDepth::FunctionNode::getName):
316         (DetectCallDepth::FunctionNode::addCallee):
317         (DetectCallDepth::FunctionNode::detectCallDepth):
318         (DetectCallDepth::FunctionNode::reset):
319         (DetectCallDepth::DetectCallDepth):
320         (DetectCallDepth::~DetectCallDepth):
321         (DetectCallDepth::visitAggregate):
322         (DetectCallDepth::checkExceedsMaxDepth):
323         (DetectCallDepth::resetFunctionNodes):
324         (DetectCallDepth::detectCallDepthForFunction):
325         (DetectCallDepth::detectCallDepth):
326         (DetectCallDepth::findFunctionByName):
327         * src/compiler/DetectCallDepth.h: Added.
328         (DetectCallDepth::getInfoSink):
329         * src/compiler/DetectRecursion.cpp: Removed.
330         * src/compiler/DetectRecursion.h: Removed.
331         * src/compiler/Diagnostics.cpp:
332         (TDiagnostics::writeInfo):
333         * src/compiler/ForLoopUnroll.cpp:
334         (ForLoopUnroll::evaluateIntConstant):
335         * src/compiler/InfoSink.cpp:
336         (TInfoSinkBase::prefix):
337         (TInfoSinkBase::location):
338         (TInfoSinkBase::message):
339         * src/compiler/InfoSink.h:
340         * src/compiler/Initialize.cpp:
341         (InsertBuiltInFunctions):
342         (IdentifyBuiltIns):
343         (InitExtensionBehavior):
344         * src/compiler/Initialize.h:
345         * src/compiler/Intermediate.cpp:
346         (TIntermediate::addSymbol):
347         (TIntermediate::addBinaryMath):
348         (TIntermediate::addAssign):
349         (TIntermediate::addIndex):
350         (TIntermediate::addUnaryMath):
351         (TIntermediate::setAggregateOperator):
352         (TIntermediate::addConversion):
353         (TIntermediate::growAggregate):
354         (TIntermediate::makeAggregate):
355         (TIntermediate::addSelection):
356         (TIntermediate::addComma):
357         (TIntermediate::addConstantUnion):
358         (TIntermediate::addSwizzle):
359         (TIntermediate::addLoop):
360         (TIntermediate::addBranch):
361         (TIntermUnary::promote):
362         (TIntermBinary::promote):
363         (CompareStruct):
364         (CompareStructure):
365         (TIntermConstantUnion::fold): Added implied static_casts to fix compiling errors on Mac.
366         (TIntermediate::promoteConstantUnion):
367         * src/compiler/OutputGLSL.cpp:
368         (TOutputGLSL::visitSymbol):
369         * src/compiler/OutputGLSL.h:
370         * src/compiler/OutputGLSLBase.cpp:
371         (TOutputGLSLBase::writeVariableType):
372         (TOutputGLSLBase::writeConstantUnion):
373         (TOutputGLSLBase::visitBinary):
374         (TOutputGLSLBase::visitAggregate):
375         (TOutputGLSLBase::getTypeName):
376         (TOutputGLSLBase::structDeclared):
377         (TOutputGLSLBase::declareStruct):
378         * src/compiler/OutputGLSLBase.h:
379         * src/compiler/OutputHLSL.cpp:
380         (sh::OutputHLSL::OutputHLSL):
381         (sh::OutputHLSL::getUniforms):
382         (sh::OutputHLSL::header):
383         (sh::OutputHLSL::visitSymbol):
384         (sh::OutputHLSL::visitBinary):
385         (sh::OutputHLSL::visitAggregate):
386         (sh::OutputHLSL::visitSelection):
387         (sh::OutputHLSL::visitLoop):
388         (sh::OutputHLSL::handleExcessiveLoop):
389         (sh::OutputHLSL::argumentString):
390         (sh::OutputHLSL::typeString):
391         (sh::OutputHLSL::textureString):
392         (sh::OutputHLSL::initializer):
393         (sh::OutputHLSL::addConstructor):
394         (sh::OutputHLSL::writeConstantUnion):
395         (sh::OutputHLSL::decorateUniform):
396         (sh::OutputHLSL::decorateField):
397         (sh::OutputHLSL::registerString):
398         (sh::OutputHLSL::samplerRegister):
399         (sh::OutputHLSL::uniformRegister):
400         (sh::OutputHLSL::declareUniform):
401         (sh::OutputHLSL::glVariableType):
402         (sh::OutputHLSL::glVariablePrecision):
403         * src/compiler/OutputHLSL.h:
404         * src/compiler/ParseHelper.cpp:
405         (TParseContext::parseVectorFields):
406         (TParseContext::parseMatrixFields):
407         (TParseContext::error):
408         (TParseContext::warning):
409         (TParseContext::assignError):
410         (TParseContext::unaryOpError):
411         (TParseContext::binaryOpError):
412         (TParseContext::precisionErrorCheck):
413         (TParseContext::lValueErrorCheck):
414         (TParseContext::globalErrorCheck):
415         (TParseContext::reservedErrorCheck):
416         (TParseContext::constructorErrorCheck):
417         (TParseContext::voidErrorCheck):
418         (TParseContext::boolErrorCheck):
419         (TParseContext::samplerErrorCheck):
420         (TParseContext::structQualifierErrorCheck):
421         (TParseContext::parameterSamplerErrorCheck):
422         (TParseContext::containsSampler):
423         (TParseContext::arraySizeErrorCheck):
424         (TParseContext::arrayQualifierErrorCheck):
425         (TParseContext::arrayTypeErrorCheck):
426         (TParseContext::arrayErrorCheck):
427         (TParseContext::nonInitConstErrorCheck):
428         (TParseContext::nonInitErrorCheck):
429         (TParseContext::paramErrorCheck):
430         (TParseContext::extensionErrorCheck):
431         (TParseContext::isExtensionEnabled):
432         Replaced auto with std::map<std::string, TBehavior>::const_iterator to fix Qt and EFL compiling errors.
433         (TParseContext::findFunction):
434         (TParseContext::executeInitializer):
435         (TParseContext::addConstructor):
436         (TParseContext::constructBuiltIn):
437         (TParseContext::constructStruct):
438         (TParseContext::addConstVectorNode):
439         (TParseContext::addConstMatrixNode):
440         (TParseContext::addConstArrayNode):
441         (TParseContext::addConstStruct):
442         (TParseContext::enterStructDeclaration):
443         (TParseContext::structNestingErrorCheck):
444         (TParseContext::addIndexExpression):
445         * src/compiler/ParseHelper.h:
446         (TParseContext::TParseContext):
447         (TParseContext::pragma):
448         * src/compiler/PoolAlloc.cpp:
449         (TPoolAllocator::allocate):
450         * src/compiler/ShHandle.h:
451         (TShHandleBase::getAsTranslatorHLSL):
452         * src/compiler/ShaderLang.cpp:
453         (ShInitBuiltInResources):
454         (ShGetInfoPointer):
455         * src/compiler/SymbolTable.cpp:
456         (TType::TType):
457         (TType::buildMangledName):
458         (TType::getObjectSize):
459         (TStructure::containsArrays):
460         (TStructure::buildMangledName):
461         (TStructure::calculateObjectSize):
462         (TStructure::calculateDeepestNesting):
463         (TSymbolTableLevel::relateToExtension):
464         * src/compiler/SymbolTable.h:
465         (TSymbol::relateToExtension):
466         (TSymbol::getExtension):
467         (TVariable::TVariable):
468         (TVariable::setQualifier):
469         (TVariable::shareConstPointer):
470         (TSymbolTableLevel::insert):
471         (TSymbolTable::insertConstInt):
472         (TSymbolTable::insertBuiltIn):
473         * src/compiler/TranslatorHLSL.cpp:
474         (TranslatorHLSL::TranslatorHLSL):
475         (TranslatorHLSL::translate):
476         * src/compiler/TranslatorHLSL.h:
477         (TranslatorHLSL::getAsTranslatorHLSL):
478         (TranslatorHLSL::getUniforms):
479         * src/compiler/Types.h: Removed enum bit fields to fix gcc compiler errors.
480         (TField::TField):
481         (TField::type):
482         (TField::name):
483         (NewPoolTFieldList):
484         (TStructure::TStructure):
485         (TStructure::name):
486         (TStructure::fields):
487         (TStructure::mangledName):
488         (TStructure::objectSize):
489         (TStructure::deepestNesting):
490         (TType::TType):
491         (TType::elementRegisterCount):
492         (TType::totalRegisterCount):
493         (TType::clearArrayness):
494         (TType::getStruct):
495         (TType::setStruct):
496         (TType::getMangledName):
497         (TType::getDeepestStructNesting):
498         (TType::isStructureContainingArrays):
499         (TPublicType::setBasic):
500         * src/compiler/Uniform.cpp: Added.
501         (sh::Uniform::Uniform):
502         * src/compiler/Uniform.h: Added.
503         * src/compiler/VariableInfo.cpp:
504         (getUserDefinedVariableInfo):
505         * src/compiler/glslang.l:
506         * src/compiler/glslang.y: Moved YYLTYPE definition into %union to work with Bison 2.3.
507         * src/compiler/glslang_lex.cpp:
508         (yy_get_previous_state):
509         (yy_try_NUL_trans):
510         (yyget_lloc):
511         (yyset_lloc):
512         (string_input):
513         (check_type):
514         (reserved_word):
515         (glslang_scan):
516         * src/compiler/glslang_tab.cpp:
517         (yyerror):
518         * src/compiler/glslang_tab.h:
519         * src/compiler/intermOut.cpp:
520         (TOutputTraverser::visitUnary):
521         (TOutputTraverser::visitAggregate):
522         (TOutputTraverser::visitConstantUnion):
523         * src/compiler/intermediate.h:
524         (TIntermNode::TIntermNode):
525         (TIntermNode::~TIntermNode):
526         (TIntermNode::getLine):
527         (TIntermNode::setLine):
528         (TIntermNode::getAsLoopNode):
529         (TIntermTyped::totalRegisterCount):
530         (TIntermTyped::elementRegisterCount):
531         (TIntermTyped::getArraySize):
532         (TIntermConstantUnion::getIConst):
533         (TIntermConstantUnion::getFConst):
534         (TIntermConstantUnion::getBConst):
535         (TIntermAggregate::TIntermAggregate):
536         (TIntermTraverser::TIntermTraverser):
537         (TIntermTraverser::getMaxDepth):
538         (TIntermTraverser::incrementDepth):
539         * src/compiler/localintermediate.h:
540         * src/compiler/parseConst.cpp:
541         (TConstTraverser::visitSymbol):
542         (TConstTraverser::visitBinary):
543         (TConstTraverser::visitUnary):
544         (TConstTraverser::visitAggregate):
545         (TConstTraverser::visitSelection):
546         (TConstTraverser::visitConstantUnion):
547         (TConstTraverser::visitLoop):
548         (TConstTraverser::visitBranch):
549         (TIntermediate::parseConstTree):
550         * src/compiler/preprocessor/64bit-tokenizer-safety.patch: Added.
551         * src/compiler/preprocessor/Tokenizer.cpp:
552         (yy_get_previous_state):
553         (yy_try_NUL_trans):
554         * src/compiler/preprocessor/Tokenizer.l:
555         * src/compiler/preprocessor/preprocessor.vcxproj: Added.
556         * src/compiler/preprocessor/preprocessor.vcxproj.filters: Added.
557         * src/compiler/timing/RestrictVertexShaderTiming.cpp:
558         (RestrictVertexShaderTiming::visitSymbol):
559         * src/compiler/translator_common.vcxproj: Added.
560         * src/compiler/translator_common.vcxproj.filters: Added.
561         * src/compiler/translator_hlsl.vcxproj: Added.
562         * src/compiler/translator_hlsl.vcxproj.filters: Added.
563         * src/libEGL/Config.cpp: Added.
564         (egl::Config::Config):
565         (egl::Config::getHandle):
566         (egl::SortConfig::SortConfig):
567         (egl::SortConfig::scanForWantedComponents):
568         (egl::SortConfig::wantedComponentsSize):
569         (egl::SortConfig::operator()):
570         (egl::ConfigSet::ConfigSet):
571         (egl::ConfigSet::add):
572         (egl::ConfigSet::size):
573         (egl::ConfigSet::getConfigs):
574         (egl::ConfigSet::get):
575         * src/libEGL/Config.h: Added.
576         * src/libEGL/Display.cpp: Added.
577         (egl::Display::getDisplay):
578         (egl::Display::Display):
579         (egl::Display::~Display):
580         (egl::Display::initialize):
581         (egl::Display::terminate):
582         (egl::Display::getConfigs):
583         (egl::Display::getConfigAttrib):
584         (egl::Display::createWindowSurface):
585         (egl::Display::createOffscreenSurface):
586         (egl::Display::createContext):
587         (egl::Display::restoreLostDevice):
588         (egl::Display::destroySurface):
589         (egl::Display::destroyContext):
590         (egl::Display::notifyDeviceLost):
591         (egl::Display::recreateSwapChains):
592         (egl::Display::isInitialized):
593         (egl::Display::isValidConfig):
594         (egl::Display::isValidContext):
595         (egl::Display::isValidSurface):
596         (egl::Display::hasExistingWindowSurface):
597         (egl::Display::initExtensionString):
598         (egl::Display::getExtensionString):
599         (egl::Display::initVendorString):
600         (egl::Display::getVendorString):
601         * src/libEGL/Display.h: Added.
602         (egl::Display::getRenderer):
603         * src/libEGL/Surface.cpp: Added.
604         (egl::Surface::Surface):
605         (egl::Surface::~Surface):
606         (egl::Surface::initialize):
607         (egl::Surface::release):
608         (egl::Surface::resetSwapChain):
609         (egl::Surface::resizeSwapChain):
610         (egl::Surface::swapRect):
611         (egl::Surface::getWindowHandle):
612         (egl::SurfaceWindowProc):
613         (egl::Surface::subclassWindow):
614         (egl::Surface::unsubclassWindow):
615         (egl::Surface::checkForOutOfDateSwapChain):
616         (egl::Surface::swap):
617         (egl::Surface::postSubBuffer):
618         (egl::Surface::getWidth):
619         (egl::Surface::getHeight):
620         (egl::Surface::isPostSubBufferSupported):
621         (egl::Surface::getSwapChain):
622         (egl::Surface::setSwapInterval):
623         (egl::Surface::getTextureFormat):
624         (egl::Surface::getTextureTarget):
625         (egl::Surface::setBoundTexture):
626         (egl::Surface::getBoundTexture):
627         (egl::Surface::getFormat):
628         * src/libEGL/Surface.h: Added.
629         * src/libEGL/libEGL.cpp: Added.
630         (validateDisplay):
631         (validateConfig):
632         (validateContext):
633         (validateSurface):
634         * src/libEGL/libEGL.def: Added.
635         * src/libEGL/libEGL.rc: Added.
636         * src/libEGL/libEGL.vcxproj: Added.
637         * src/libEGL/libEGL.vcxproj.filters: Added.
638         * src/libEGL/main.cpp: Added.
639         (DllMain):
640         (egl::setCurrentError):
641         (egl::getCurrentError):
642         (egl::setCurrentAPI):
643         (egl::getCurrentAPI):
644         (egl::setCurrentDisplay):
645         (egl::getCurrentDisplay):
646         (egl::setCurrentDrawSurface):
647         (egl::getCurrentDrawSurface):
648         (egl::setCurrentReadSurface):
649         (egl::getCurrentReadSurface):
650         (egl::error):
651         * src/libEGL/main.h: Added.
652         (egl::error):
653         (egl::success):
654         * src/libEGL/resource.h: Added.
655         * src/libGLESv2/BinaryStream.h: Added.
656         (gl::BinaryInputStream::BinaryInputStream):
657         (gl::BinaryInputStream::read):
658         (gl::BinaryInputStream::skip):
659         (gl::BinaryInputStream::offset):
660         (gl::BinaryInputStream::error):
661         (gl::BinaryInputStream::endOfStream):
662         (gl::BinaryOutputStream::BinaryOutputStream):
663         (gl::BinaryOutputStream::write):
664         (gl::BinaryOutputStream::length):
665         (gl::BinaryOutputStream::data):
666         * src/libGLESv2/Buffer.cpp: Added.
667         (gl::Buffer::Buffer):
668         (gl::Buffer::~Buffer):
669         (gl::Buffer::bufferData):
670         (gl::Buffer::bufferSubData):
671         (gl::Buffer::getStorage):
672         (gl::Buffer::size):
673         (gl::Buffer::usage):
674         (gl::Buffer::getStaticVertexBuffer):
675         (gl::Buffer::getStaticIndexBuffer):
676         (gl::Buffer::invalidateStaticData):
677         (gl::Buffer::promoteStaticUsage):
678         * src/libGLESv2/Buffer.h: Added.
679         * src/libGLESv2/Context.cpp: Added.
680         (gl::makeStaticString):
681         (gl::Context::Context):
682         (gl::Context::~Context):
683         (gl::Context::makeCurrent):
684         (gl::Context::markContextLost):
685         (gl::Context::isContextLost):
686         (gl::Context::setClearColor):
687         (gl::Context::setClearDepth):
688         (gl::Context::setClearStencil):
689         (gl::Context::setCullFace):
690         (gl::Context::isCullFaceEnabled):
691         (gl::Context::setCullMode):
692         (gl::Context::setFrontFace):
693         (gl::Context::setDepthTest):
694         (gl::Context::isDepthTestEnabled):
695         (gl::Context::setDepthFunc):
696         (gl::Context::setDepthRange):
697         (gl::Context::setBlend):
698         (gl::Context::isBlendEnabled):
699         (gl::Context::setBlendFactors):
700         (gl::Context::setBlendColor):
701         (gl::Context::setBlendEquation):
702         (gl::Context::setStencilTest):
703         (gl::Context::isStencilTestEnabled):
704         (gl::Context::setStencilParams):
705         (gl::Context::setStencilBackParams):
706         (gl::Context::setStencilWritemask):
707         (gl::Context::setStencilBackWritemask):
708         (gl::Context::setStencilOperations):
709         (gl::Context::setStencilBackOperations):
710         (gl::Context::setPolygonOffsetFill):
711         (gl::Context::isPolygonOffsetFillEnabled):
712         (gl::Context::setPolygonOffsetParams):
713         (gl::Context::setSampleAlphaToCoverage):
714         (gl::Context::isSampleAlphaToCoverageEnabled):
715         (gl::Context::setSampleCoverage):
716         (gl::Context::isSampleCoverageEnabled):
717         (gl::Context::setSampleCoverageParams):
718         (gl::Context::setScissorTest):
719         (gl::Context::isScissorTestEnabled):
720         (gl::Context::setDither):
721         (gl::Context::isDitherEnabled):
722         (gl::Context::setLineWidth):
723         (gl::Context::setGenerateMipmapHint):
724         (gl::Context::setFragmentShaderDerivativeHint):
725         (gl::Context::setViewportParams):
726         (gl::Context::setScissorParams):
727         (gl::Context::setColorMask):
728         (gl::Context::setDepthMask):
729         (gl::Context::setActiveSampler):
730         (gl::Context::getReadFramebufferHandle):
731         (gl::Context::getDrawFramebufferHandle):
732         (gl::Context::getRenderbufferHandle):
733         (gl::Context::getArrayBufferHandle):
734         (gl::Context::getActiveQuery):
735         (gl::Context::setEnableVertexAttribArray):
736         (gl::Context::getVertexAttribState):
737         (gl::Context::setVertexAttribState):
738         (gl::Context::getVertexAttribPointer):
739         (gl::Context::setPackAlignment):
740         (gl::Context::getPackAlignment):
741         (gl::Context::setUnpackAlignment):
742         (gl::Context::getUnpackAlignment):
743         (gl::Context::setPackReverseRowOrder):
744         (gl::Context::getPackReverseRowOrder):
745         (gl::Context::createBuffer):
746         (gl::Context::createProgram):
747         (gl::Context::createShader):
748         (gl::Context::createTexture):
749         (gl::Context::createRenderbuffer):
750         (gl::Context::createFramebuffer):
751         (gl::Context::createFence):
752         (gl::Context::createQuery):
753         (gl::Context::deleteBuffer):
754         (gl::Context::deleteShader):
755         (gl::Context::deleteProgram):
756         (gl::Context::deleteTexture):
757         (gl::Context::deleteRenderbuffer):
758         (gl::Context::deleteFramebuffer):
759         (gl::Context::deleteFence):
760         (gl::Context::deleteQuery):
761         (gl::Context::getBuffer):
762         (gl::Context::getShader):
763         (gl::Context::getProgram):
764         (gl::Context::getTexture):
765         (gl::Context::getRenderbuffer):
766         (gl::Context::getReadFramebuffer):
767         (gl::Context::getDrawFramebuffer):
768         (gl::Context::bindArrayBuffer):
769         (gl::Context::bindElementArrayBuffer):
770         (gl::Context::bindTexture2D):
771         (gl::Context::bindTextureCubeMap):
772         (gl::Context::bindReadFramebuffer):
773         (gl::Context::bindDrawFramebuffer):
774         (gl::Context::bindRenderbuffer):
775         (gl::Context::useProgram):
776         (gl::Context::linkProgram):
777         (gl::Context::setProgramBinary):
778         (gl::Context::beginQuery):
779         (gl::Context::endQuery):
780         (gl::Context::setFramebufferZero):
781         (gl::Context::setRenderbufferStorage):
782         (gl::Context::getFramebuffer):
783         (gl::Context::getFence):
784         (gl::Context::getQuery):
785         (gl::Context::getArrayBuffer):
786         (gl::Context::getElementArrayBuffer):
787         (gl::Context::getCurrentProgramBinary):
788         (gl::Context::getTexture2D):
789         (gl::Context::getTextureCubeMap):
790         (gl::Context::getSamplerTexture):
791         (gl::Context::getBooleanv):
792         (gl::Context::getFloatv):
793         (gl::Context::getIntegerv):
794         (gl::Context::getQueryParameterInfo):
795         (gl::Context::applyRenderTarget):
796         (gl::Context::applyState):
797         (gl::Context::applyShaders):
798         (gl::Context::applyTextures):
799         (gl::Context::readPixels):
800         (gl::Context::clear):
801         (gl::Context::drawArrays):
802         (gl::Context::drawElements):
803         (gl::Context::sync):
804         (gl::Context::recordInvalidEnum):
805         (gl::Context::recordInvalidValue):
806         (gl::Context::recordInvalidOperation):
807         (gl::Context::recordOutOfMemory):
808         (gl::Context::recordInvalidFramebufferOperation):
809         (gl::Context::getError):
810         (gl::Context::getResetStatus):
811         (gl::Context::isResetNotificationEnabled):
812         (gl::Context::getMajorShaderModel):
813         (gl::Context::getMaximumPointSize):
814         (gl::Context::getMaximumCombinedTextureImageUnits):
815         (gl::Context::getMaxSupportedSamples):
816         (gl::Context::getMaximumRenderTargets):
817         (gl::Context::supportsEventQueries):
818         (gl::Context::supportsOcclusionQueries):
819         (gl::Context::supportsBGRATextures):
820         (gl::Context::supportsDXT1Textures):
821         (gl::Context::supportsDXT3Textures):
822         (gl::Context::supportsDXT5Textures):
823         (gl::Context::supportsFloat32Textures):
824         (gl::Context::supportsFloat32LinearFilter):
825         (gl::Context::supportsFloat32RenderableTextures):
826         (gl::Context::supportsFloat16Textures):
827         (gl::Context::supportsFloat16LinearFilter):
828         (gl::Context::supportsFloat16RenderableTextures):
829         (gl::Context::getMaximumRenderbufferDimension):
830         (gl::Context::getMaximumTextureDimension):
831         (gl::Context::getMaximumCubeTextureDimension):
832         (gl::Context::getMaximumTextureLevel):
833         (gl::Context::supportsLuminanceTextures):
834         (gl::Context::supportsLuminanceAlphaTextures):
835         (gl::Context::supportsDepthTextures):
836         (gl::Context::supports32bitIndices):
837         (gl::Context::supportsNonPower2Texture):
838         (gl::Context::supportsInstancing):
839         (gl::Context::supportsTextureFilterAnisotropy):
840         (gl::Context::getTextureMaxAnisotropy):
841         (gl::Context::getCurrentReadFormatType):
842         (gl::Context::detachBuffer):
843         (gl::Context::detachTexture):
844         (gl::Context::detachFramebuffer):
845         (gl::Context::detachRenderbuffer):
846         (gl::Context::getIncompleteTexture):
847         (gl::Context::skipDraw):
848         (gl::Context::setVertexAttrib):
849         (gl::Context::setVertexAttribDivisor):
850         (gl::Context::initExtensionString):
851         (gl::Context::getExtensionString):
852         (gl::Context::initRendererString):
853         (gl::Context::getRendererString):
854         (gl::Context::blitFramebuffer):
855         * src/libGLESv2/Context.h: Added.
856         (gl::VertexAttribute::VertexAttribute):
857         (gl::VertexAttribute::typeSize):
858         (gl::VertexAttribute::stride):
859         * src/libGLESv2/Fence.cpp: Added.
860         (gl::Fence::Fence):
861         (gl::Fence::~Fence):
862         (gl::Fence::isFence):
863         (gl::Fence::setFence):
864         (gl::Fence::testFence):
865         (gl::Fence::finishFence):
866         (gl::Fence::getFenceiv):
867         * src/libGLESv2/Fence.h: Added.
868         * src/libGLESv2/Float16ToFloat32.cpp: Added.
869         (gl::float16ToFloat32):
870         * src/libGLESv2/Float16ToFloat32.py: Added.
871         (convertMantissa):
872         (convertExponent):
873         (convertOffset):
874         * src/libGLESv2/Framebuffer.cpp: Added.
875         (gl::Framebuffer::Framebuffer):
876         (gl::Framebuffer::~Framebuffer):
877         (gl::Framebuffer::lookupRenderbuffer):
878         (gl::Framebuffer::setColorbuffer):
879         (gl::Framebuffer::setDepthbuffer):
880         (gl::Framebuffer::setStencilbuffer):
881         (gl::Framebuffer::detachTexture):
882         (gl::Framebuffer::detachRenderbuffer):
883         (gl::Framebuffer::getRenderTargetSerial):
884         (gl::Framebuffer::getDepthbufferSerial):
885         (gl::Framebuffer::getStencilbufferSerial):
886         (gl::Framebuffer::getColorbuffer):
887         (gl::Framebuffer::getDepthbuffer):
888         (gl::Framebuffer::getStencilbuffer):
889         (gl::Framebuffer::getDepthOrStencilbuffer):
890         (gl::Framebuffer::getReadColorbuffer):
891         (gl::Framebuffer::getReadColorbufferType):
892         (gl::Framebuffer::getFirstColorbuffer):
893         (gl::Framebuffer::getColorbufferType):
894         (gl::Framebuffer::getDepthbufferType):
895         (gl::Framebuffer::getStencilbufferType):
896         (gl::Framebuffer::getColorbufferHandle):
897         (gl::Framebuffer::getDepthbufferHandle):
898         (gl::Framebuffer::getStencilbufferHandle):
899         (gl::Framebuffer::getDrawBufferState):
900         (gl::Framebuffer::setDrawBufferState):
901         (gl::Framebuffer::isEnabledColorAttachment):
902         (gl::Framebuffer::hasEnabledColorAttachment):
903         (gl::Framebuffer::hasStencil):
904         (gl::Framebuffer::usingExtendedDrawBuffers):
905         (gl::Framebuffer::completeness):
906         (gl::DefaultFramebuffer::DefaultFramebuffer):
907         (gl::Framebuffer::getSamples):
908         (gl::DefaultFramebuffer::completeness):
909         * src/libGLESv2/Framebuffer.h: Added.
910         * src/libGLESv2/HandleAllocator.cpp: Added.
911         (gl::HandleAllocator::HandleAllocator):
912         (gl::HandleAllocator::~HandleAllocator):
913         (gl::HandleAllocator::setBaseHandle):
914         (gl::HandleAllocator::allocate):
915         (gl::HandleAllocator::release):
916         * src/libGLESv2/HandleAllocator.h: Added.
917         * src/libGLESv2/Program.cpp: Added.
918         (gl::AttributeBindings::AttributeBindings):
919         (gl::AttributeBindings::~AttributeBindings):
920         (gl::InfoLog::InfoLog):
921         (gl::InfoLog::~InfoLog):
922         (gl::InfoLog::getLength):
923         (gl::InfoLog::getLog):
924         (gl::InfoLog::appendSanitized):
925         (gl::InfoLog::append):
926         (gl::InfoLog::reset):
927         (gl::Program::Program):
928         (gl::Program::~Program):
929         (gl::Program::attachShader):
930         (gl::Program::detachShader):
931         (gl::Program::getAttachedShadersCount):
932         (gl::AttributeBindings::bindAttributeLocation):
933         (gl::Program::bindAttributeLocation):
934         (gl::Program::link):
935         (gl::AttributeBindings::getAttributeBinding):
936         (gl::Program::unlink):
937         (gl::Program::isLinked):
938         (gl::Program::getProgramBinary):
939         (gl::Program::setProgramBinary):
940         (gl::Program::release):
941         (gl::Program::addRef):
942         (gl::Program::getRefCount):
943         (gl::Program::getProgramBinaryLength):
944         (gl::Program::getInfoLogLength):
945         (gl::Program::getInfoLog):
946         (gl::Program::getAttachedShaders):
947         (gl::Program::getActiveAttribute):
948         (gl::Program::getActiveAttributeCount):
949         (gl::Program::getActiveAttributeMaxLength):
950         (gl::Program::getActiveUniform):
951         (gl::Program::getActiveUniformCount):
952         (gl::Program::getActiveUniformMaxLength):
953         (gl::Program::flagForDeletion):
954         (gl::Program::isFlaggedForDeletion):
955         (gl::Program::validate):
956         (gl::Program::isValidated):
957         * src/libGLESv2/Program.h: Added.
958         * src/libGLESv2/ProgramBinary.cpp: Added.
959         (gl::str):
960         (gl::UniformLocation::UniformLocation):
961         (gl::ProgramBinary::ProgramBinary):
962         (gl::ProgramBinary::~ProgramBinary):
963         (gl::ProgramBinary::getSerial):
964         (gl::ProgramBinary::issueSerial):
965         (gl::ProgramBinary::getPixelExecutable):
966         (gl::ProgramBinary::getVertexExecutable):
967         (gl::ProgramBinary::getGeometryExecutable):
968         (gl::ProgramBinary::getAttributeLocation):
969         (gl::ProgramBinary::getSemanticIndex):
970         (gl::ProgramBinary::getUsedSamplerRange):
971         (gl::ProgramBinary::usesPointSize):
972         (gl::ProgramBinary::usesPointSpriteEmulation):
973         (gl::ProgramBinary::usesGeometryShader):
974         (gl::ProgramBinary::getSamplerMapping):
975         (gl::ProgramBinary::getSamplerTextureType):
976         (gl::ProgramBinary::getUniformLocation):
977         (gl::ProgramBinary::setUniform1fv):
978         (gl::ProgramBinary::setUniform2fv):
979         (gl::ProgramBinary::setUniform3fv):
980         (gl::ProgramBinary::setUniform4fv):
981         (gl::transposeMatrix):
982         (gl::ProgramBinary::setUniformMatrix2fv):
983         (gl::ProgramBinary::setUniformMatrix3fv):
984         (gl::ProgramBinary::setUniformMatrix4fv):
985         (gl::ProgramBinary::setUniform1iv):
986         (gl::ProgramBinary::setUniform2iv):
987         (gl::ProgramBinary::setUniform3iv):
988         (gl::ProgramBinary::setUniform4iv):
989         (gl::ProgramBinary::getUniformfv):
990         (gl::ProgramBinary::getUniformiv):
991         (gl::ProgramBinary::dirtyAllUniforms):
992         (gl::ProgramBinary::applyUniforms):
993         (gl::ProgramBinary::packVaryings):
994         (gl::ProgramBinary::linkVaryings):
995         (gl::ProgramBinary::load):
996         (gl::ProgramBinary::save):
997         (gl::ProgramBinary::getLength):
998         (gl::ProgramBinary::link):
999         (gl::ProgramBinary::linkAttributes):
1000         (gl::ProgramBinary::linkUniforms):
1001         (gl::ProgramBinary::defineUniform):
1002         (gl::ProgramBinary::generateGeometryShaderHLSL):
1003         (gl::ProgramBinary::generatePointSpriteHLSL):
1004         (gl::ProgramBinary::decorateAttribute):
1005         (gl::ProgramBinary::isValidated):
1006         (gl::ProgramBinary::getActiveAttribute):
1007         (gl::ProgramBinary::getActiveAttributeCount):
1008         (gl::ProgramBinary::getActiveAttributeMaxLength):
1009         (gl::ProgramBinary::getActiveUniform):
1010         (gl::ProgramBinary::getActiveUniformCount):
1011         (gl::ProgramBinary::getActiveUniformMaxLength):
1012         (gl::ProgramBinary::validate):
1013         (gl::ProgramBinary::validateSamplers):
1014         (gl::ProgramBinary::Sampler::Sampler):
1015         (gl::AttributeSorter::AttributeSorter):
1016         (gl::AttributeSorter::operator()):
1017         (gl::ProgramBinary::sortAttributesByLayout):
1018         * src/libGLESv2/ProgramBinary.h: Added.
1019         (gl::UniformLocation::UniformLocation):
1020         * src/libGLESv2/Query.cpp: Added.
1021         (gl::Query::Query):
1022         (gl::Query::~Query):
1023         (gl::Query::begin):
1024         (gl::Query::end):
1025         (gl::Query::getResult):
1026         (gl::Query::isResultAvailable):
1027         (gl::Query::getType):
1028         * src/libGLESv2/Query.h: Added.
1029         * src/libGLESv2/Renderbuffer.cpp: Added.
1030         (gl::RenderbufferInterface::RenderbufferInterface):
1031         (gl::RenderbufferInterface::addProxyRef):
1032         (gl::RenderbufferInterface::releaseProxy):
1033         (gl::RenderbufferInterface::getRedSize):
1034         (gl::RenderbufferInterface::getGreenSize):
1035         (gl::RenderbufferInterface::getBlueSize):
1036         (gl::RenderbufferInterface::getAlphaSize):
1037         (gl::RenderbufferInterface::getDepthSize):
1038         (gl::RenderbufferInterface::getStencilSize):
1039         (gl::RenderbufferTexture2D::RenderbufferTexture2D):
1040         (gl::RenderbufferTexture2D::~RenderbufferTexture2D):
1041         (gl::RenderbufferTexture2D::addProxyRef):
1042         (gl::RenderbufferTexture2D::releaseProxy):
1043         (gl::RenderbufferTexture2D::getRenderTarget):
1044         (gl::RenderbufferTexture2D::getDepthStencil):
1045         (gl::RenderbufferTexture2D::getWidth):
1046         (gl::RenderbufferTexture2D::getHeight):
1047         (gl::RenderbufferTexture2D::getInternalFormat):
1048         (gl::RenderbufferTexture2D::getActualFormat):
1049         (gl::RenderbufferTexture2D::getSamples):
1050         (gl::RenderbufferTexture2D::getSerial):
1051         (gl::RenderbufferTextureCubeMap::RenderbufferTextureCubeMap):
1052         (gl::RenderbufferTextureCubeMap::~RenderbufferTextureCubeMap):
1053         (gl::RenderbufferTextureCubeMap::addProxyRef):
1054         (gl::RenderbufferTextureCubeMap::releaseProxy):
1055         (gl::RenderbufferTextureCubeMap::getRenderTarget):
1056         (gl::RenderbufferTextureCubeMap::getDepthStencil):
1057         (gl::RenderbufferTextureCubeMap::getWidth):
1058         (gl::RenderbufferTextureCubeMap::getHeight):
1059         (gl::RenderbufferTextureCubeMap::getInternalFormat):
1060         (gl::RenderbufferTextureCubeMap::getActualFormat):
1061         (gl::RenderbufferTextureCubeMap::getSamples):
1062         (gl::RenderbufferTextureCubeMap::getSerial):
1063         (gl::Renderbuffer::Renderbuffer):
1064         (gl::Renderbuffer::~Renderbuffer):
1065         (gl::Renderbuffer::addRef):
1066         (gl::Renderbuffer::release):
1067         (gl::Renderbuffer::getRenderTarget):
1068         (gl::Renderbuffer::getDepthStencil):
1069         (gl::Renderbuffer::getWidth):
1070         (gl::Renderbuffer::getHeight):
1071         (gl::Renderbuffer::getInternalFormat):
1072         (gl::Renderbuffer::getActualFormat):
1073         (gl::Renderbuffer::getRedSize):
1074         (gl::Renderbuffer::getGreenSize):
1075         (gl::Renderbuffer::getBlueSize):
1076         (gl::Renderbuffer::getAlphaSize):
1077         (gl::Renderbuffer::getDepthSize):
1078         (gl::Renderbuffer::getStencilSize):
1079         (gl::Renderbuffer::getSamples):
1080         (gl::Renderbuffer::getSerial):
1081         (gl::Renderbuffer::setStorage):
1082         (gl::RenderbufferStorage::RenderbufferStorage):
1083         (gl::RenderbufferStorage::~RenderbufferStorage):
1084         (gl::RenderbufferStorage::getRenderTarget):
1085         (gl::RenderbufferStorage::getDepthStencil):
1086         (gl::RenderbufferStorage::getWidth):
1087         (gl::RenderbufferStorage::getHeight):
1088         (gl::RenderbufferStorage::getInternalFormat):
1089         (gl::RenderbufferStorage::getActualFormat):
1090         (gl::RenderbufferStorage::getSamples):
1091         (gl::RenderbufferStorage::getSerial):
1092         (gl::RenderbufferStorage::issueSerial):
1093         (gl::RenderbufferStorage::issueCubeSerials):
1094         (gl::Colorbuffer::Colorbuffer):
1095         (gl::Colorbuffer::~Colorbuffer):
1096         (gl::Colorbuffer::getRenderTarget):
1097         (gl::DepthStencilbuffer::DepthStencilbuffer):
1098         (gl::DepthStencilbuffer::~DepthStencilbuffer):
1099         (gl::DepthStencilbuffer::getDepthStencil):
1100         (gl::Depthbuffer::Depthbuffer):
1101         (gl::Depthbuffer::~Depthbuffer):
1102         (gl::Stencilbuffer::Stencilbuffer):
1103         (gl::Stencilbuffer::~Stencilbuffer):
1104         * src/libGLESv2/Renderbuffer.h: Added.
1105         (gl::RenderbufferInterface::~RenderbufferInterface):
1106         * src/libGLESv2/ResourceManager.cpp: Added.
1107         (gl::ResourceManager::ResourceManager):
1108         (gl::ResourceManager::~ResourceManager):
1109         (gl::ResourceManager::addRef):
1110         (gl::ResourceManager::release):
1111         (gl::ResourceManager::createBuffer):
1112         (gl::ResourceManager::createShader):
1113         (gl::ResourceManager::createProgram):
1114         (gl::ResourceManager::createTexture):
1115         (gl::ResourceManager::createRenderbuffer):
1116         (gl::ResourceManager::deleteBuffer):
1117         (gl::ResourceManager::deleteShader):
1118         (gl::ResourceManager::deleteProgram):
1119         (gl::ResourceManager::deleteTexture):
1120         (gl::ResourceManager::deleteRenderbuffer):
1121         (gl::ResourceManager::getBuffer):
1122         (gl::ResourceManager::getShader):
1123         (gl::ResourceManager::getTexture):
1124         (gl::ResourceManager::getProgram):
1125         (gl::ResourceManager::getRenderbuffer):
1126         (gl::ResourceManager::setRenderbuffer):
1127         (gl::ResourceManager::checkBufferAllocation):
1128         (gl::ResourceManager::checkTextureAllocation):
1129         (gl::ResourceManager::checkRenderbufferAllocation):
1130         * src/libGLESv2/ResourceManager.h: Added.
1131         * src/libGLESv2/Shader.cpp: Added.
1132         (gl::Shader::Shader):
1133         (gl::Shader::~Shader):
1134         (gl::Shader::getHandle):
1135         (gl::Shader::setSource):
1136         (gl::Shader::getInfoLogLength):
1137         (gl::Shader::getInfoLog):
1138         (gl::Shader::getSourceLength):
1139         (gl::Shader::getTranslatedSourceLength):
1140         (gl::Shader::getSourceImpl):
1141         (gl::Shader::getSource):
1142         (gl::Shader::getTranslatedSource):
1143         (gl::Shader::getUniforms):
1144         (gl::Shader::isCompiled):
1145         (gl::Shader::getHLSL):
1146         (gl::Shader::addRef):
1147         (gl::Shader::release):
1148         (gl::Shader::getRefCount):
1149         (gl::Shader::isFlaggedForDeletion):
1150         (gl::Shader::flagForDeletion):
1151         (gl::Shader::initializeCompiler):
1152         (gl::Shader::releaseCompiler):
1153         (gl::Shader::parseVaryings):
1154         (gl::Shader::resetVaryingsRegisterAssignment):
1155         (gl::Shader::uncompile):
1156         (gl::Shader::compileToHLSL):
1157         (gl::Shader::parseType):
1158         (gl::Shader::compareVarying):
1159         (gl::VertexShader::VertexShader):
1160         (gl::VertexShader::~VertexShader):
1161         (gl::VertexShader::getType):
1162         (gl::VertexShader::uncompile):
1163         (gl::VertexShader::compile):
1164         (gl::VertexShader::getSemanticIndex):
1165         (gl::VertexShader::parseAttributes):
1166         (gl::FragmentShader::FragmentShader):
1167         (gl::FragmentShader::~FragmentShader):
1168         (gl::FragmentShader::getType):
1169         (gl::FragmentShader::compile):
1170         * src/libGLESv2/Shader.h: Added.
1171         (gl::Varying::Varying):
1172         (gl::Attribute::Attribute):
1173         * src/libGLESv2/Texture.cpp: Added.
1174         (gl::Texture::Texture):
1175         (gl::Texture::~Texture):
1176         (gl::Texture::setMinFilter):
1177         (gl::Texture::setMagFilter):
1178         (gl::Texture::setWrapS):
1179         (gl::Texture::setWrapT):
1180         (gl::Texture::setMaxAnisotropy):
1181         (gl::Texture::setUsage):
1182         (gl::Texture::getMinFilter):
1183         (gl::Texture::getMagFilter):
1184         (gl::Texture::getWrapS):
1185         (gl::Texture::getWrapT):
1186         (gl::Texture::getMaxAnisotropy):
1187         (gl::Texture::getLodOffset):
1188         (gl::Texture::getSamplerState):
1189         (gl::Texture::getUsage):
1190         (gl::Texture::isMipmapFiltered):
1191         (gl::Texture::setImage):
1192         (gl::Texture::setCompressedImage):
1193         (gl::Texture::subImage):
1194         (gl::Texture::subImageCompressed):
1195         (gl::Texture::getNativeTexture):
1196         (gl::Texture::hasDirtyImages):
1197         (gl::Texture::resetDirty):
1198         (gl::Texture::getTextureSerial):
1199         (gl::Texture::getRenderTargetSerial):
1200         (gl::Texture::isImmutable):
1201         (gl::Texture::creationLevels):
1202         (gl::Texture2D::Texture2D):
1203         (gl::Texture2D::~Texture2D):
1204         (gl::Texture2D::addProxyRef):
1205         (gl::Texture2D::releaseProxy):
1206         (gl::Texture2D::getTarget):
1207         (gl::Texture2D::getWidth):
1208         (gl::Texture2D::getHeight):
1209         (gl::Texture2D::getInternalFormat):
1210         (gl::Texture2D::getActualFormat):
1211         (gl::Texture2D::redefineImage):
1212         (gl::Texture2D::setImage):
1213         (gl::Texture2D::bindTexImage):
1214         (gl::Texture2D::releaseTexImage):
1215         (gl::Texture2D::setCompressedImage):
1216         (gl::Texture2D::commitRect):
1217         (gl::Texture2D::subImage):
1218         (gl::Texture2D::subImageCompressed):
1219         (gl::Texture2D::copyImage):
1220         (gl::Texture2D::copySubImage):
1221         (gl::Texture2D::storage):
1222         (gl::Texture2D::isSamplerComplete):
1223         (gl::Texture2D::isMipmapComplete):
1224         (gl::Texture2D::isCompressed):
1225         (gl::Texture2D::isDepth):
1226         (gl::Texture2D::createTexture):
1227         (gl::Texture2D::updateTexture):
1228         (gl::Texture2D::convertToRenderTarget):
1229         (gl::Texture2D::generateMipmaps):
1230         (gl::Texture2D::getRenderbuffer):
1231         (gl::Texture2D::getRenderTarget):
1232         (gl::Texture2D::getDepthStencil):
1233         (gl::Texture2D::levelCount):
1234         (gl::Texture2D::getStorage):
1235         (gl::TextureCubeMap::TextureCubeMap):
1236         (gl::TextureCubeMap::~TextureCubeMap):
1237         (gl::TextureCubeMap::addProxyRef):
1238         (gl::TextureCubeMap::releaseProxy):
1239         (gl::TextureCubeMap::getTarget):
1240         (gl::TextureCubeMap::getWidth):
1241         (gl::TextureCubeMap::getHeight):
1242         (gl::TextureCubeMap::getInternalFormat):
1243         (gl::TextureCubeMap::getActualFormat):
1244         (gl::TextureCubeMap::setImagePosX):
1245         (gl::TextureCubeMap::setImageNegX):
1246         (gl::TextureCubeMap::setImagePosY):
1247         (gl::TextureCubeMap::setImageNegY):
1248         (gl::TextureCubeMap::setImagePosZ):
1249         (gl::TextureCubeMap::setImageNegZ):
1250         (gl::TextureCubeMap::setCompressedImage):
1251         (gl::TextureCubeMap::commitRect):
1252         (gl::TextureCubeMap::subImage):
1253         (gl::TextureCubeMap::subImageCompressed):
1254         (gl::TextureCubeMap::isSamplerComplete):
1255         (gl::TextureCubeMap::isCubeComplete):
1256         (gl::TextureCubeMap::isMipmapCubeComplete):
1257         (gl::TextureCubeMap::isCompressed):
1258         (gl::TextureCubeMap::createTexture):
1259         (gl::TextureCubeMap::updateTexture):
1260         (gl::TextureCubeMap::convertToRenderTarget):
1261         (gl::TextureCubeMap::setImage):
1262         (gl::TextureCubeMap::faceIndex):
1263         (gl::TextureCubeMap::redefineImage):
1264         (gl::TextureCubeMap::copyImage):
1265         (gl::TextureCubeMap::copySubImage):
1266         (gl::TextureCubeMap::storage):
1267         (gl::TextureCubeMap::generateMipmaps):
1268         (gl::TextureCubeMap::getRenderbuffer):
1269         (gl::TextureCubeMap::getRenderTarget):
1270         (gl::TextureCubeMap::levelCount):
1271         (gl::TextureCubeMap::getStorage):
1272         * src/libGLESv2/Texture.h: Added.
1273         * src/libGLESv2/Uniform.cpp: Added.
1274         (gl::Uniform::Uniform):
1275         (gl::Uniform::~Uniform):
1276         (gl::Uniform::isArray):
1277         (gl::Uniform::elementCount):
1278         * src/libGLESv2/Uniform.h: Added.
1279         * src/libGLESv2/angletypes.h: Added.
1280         * src/libGLESv2/constants.h: Added.
1281         * src/libGLESv2/libGLESv2.cpp: Added.
1282         (validImageSize):
1283         (checkTextureFormatType):
1284         (validateSubImageParams2D):
1285         (validateSubImageParamsCube):
1286         (validReadFormatType):
1287         * src/libGLESv2/libGLESv2.def: Added.
1288         * src/libGLESv2/libGLESv2.rc: Added.
1289         * src/libGLESv2/libGLESv2.vcxproj: Added.
1290         * src/libGLESv2/libGLESv2.vcxproj.filters: Added.
1291         * src/libGLESv2/main.cpp: Added.
1292         (DllMain):
1293         (gl::makeCurrent):
1294         (gl::getContext):
1295         (gl::getNonLostContext):
1296         (gl::getDisplay):
1297         (gl::error):
1298         * src/libGLESv2/main.h: Added.
1299         (gl::error):
1300         * src/libGLESv2/mathutil.h: Added.
1301         (gl::Vector4::Vector4):
1302         (gl::isPow2):
1303         (gl::log2):
1304         (gl::ceilPow2):
1305         (gl::clamp):
1306         (gl::clamp01):
1307         (gl::unorm):
1308         (gl::supportsSSE2):
1309         (gl::float32ToFloat16):
1310         (rx::Range::Range):
1311         * src/libGLESv2/precompiled.cpp: Added.
1312         * src/libGLESv2/precompiled.h: Added.
1313         * src/libGLESv2/renderer: Added.
1314         * src/libGLESv2/renderer/Blit.cpp: Added.
1315         (rx::Blit::Blit):
1316         (rx::Blit::~Blit):
1317         (rx::Blit::initGeometry):
1318         (rx::Blit::setShader):
1319         (rx::Blit::setVertexShader):
1320         (rx::Blit::setPixelShader):
1321         (rx::Blit::getSurfaceRect):
1322         (rx::Blit::boxFilter):
1323         (rx::Blit::copy):
1324         (rx::Blit::formatConvert):
1325         (rx::Blit::setFormatConvertShaders):
1326         (rx::Blit::copySurfaceToTexture):
1327         (rx::Blit::setViewport):
1328         (rx::Blit::setCommonBlitState):
1329         (rx::Blit::render):
1330         (rx::Blit::saveState):
1331         (rx::Blit::restoreState):
1332         * src/libGLESv2/renderer/Blit.h: Added.
1333         * src/libGLESv2/renderer/BufferStorage.cpp: Added.
1334         (rx::BufferStorage::BufferStorage):
1335         (rx::BufferStorage::~BufferStorage):
1336         (rx::BufferStorage::getSerial):
1337         (rx::BufferStorage::updateSerial):
1338         (rx::BufferStorage::markBufferUsage):
1339         * src/libGLESv2/renderer/BufferStorage.h: Added.
1340         * src/libGLESv2/renderer/BufferStorage11.cpp: Added.
1341         (rx::BufferStorage11::BufferStorage11):
1342         (rx::BufferStorage11::~BufferStorage11):
1343         (rx::BufferStorage11::makeBufferStorage11):
1344         (rx::BufferStorage11::getData):
1345         (rx::BufferStorage11::setData):
1346         (rx::BufferStorage11::clear):
1347         (rx::BufferStorage11::getSize):
1348         (rx::BufferStorage11::supportsDirectBinding):
1349         (rx::BufferStorage11::markBufferUsage):
1350         (rx::BufferStorage11::getBuffer):
1351         * src/libGLESv2/renderer/BufferStorage11.h: Added.
1352         * src/libGLESv2/renderer/BufferStorage9.cpp: Added.
1353         (rx::BufferStorage9::BufferStorage9):
1354         (rx::BufferStorage9::~BufferStorage9):
1355         (rx::BufferStorage9::makeBufferStorage9):
1356         (rx::BufferStorage9::getData):
1357         (rx::BufferStorage9::setData):
1358         (rx::BufferStorage9::clear):
1359         (rx::BufferStorage9::getSize):
1360         (rx::BufferStorage9::supportsDirectBinding):
1361         * src/libGLESv2/renderer/BufferStorage9.h: Added.
1362         * src/libGLESv2/renderer/Fence11.cpp: Added.
1363         (rx::Fence11::Fence11):
1364         (rx::Fence11::~Fence11):
1365         (rx::Fence11::isFence):
1366         (rx::Fence11::setFence):
1367         (rx::Fence11::testFence):
1368         (rx::Fence11::finishFence):
1369         (rx::Fence11::getFenceiv):
1370         * src/libGLESv2/renderer/Fence11.h: Added.
1371         * src/libGLESv2/renderer/Fence9.cpp: Added.
1372         (rx::Fence9::Fence9):
1373         (rx::Fence9::~Fence9):
1374         (rx::Fence9::isFence):
1375         (rx::Fence9::setFence):
1376         (rx::Fence9::testFence):
1377         (rx::Fence9::finishFence):
1378         (rx::Fence9::getFenceiv):
1379         * src/libGLESv2/renderer/Fence9.h: Added.
1380         * src/libGLESv2/renderer/FenceImpl.h: Added.
1381         (rx::FenceImpl::FenceImpl):
1382         (rx::FenceImpl::~FenceImpl):
1383         (rx::FenceImpl::setStatus):
1384         (rx::FenceImpl::getStatus):
1385         (rx::FenceImpl::setCondition):
1386         (rx::FenceImpl::getCondition):
1387         * src/libGLESv2/renderer/Image.cpp: Added.
1388         (rx::Image::Image):
1389         (rx::Image::loadAlphaDataToBGRA):
1390         (rx::Image::loadAlphaDataToNative):
1391         (rx::Image::loadAlphaFloatDataToRGBA):
1392         (rx::Image::loadAlphaHalfFloatDataToRGBA):
1393         (rx::Image::loadLuminanceDataToNativeOrBGRA):
1394         (rx::Image::loadLuminanceFloatDataToRGBA):
1395         (rx::Image::loadLuminanceFloatDataToRGB):
1396         (rx::Image::loadLuminanceHalfFloatDataToRGBA):
1397         (rx::Image::loadLuminanceAlphaDataToNativeOrBGRA):
1398         (rx::Image::loadLuminanceAlphaFloatDataToRGBA):
1399         (rx::Image::loadLuminanceAlphaHalfFloatDataToRGBA):
1400         (rx::Image::loadRGBUByteDataToBGRX):
1401         (rx::Image::loadRGBUByteDataToRGBA):
1402         (rx::Image::loadRGB565DataToBGRA):
1403         (rx::Image::loadRGB565DataToRGBA):
1404         (rx::Image::loadRGBFloatDataToRGBA):
1405         (rx::Image::loadRGBFloatDataToNative):
1406         (rx::Image::loadRGBHalfFloatDataToRGBA):
1407         (rx::Image::loadRGBAUByteDataToBGRA):
1408         (rx::Image::loadRGBAUByteDataToNative):
1409         (rx::Image::loadRGBA4444DataToBGRA):
1410         (rx::Image::loadRGBA4444DataToRGBA):
1411         (rx::Image::loadRGBA5551DataToBGRA):
1412         (rx::Image::loadRGBA5551DataToRGBA):
1413         (rx::Image::loadRGBAFloatDataToRGBA):
1414         (rx::Image::loadRGBAHalfFloatDataToRGBA):
1415         (rx::Image::loadBGRADataToBGRA):
1416         * src/libGLESv2/renderer/Image.h: Added.
1417         (rx::Image::~Image):
1418         (rx::Image::getWidth):
1419         (rx::Image::getHeight):
1420         (rx::Image::getInternalFormat):
1421         (rx::Image::getActualFormat):
1422         (rx::Image::markDirty):
1423         (rx::Image::markClean):
1424         (rx::Image::setManagedSurface):
1425         * src/libGLESv2/renderer/Image11.cpp: Added.
1426         (rx::Image11::Image11):
1427         (rx::Image11::~Image11):
1428         (rx::Image11::makeImage11):
1429         (rx::Image11::generateMipmap):
1430         (rx::Image11::isDirty):
1431         (rx::Image11::updateSurface):
1432         (rx::Image11::redefine):
1433         (rx::Image11::isRenderableFormat):
1434         (rx::Image11::getDXGIFormat):
1435         (rx::Image11::loadData):
1436         (rx::Image11::loadCompressedData):
1437         (rx::Image11::copy):
1438         (rx::Image11::getStagingTexture):
1439         (rx::Image11::getStagingSubresource):
1440         (rx::Image11::createStagingTexture):
1441         (rx::Image11::map):
1442         (rx::Image11::unmap):
1443         * src/libGLESv2/renderer/Image11.h: Added.
1444         * src/libGLESv2/renderer/Image9.cpp: Added.
1445         (rx::Image9::Image9):
1446         (rx::Image9::~Image9):
1447         (rx::Image9::generateMip):
1448         (rx::Image9::makeImage9):
1449         (rx::Image9::generateMipmap):
1450         (rx::Image9::copyLockableSurfaces):
1451         (rx::Image9::redefine):
1452         (rx::Image9::createSurface):
1453         (rx::Image9::lock):
1454         (rx::Image9::unlock):
1455         (rx::Image9::isRenderableFormat):
1456         (rx::Image9::getD3DFormat):
1457         (rx::Image9::getSurface):
1458         (rx::Image9::setManagedSurface):
1459         (rx::Image9::updateSurface):
1460         (rx::Image9::loadData):
1461         (rx::Image9::loadCompressedData):
1462         (rx::Image9::copy):
1463         * src/libGLESv2/renderer/Image9.h: Added.
1464         (rx::Image9::isDirty):
1465         * src/libGLESv2/renderer/ImageSSE2.cpp: Added.
1466         (rx::Image::loadRGBAUByteDataToBGRASSE2):
1467         (rx::Image::loadAlphaDataToBGRASSE2):
1468         * src/libGLESv2/renderer/IndexBuffer.cpp: Added.
1469         (rx::IndexBuffer::IndexBuffer):
1470         (rx::IndexBuffer::~IndexBuffer):
1471         (rx::IndexBuffer::getSerial):
1472         (rx::IndexBuffer::updateSerial):
1473         (rx::IndexBufferInterface::IndexBufferInterface):
1474         (rx::IndexBufferInterface::~IndexBufferInterface):
1475         (rx::IndexBufferInterface::getIndexType):
1476         (rx::IndexBufferInterface::getBufferSize):
1477         (rx::IndexBufferInterface::getSerial):
1478         (rx::IndexBufferInterface::mapBuffer):
1479         (rx::IndexBufferInterface::unmapBuffer):
1480         (rx::IndexBufferInterface::getIndexBuffer):
1481         (rx::IndexBufferInterface::getWritePosition):
1482         (rx::IndexBufferInterface::setWritePosition):
1483         (rx::IndexBufferInterface::discard):
1484         (rx::IndexBufferInterface::setBufferSize):
1485         (rx::StreamingIndexBufferInterface::StreamingIndexBufferInterface):
1486         (rx::StreamingIndexBufferInterface::~StreamingIndexBufferInterface):
1487         (rx::StreamingIndexBufferInterface::reserveBufferSpace):
1488         (rx::StaticIndexBufferInterface::StaticIndexBufferInterface):
1489         (rx::StaticIndexBufferInterface::~StaticIndexBufferInterface):
1490         (rx::StaticIndexBufferInterface::reserveBufferSpace):
1491         (rx::StaticIndexBufferInterface::lookupRange):
1492         (rx::StaticIndexBufferInterface::addRange):
1493         * src/libGLESv2/renderer/IndexBuffer.h: Added.
1494         (rx::StaticIndexBufferInterface::IndexRange::operator<):
1495         * src/libGLESv2/renderer/IndexBuffer11.cpp: Added.
1496         (rx::IndexBuffer11::IndexBuffer11):
1497         (rx::IndexBuffer11::~IndexBuffer11):
1498         (rx::IndexBuffer11::initialize):
1499         (rx::IndexBuffer11::makeIndexBuffer11):
1500         (rx::IndexBuffer11::mapBuffer):
1501         (rx::IndexBuffer11::unmapBuffer):
1502         (rx::IndexBuffer11::getIndexType):
1503         (rx::IndexBuffer11::getBufferSize):
1504         (rx::IndexBuffer11::setSize):
1505         (rx::IndexBuffer11::discard):
1506         (rx::IndexBuffer11::getIndexFormat):
1507         (rx::IndexBuffer11::getBuffer):
1508         * src/libGLESv2/renderer/IndexBuffer11.h: Added.
1509         * src/libGLESv2/renderer/IndexBuffer9.cpp: Added.
1510         (rx::IndexBuffer9::IndexBuffer9):
1511         (rx::IndexBuffer9::~IndexBuffer9):
1512         (rx::IndexBuffer9::initialize):
1513         (rx::IndexBuffer9::makeIndexBuffer9):
1514         (rx::IndexBuffer9::mapBuffer):
1515         (rx::IndexBuffer9::unmapBuffer):
1516         (rx::IndexBuffer9::getIndexType):
1517         (rx::IndexBuffer9::getBufferSize):
1518         (rx::IndexBuffer9::setSize):
1519         (rx::IndexBuffer9::discard):
1520         (rx::IndexBuffer9::getIndexFormat):
1521         (rx::IndexBuffer9::getBuffer):
1522         * src/libGLESv2/renderer/IndexBuffer9.h: Added.
1523         * src/libGLESv2/renderer/IndexDataManager.cpp: Added.
1524         (rx::IndexDataManager::IndexDataManager):
1525         (rx::IndexDataManager::~IndexDataManager):
1526         (rx::indexTypeSize):
1527         (rx::convertIndices):
1528         (rx::computeRange):
1529         (rx::IndexDataManager::prepareIndexData):
1530         (rx::IndexDataManager::getCountingIndices):
1531         * src/libGLESv2/renderer/IndexDataManager.h: Added.
1532         * src/libGLESv2/renderer/InputLayoutCache.cpp: Added.
1533         (rx::InputLayoutCache::InputLayoutCache):
1534         (rx::InputLayoutCache::~InputLayoutCache):
1535         (rx::InputLayoutCache::initialize):
1536         (rx::InputLayoutCache::clear):
1537         (rx::InputLayoutCache::applyVertexBuffers):
1538         (rx::InputLayoutCache::hashInputLayout):
1539         (rx::InputLayoutCache::compareInputLayouts):
1540         * src/libGLESv2/renderer/InputLayoutCache.h: Added.
1541         * src/libGLESv2/renderer/Query11.cpp: Added.
1542         (rx::Query11::Query11):
1543         (rx::Query11::~Query11):
1544         (rx::Query11::begin):
1545         (rx::Query11::end):
1546         (rx::Query11::getResult):
1547         (rx::Query11::isResultAvailable):
1548         (rx::Query11::testQuery):
1549         * src/libGLESv2/renderer/Query11.h: Added.
1550         * src/libGLESv2/renderer/Query9.cpp: Added.
1551         (rx::Query9::Query9):
1552         (rx::Query9::~Query9):
1553         (rx::Query9::begin):
1554         (rx::Query9::end):
1555         (rx::Query9::getResult):
1556         (rx::Query9::isResultAvailable):
1557         (rx::Query9::testQuery):
1558         * src/libGLESv2/renderer/Query9.h: Added.
1559         * src/libGLESv2/renderer/QueryImpl.h: Added.
1560         (rx::QueryImpl::QueryImpl):
1561         (rx::QueryImpl::~QueryImpl):
1562         (rx::QueryImpl::getType):
1563         * src/libGLESv2/renderer/RenderStateCache.cpp: Added.
1564         (rx::RenderStateCache::RenderStateCache):
1565         (rx::RenderStateCache::~RenderStateCache):
1566         (rx::RenderStateCache::initialize):
1567         (rx::RenderStateCache::clear):
1568         (rx::RenderStateCache::hashBlendState):
1569         (rx::RenderStateCache::compareBlendStates):
1570         (rx::RenderStateCache::getBlendState):
1571         (rx::RenderStateCache::hashRasterizerState):
1572         (rx::RenderStateCache::compareRasterizerStates):
1573         (rx::RenderStateCache::getRasterizerState):
1574         (rx::RenderStateCache::hashDepthStencilState):
1575         (rx::RenderStateCache::compareDepthStencilStates):
1576         (rx::RenderStateCache::getDepthStencilState):
1577         (rx::RenderStateCache::hashSamplerState):
1578         (rx::RenderStateCache::compareSamplerStates):
1579         (rx::RenderStateCache::getSamplerState):
1580         * src/libGLESv2/renderer/RenderStateCache.h: Added.
1581         * src/libGLESv2/renderer/RenderTarget.h: Added.
1582         (rx::RenderTarget::RenderTarget):
1583         (rx::RenderTarget::~RenderTarget):
1584         (rx::RenderTarget::getWidth):
1585         (rx::RenderTarget::getHeight):
1586         (rx::RenderTarget::getInternalFormat):
1587         (rx::RenderTarget::getActualFormat):
1588         (rx::RenderTarget::getSamples):
1589         * src/libGLESv2/renderer/RenderTarget11.cpp: Added.
1590         (rx::getRTVSubresourceIndex):
1591         (rx::getDSVSubresourceIndex):
1592         (rx::RenderTarget11::RenderTarget11):
1593         (rx::RenderTarget11::~RenderTarget11):
1594         (rx::RenderTarget11::makeRenderTarget11):
1595         (rx::RenderTarget11::getTexture):
1596         (rx::RenderTarget11::getRenderTargetView):
1597         (rx::RenderTarget11::getDepthStencilView):
1598         (rx::RenderTarget11::getShaderResourceView):
1599         (rx::RenderTarget11::getSubresourceIndex):
1600         * src/libGLESv2/renderer/RenderTarget11.h: Added.
1601         * src/libGLESv2/renderer/RenderTarget9.cpp: Added.
1602         (rx::RenderTarget9::RenderTarget9):
1603         (rx::RenderTarget9::~RenderTarget9):
1604         (rx::RenderTarget9::makeRenderTarget9):
1605         (rx::RenderTarget9::getSurface):
1606         * src/libGLESv2/renderer/RenderTarget9.h: Added.
1607         * src/libGLESv2/renderer/Renderer.cpp: Added.
1608         (rx::Renderer::Renderer):
1609         (rx::Renderer::~Renderer):
1610         (rx::Renderer::initializeCompiler):
1611         (rx::Renderer::compileToBinary):
1612         * src/libGLESv2/renderer/Renderer.h: Added.
1613         (getComparableOSVersion):
1614         (rx::Renderer::getVertexTextureSupport):
1615         * src/libGLESv2/renderer/Renderer11.cpp: Added.
1616         (rx::Renderer11::Renderer11):
1617         (rx::Renderer11::~Renderer11):
1618         (rx::Renderer11::makeRenderer11):
1619         (rx::Renderer11::initialize):
1620         (rx::Renderer11::initializeDevice):
1621         (rx::Renderer11::generateConfigs):
1622         (rx::Renderer11::deleteConfigs):
1623         (rx::Renderer11::sync):
1624         (rx::Renderer11::createSwapChain):
1625         (rx::Renderer11::setSamplerState):
1626         (rx::Renderer11::setTexture):
1627         (rx::Renderer11::setRasterizerState):
1628         (rx::Renderer11::setBlendState):
1629         (rx::Renderer11::setDepthStencilState):
1630         (rx::Renderer11::setScissorRectangle):
1631         (rx::Renderer11::setViewport):
1632         (rx::Renderer11::applyPrimitiveType):
1633         (rx::Renderer11::applyRenderTarget):
1634         (rx::Renderer11::applyVertexBuffer):
1635         (rx::Renderer11::applyIndexBuffer):
1636         (rx::Renderer11::drawArrays):
1637         (rx::Renderer11::drawElements):
1638         (rx::Renderer11::drawLineLoop):
1639         (rx::Renderer11::drawTriangleFan):
1640         (rx::Renderer11::applyShaders):
1641         (rx::Renderer11::applyUniforms):
1642         (rx::Renderer11::clear):
1643         (rx::Renderer11::maskedClear):
1644         (rx::Renderer11::markAllStateDirty):
1645         (rx::Renderer11::releaseDeviceResources):
1646         (rx::Renderer11::notifyDeviceLost):
1647         (rx::Renderer11::isDeviceLost):
1648         (rx::Renderer11::testDeviceLost):
1649         (rx::Renderer11::testDeviceResettable):
1650         (rx::Renderer11::release):
1651         (rx::Renderer11::resetDevice):
1652         (rx::Renderer11::getAdapterVendor):
1653         (rx::Renderer11::getRendererDescription):
1654         (rx::Renderer11::getAdapterIdentifier):
1655         (rx::Renderer11::getBGRATextureSupport):
1656         (rx::Renderer11::getDXT1TextureSupport):
1657         (rx::Renderer11::getDXT3TextureSupport):
1658         (rx::Renderer11::getDXT5TextureSupport):
1659         (rx::Renderer11::getDepthTextureSupport):
1660         (rx::Renderer11::getFloat32TextureSupport):
1661         (rx::Renderer11::getFloat16TextureSupport):
1662         (rx::Renderer11::getLuminanceTextureSupport):
1663         (rx::Renderer11::getLuminanceAlphaTextureSupport):
1664         (rx::Renderer11::getTextureFilterAnisotropySupport):
1665         (rx::Renderer11::getTextureMaxAnisotropy):
1666         (rx::Renderer11::getEventQuerySupport):
1667         (rx::Renderer11::getViewportBounds):
1668         (rx::Renderer11::getMaxVertexTextureImageUnits):
1669         (rx::Renderer11::getMaxCombinedTextureImageUnits):
1670         (rx::Renderer11::getReservedVertexUniformVectors):
1671         (rx::Renderer11::getReservedFragmentUniformVectors):
1672         (rx::Renderer11::getMaxVertexUniformVectors):
1673         (rx::Renderer11::getMaxFragmentUniformVectors):
1674         (rx::Renderer11::getMaxVaryingVectors):
1675         (rx::Renderer11::getNonPower2TextureSupport):
1676         (rx::Renderer11::getOcclusionQuerySupport):
1677         (rx::Renderer11::getInstancingSupport):
1678         (rx::Renderer11::getShareHandleSupport):
1679         (rx::Renderer11::getDerivativeInstructionSupport):
1680         (rx::Renderer11::getPostSubBufferSupport):
1681         (rx::Renderer11::getMajorShaderModel):
1682         (rx::Renderer11::getMinorShaderModel):
1683         (rx::Renderer11::getMaxPointSize):
1684         (rx::Renderer11::getMaxViewportDimension):
1685         (rx::Renderer11::getMaxTextureWidth):
1686         (rx::Renderer11::getMaxTextureHeight):
1687         (rx::Renderer11::get32BitIndexSupport):
1688         (rx::Renderer11::getMinSwapInterval):
1689         (rx::Renderer11::getMaxSwapInterval):
1690         (rx::Renderer11::getMaxSupportedSamples):
1691         (rx::Renderer11::getNearestSupportedSamples):
1692         (rx::Renderer11::getMaxRenderTargets):
1693         (rx::Renderer11::copyToRenderTarget):
1694         (rx::Renderer11::copyImage):
1695         (rx::Renderer11::copyTexture):
1696         (rx::Renderer11::unapplyRenderTargets):
1697         (rx::Renderer11::setOneTimeRenderTarget):
1698         (rx::Renderer11::createRenderTarget):
1699         (rx::Renderer11::loadExecutable):
1700         (rx::Renderer11::compileToExecutable):
1701         (rx::Renderer11::createVertexBuffer):
1702         (rx::Renderer11::createIndexBuffer):
1703         (rx::Renderer11::createBufferStorage):
1704         (rx::Renderer11::createQuery):
1705         (rx::Renderer11::createFence):
1706         (rx::Renderer11::getRenderTargetResource):
1707         (rx::Renderer11::blitRect):
1708         (rx::Renderer11::readPixels):
1709         (rx::Renderer11::createImage):
1710         (rx::Renderer11::generateMipmap):
1711         (rx::Renderer11::createTextureStorage2D):
1712         (rx::Renderer11::createTextureStorageCube):
1713         (rx::getFastPixelCopySize):
1714         (rx::readPixelColor):
1715         (rx::writePixelColor):
1716         (rx::Renderer11::readTextureData):
1717         (rx::Renderer11::blitRenderbufferRect):
1718         (rx::Renderer11::resolveMultisampledTexture):
1719         (rx::Renderer11::getLUID):
1720         * src/libGLESv2/renderer/Renderer11.h: Added.
1721         (rx::Renderer11::getDevice):
1722         (rx::Renderer11::getDeviceContext):
1723         (rx::Renderer11::getDxgiFactory):
1724         * src/libGLESv2/renderer/Renderer9.cpp: Added.
1725         (rx::Renderer9::Renderer9):
1726         (rx::Renderer9::~Renderer9):
1727         (rx::Renderer9::makeRenderer9):
1728         (rx::Renderer9::initialize):
1729         (rx::Renderer9::initializeDevice):
1730         (rx::Renderer9::getDefaultPresentParameters):
1731         (rx::Renderer9::generateConfigs):
1732         (rx::Renderer9::deleteConfigs):
1733         (rx::Renderer9::startScene):
1734         (rx::Renderer9::endScene):
1735         (rx::Renderer9::sync):
1736         (rx::Renderer9::createSwapChain):
1737         (rx::Renderer9::allocateEventQuery):
1738         (rx::Renderer9::freeEventQuery):
1739         (rx::Renderer9::createVertexShader):
1740         (rx::Renderer9::createPixelShader):
1741         (rx::Renderer9::createVertexBuffer):
1742         (rx::Renderer9::createIndexBuffer):
1743         (rx::Renderer9::createBufferStorage):
1744         (rx::Renderer9::createQuery):
1745         (rx::Renderer9::createFence):
1746         (rx::Renderer9::setSamplerState):
1747         (rx::Renderer9::setTexture):
1748         (rx::Renderer9::setRasterizerState):
1749         (rx::Renderer9::setBlendState):
1750         (rx::Renderer9::setDepthStencilState):
1751         (rx::Renderer9::setScissorRectangle):
1752         (rx::Renderer9::setViewport):
1753         (rx::Renderer9::applyPrimitiveType):
1754         (rx::Renderer9::getNullColorbuffer):
1755         (rx::Renderer9::applyRenderTarget):
1756         (rx::Renderer9::applyVertexBuffer):
1757         (rx::Renderer9::applyIndexBuffer):
1758         (rx::Renderer9::drawArrays):
1759         (rx::Renderer9::drawElements):
1760         (rx::Renderer9::drawLineLoop):
1761         (rx::drawPoints):
1762         (rx::Renderer9::drawIndexedPoints):
1763         (rx::Renderer9::applyShaders):
1764         (rx::Renderer9::applyUniforms):
1765         (rx::Renderer9::applyUniformnfv):
1766         (rx::Renderer9::applyUniformniv):
1767         (rx::Renderer9::applyUniformnbv):
1768         (rx::Renderer9::clear):
1769         (rx::Renderer9::markAllStateDirty):
1770         (rx::Renderer9::releaseDeviceResources):
1771         (rx::Renderer9::notifyDeviceLost):
1772         (rx::Renderer9::isDeviceLost):
1773         (rx::Renderer9::testDeviceLost):
1774         (rx::Renderer9::testDeviceResettable):
1775         (rx::Renderer9::resetDevice):
1776         (rx::Renderer9::getAdapterVendor):
1777         (rx::Renderer9::getRendererDescription):
1778         (rx::Renderer9::getAdapterIdentifier):
1779         (rx::Renderer9::getMultiSampleSupport):
1780         (rx::Renderer9::getBGRATextureSupport):
1781         (rx::Renderer9::getDXT1TextureSupport):
1782         (rx::Renderer9::getDXT3TextureSupport):
1783         (rx::Renderer9::getDXT5TextureSupport):
1784         (rx::Renderer9::getDepthTextureSupport):
1785         (rx::Renderer9::getFloat32TextureSupport):
1786         (rx::Renderer9::getFloat16TextureSupport):
1787         (rx::Renderer9::getLuminanceTextureSupport):
1788         (rx::Renderer9::getLuminanceAlphaTextureSupport):
1789         (rx::Renderer9::getTextureFilterAnisotropySupport):
1790         (rx::Renderer9::getTextureMaxAnisotropy):
1791         (rx::Renderer9::getEventQuerySupport):
1792         (rx::Renderer9::getMaxVertexTextureImageUnits):
1793         (rx::Renderer9::getMaxCombinedTextureImageUnits):
1794         (rx::Renderer9::getReservedVertexUniformVectors):
1795         (rx::Renderer9::getReservedFragmentUniformVectors):
1796         (rx::Renderer9::getMaxVertexUniformVectors):
1797         (rx::Renderer9::getMaxFragmentUniformVectors):
1798         (rx::Renderer9::getMaxVaryingVectors):
1799         (rx::Renderer9::getNonPower2TextureSupport):
1800         (rx::Renderer9::getOcclusionQuerySupport):
1801         (rx::Renderer9::getInstancingSupport):
1802         (rx::Renderer9::getShareHandleSupport):
1803         (rx::Renderer9::getDerivativeInstructionSupport):
1804         (rx::Renderer9::getPostSubBufferSupport):
1805         (rx::Renderer9::getMajorShaderModel):
1806         (rx::Renderer9::getMaxPointSize):
1807         (rx::Renderer9::getMaxViewportDimension):
1808         (rx::Renderer9::getMaxTextureWidth):
1809         (rx::Renderer9::getMaxTextureHeight):
1810         (rx::Renderer9::get32BitIndexSupport):
1811         (rx::Renderer9::getCapsDeclTypes):
1812         (rx::Renderer9::getMinSwapInterval):
1813         (rx::Renderer9::getMaxSwapInterval):
1814         (rx::Renderer9::getMaxSupportedSamples):
1815         (rx::Renderer9::getNearestSupportedSamples):
1816         (rx::Renderer9::getMaxRenderTargets):
1817         (rx::Renderer9::ConvertTextureInternalFormat):
1818         (rx::Renderer9::copyToRenderTarget):
1819         (rx::Renderer9::getBufferPool):
1820         (rx::Renderer9::copyImage):
1821         (rx::Renderer9::blitRect):
1822         (rx::Renderer9::readPixels):
1823         (rx::Renderer9::createRenderTarget):
1824         (rx::Renderer9::loadExecutable):
1825         (rx::Renderer9::compileToExecutable):
1826         (rx::Renderer9::boxFilter):
1827         (rx::Renderer9::getTexturePool):
1828         (rx::Renderer9::createImage):
1829         (rx::Renderer9::generateMipmap):
1830         (rx::Renderer9::createTextureStorage2D):
1831         (rx::Renderer9::createTextureStorageCube):
1832         (rx::Renderer9::getLUID):
1833         * src/libGLESv2/renderer/Renderer9.h: Added.
1834         (rx::Renderer9::getDevice):
1835         * src/libGLESv2/renderer/ShaderCache.h: Added.
1836         (rx::ShaderCache::ShaderCache):
1837         (rx::ShaderCache::~ShaderCache):
1838         (rx::ShaderCache::initialize):
1839         (rx::ShaderCache::create):
1840         (rx::ShaderCache::clear):
1841         (rx::ShaderCache::createShader):
1842         * src/libGLESv2/renderer/ShaderExecutable.h: Added.
1843         (rx::ShaderExecutable::ShaderExecutable):
1844         (rx::ShaderExecutable::~ShaderExecutable):
1845         (rx::ShaderExecutable::getFunction):
1846         (rx::ShaderExecutable::getLength):
1847         * src/libGLESv2/renderer/ShaderExecutable11.cpp: Added.
1848         (rx::ShaderExecutable11::ShaderExecutable11):
1849         (rx::ShaderExecutable11::~ShaderExecutable11):
1850         (rx::ShaderExecutable11::makeShaderExecutable11):
1851         (rx::ShaderExecutable11::getVertexShader):
1852         (rx::ShaderExecutable11::getPixelShader):
1853         (rx::ShaderExecutable11::getGeometryShader):
1854         (rx::ShaderExecutable11::getConstantBuffer):
1855         * src/libGLESv2/renderer/ShaderExecutable11.h: Added.
1856         * src/libGLESv2/renderer/ShaderExecutable9.cpp: Added.
1857         (rx::ShaderExecutable9::ShaderExecutable9):
1858         (rx::ShaderExecutable9::~ShaderExecutable9):
1859         (rx::ShaderExecutable9::makeShaderExecutable9):
1860         (rx::ShaderExecutable9::getVertexShader):
1861         (rx::ShaderExecutable9::getPixelShader):
1862         * src/libGLESv2/renderer/ShaderExecutable9.h: Added.
1863         * src/libGLESv2/renderer/SwapChain.h: Added.
1864         (rx::SwapChain::SwapChain):
1865         (rx::SwapChain::~SwapChain):
1866         (rx::SwapChain::getShareHandle):
1867         * src/libGLESv2/renderer/SwapChain11.cpp: Added.
1868         (rx::SwapChain11::SwapChain11):
1869         (rx::SwapChain11::~SwapChain11):
1870         (rx::SwapChain11::release):
1871         (rx::SwapChain11::releaseOffscreenTexture):
1872         (rx::SwapChain11::resetOffscreenTexture):
1873         (rx::SwapChain11::resize):
1874         (rx::SwapChain11::reset):
1875         (rx::SwapChain11::initPassThroughResources):
1876         (rx::SwapChain11::swapRect):
1877         (rx::SwapChain11::getOffscreenTexture):
1878         (rx::SwapChain11::getRenderTarget):
1879         (rx::SwapChain11::getRenderTargetShaderResource):
1880         (rx::SwapChain11::getDepthStencil):
1881         (rx::SwapChain11::getDepthStencilTexture):
1882         (rx::SwapChain11::makeSwapChain11):
1883         (rx::SwapChain11::recreate):
1884         * src/libGLESv2/renderer/SwapChain11.h: Added.
1885         (rx::SwapChain11::getWidth):
1886         (rx::SwapChain11::getHeight):
1887         * src/libGLESv2/renderer/SwapChain9.cpp: Added.
1888         (rx::SwapChain9::SwapChain9):
1889         (rx::SwapChain9::~SwapChain9):
1890         (rx::SwapChain9::release):
1891         (rx::convertInterval):
1892         (rx::SwapChain9::resize):
1893         (rx::SwapChain9::reset):
1894         (rx::SwapChain9::swapRect):
1895         (rx::SwapChain9::getRenderTarget):
1896         (rx::SwapChain9::getDepthStencil):
1897         (rx::SwapChain9::getOffscreenTexture):
1898         (rx::SwapChain9::makeSwapChain9):
1899         (rx::SwapChain9::recreate):
1900         * src/libGLESv2/renderer/SwapChain9.h: Added.
1901         * src/libGLESv2/renderer/TextureStorage.cpp: Added.
1902         (rx::TextureStorageInterface::TextureStorageInterface):
1903         (rx::TextureStorageInterface::~TextureStorageInterface):
1904         (rx::TextureStorageInterface::isRenderTarget):
1905         (rx::TextureStorageInterface::isManaged):
1906         (rx::TextureStorageInterface::getTextureSerial):
1907         (rx::TextureStorageInterface::issueTextureSerial):
1908         (rx::TextureStorageInterface::getLodOffset):
1909         (rx::TextureStorageInterface::levelCount):
1910         (rx::TextureStorageInterface2D::TextureStorageInterface2D):
1911         (rx::TextureStorageInterface2D::~TextureStorageInterface2D):
1912         (rx::TextureStorageInterface2D::getRenderTarget):
1913         (rx::TextureStorageInterface2D::generateMipmap):
1914         (rx::TextureStorageInterface2D::getRenderTargetSerial):
1915         (rx::TextureStorageInterfaceCube::TextureStorageInterfaceCube):
1916         (rx::TextureStorageInterfaceCube::~TextureStorageInterfaceCube):
1917         (rx::TextureStorageInterfaceCube::getRenderTarget):
1918         (rx::TextureStorageInterfaceCube::generateMipmap):
1919         (rx::TextureStorageInterfaceCube::getRenderTargetSerial):
1920         * src/libGLESv2/renderer/TextureStorage.h: Added.
1921         (rx::TextureStorage::TextureStorage):
1922         (rx::TextureStorage::~TextureStorage):
1923         (rx::TextureStorageInterface::getStorageInstance):
1924         * src/libGLESv2/renderer/TextureStorage11.cpp: Added.
1925         (rx::TextureStorage11::TextureStorage11):
1926         (rx::TextureStorage11::~TextureStorage11):
1927         (rx::TextureStorage11::makeTextureStorage11):
1928         (rx::TextureStorage11::GetTextureBindFlags):
1929         (rx::TextureStorage11::IsTextureFormatRenderable):
1930         (rx::TextureStorage11::getBindFlags):
1931         (rx::TextureStorage11::getBaseTexture):
1932         (rx::TextureStorage11::getLodOffset):
1933         (rx::TextureStorage11::isRenderTarget):
1934         (rx::TextureStorage11::isManaged):
1935         (rx::TextureStorage11::levelCount):
1936         (rx::TextureStorage11::getSubresourceIndex):
1937         (rx::TextureStorage11::updateSubresourceLevel):
1938         (rx::TextureStorage11::generateMipmapLayer):
1939         (rx::TextureStorage11_2D::TextureStorage11_2D):
1940         (rx::TextureStorage11_2D::~TextureStorage11_2D):
1941         (rx::TextureStorage11_2D::makeTextureStorage11_2D):
1942         (rx::TextureStorage11_2D::getRenderTarget):
1943         (rx::TextureStorage11_2D::getSRV):
1944         (rx::TextureStorage11_2D::generateMipmap):
1945         (rx::TextureStorage11_Cube::TextureStorage11_Cube):
1946         (rx::TextureStorage11_Cube::~TextureStorage11_Cube):
1947         (rx::TextureStorage11_Cube::makeTextureStorage11_Cube):
1948         (rx::TextureStorage11_Cube::getRenderTarget):
1949         (rx::TextureStorage11_Cube::getSRV):
1950         (rx::TextureStorage11_Cube::generateMipmap):
1951         * src/libGLESv2/renderer/TextureStorage11.h: Added.
1952         (rx::TextureStorage11::getRenderTarget):
1953         (rx::TextureStorage11::generateMipmap):
1954         * src/libGLESv2/renderer/TextureStorage9.cpp: Added.
1955         (rx::TextureStorage9::TextureStorage9):
1956         (rx::TextureStorage9::~TextureStorage9):
1957         (rx::TextureStorage9::makeTextureStorage9):
1958         (rx::TextureStorage9::GetTextureUsage):
1959         (rx::TextureStorage9::IsTextureFormatRenderable):
1960         (rx::TextureStorage9::isRenderTarget):
1961         (rx::TextureStorage9::isManaged):
1962         (rx::TextureStorage9::getPool):
1963         (rx::TextureStorage9::getUsage):
1964         (rx::TextureStorage9::getLodOffset):
1965         (rx::TextureStorage9::levelCount):
1966         (rx::TextureStorage9_2D::TextureStorage9_2D):
1967         (rx::TextureStorage9_2D::~TextureStorage9_2D):
1968         (rx::TextureStorage9_2D::makeTextureStorage9_2D):
1969         (rx::TextureStorage9_2D::getSurfaceLevel):
1970         (rx::TextureStorage9_2D::getRenderTarget):
1971         (rx::TextureStorage9_2D::generateMipmap):
1972         (rx::TextureStorage9_2D::getBaseTexture):
1973         (rx::TextureStorage9_2D::initializeRenderTarget):
1974         (rx::TextureStorage9_Cube::TextureStorage9_Cube):
1975         (rx::TextureStorage9_Cube::~TextureStorage9_Cube):
1976         (rx::TextureStorage9_Cube::makeTextureStorage9_Cube):
1977         (rx::TextureStorage9_Cube::getCubeMapSurface):
1978         (rx::TextureStorage9_Cube::getRenderTarget):
1979         (rx::TextureStorage9_Cube::generateMipmap):
1980         (rx::TextureStorage9_Cube::getBaseTexture):
1981         (rx::TextureStorage9_Cube::initializeRenderTarget):
1982         * src/libGLESv2/renderer/TextureStorage9.h: Added.
1983         (rx::TextureStorage9::getRenderTarget):
1984         (rx::TextureStorage9::generateMipmap):
1985         * src/libGLESv2/renderer/VertexBuffer.cpp: Added.
1986         (rx::VertexBuffer::VertexBuffer):
1987         (rx::VertexBuffer::~VertexBuffer):
1988         (rx::VertexBuffer::updateSerial):
1989         (rx::VertexBuffer::getSerial):
1990         (rx::VertexBufferInterface::VertexBufferInterface):
1991         (rx::VertexBufferInterface::~VertexBufferInterface):
1992         (rx::VertexBufferInterface::getSerial):
1993         (rx::VertexBufferInterface::getBufferSize):
1994         (rx::VertexBufferInterface::setBufferSize):
1995         (rx::VertexBufferInterface::getWritePosition):
1996         (rx::VertexBufferInterface::setWritePosition):
1997         (rx::VertexBufferInterface::discard):
1998         (rx::VertexBufferInterface::storeVertexAttributes):
1999         (rx::VertexBufferInterface::storeRawData):
2000         (rx::VertexBufferInterface::reserveVertexSpace):
2001         (rx::VertexBufferInterface::reserveRawDataSpace):
2002         (rx::VertexBufferInterface::getVertexBuffer):
2003         (rx::StreamingVertexBufferInterface::StreamingVertexBufferInterface):
2004         (rx::StreamingVertexBufferInterface::~StreamingVertexBufferInterface):
2005         (rx::StreamingVertexBufferInterface::reserveSpace):
2006         (rx::StaticVertexBufferInterface::StaticVertexBufferInterface):
2007         (rx::StaticVertexBufferInterface::~StaticVertexBufferInterface):
2008         (rx::StaticVertexBufferInterface::lookupAttribute):
2009         (rx::StaticVertexBufferInterface::reserveSpace):
2010         (rx::StaticVertexBufferInterface::storeVertexAttributes):
2011         * src/libGLESv2/renderer/VertexBuffer.h: Added.
2012         * src/libGLESv2/renderer/VertexBuffer11.cpp: Added.
2013         (rx::VertexBuffer11::VertexBuffer11):
2014         (rx::VertexBuffer11::~VertexBuffer11):
2015         (rx::VertexBuffer11::initialize):
2016         (rx::VertexBuffer11::makeVertexBuffer11):
2017         (rx::VertexBuffer11::storeVertexAttributes):
2018         (rx::VertexBuffer11::storeRawData):
2019         (rx::VertexBuffer11::getSpaceRequired):
2020         (rx::VertexBuffer11::requiresConversion):
2021         (rx::VertexBuffer11::getBufferSize):
2022         (rx::VertexBuffer11::setBufferSize):
2023         (rx::VertexBuffer11::discard):
2024         (rx::VertexBuffer11::getVertexSize):
2025         (rx::VertexBuffer11::getDXGIFormat):
2026         (rx::VertexBuffer11::getBuffer):
2027         (rx::copyVertexData):
2028         (rx::copyFixedVertexData):
2029         (rx::copyToFloatVertexData):
2030         (rx::VertexBuffer11::getVertexConversion):
2031         * src/libGLESv2/renderer/VertexBuffer11.h: Added.
2032         * src/libGLESv2/renderer/VertexBuffer9.cpp: Added.
2033         (rx::VertexBuffer9::VertexBuffer9):
2034         (rx::VertexBuffer9::~VertexBuffer9):
2035         (rx::VertexBuffer9::initialize):
2036         (rx::VertexBuffer9::makeVertexBuffer9):
2037         (rx::VertexBuffer9::storeVertexAttributes):
2038         (rx::VertexBuffer9::storeRawData):
2039         (rx::VertexBuffer9::getSpaceRequired):
2040         (rx::VertexBuffer9::requiresConversion):
2041         (rx::VertexBuffer9::getVertexSize):
2042         (rx::VertexBuffer9::getDeclType):
2043         (rx::VertexBuffer9::getBufferSize):
2044         (rx::VertexBuffer9::setBufferSize):
2045         (rx::VertexBuffer9::discard):
2046         (rx::VertexBuffer9::getBuffer):
2047         (rx::VertexBuffer9::initializeTranslations):
2048         (rx::VertexBuffer9::typeIndex):
2049         (rx::VertexBuffer9::formatConverter):
2050         (rx::VertexBuffer9::spaceRequired):
2051         * src/libGLESv2/renderer/VertexBuffer9.h: Added.
2052         * src/libGLESv2/renderer/VertexDataManager.cpp: Added.
2053         (rx::elementsInBuffer):
2054         (rx::VertexDataManager::VertexDataManager):
2055         (rx::VertexDataManager::~VertexDataManager):
2056         (rx::directStoragePossible):
2057         (rx::VertexDataManager::prepareVertexData):
2058         * src/libGLESv2/renderer/VertexDataManager.h: Added.
2059         * src/libGLESv2/renderer/VertexDeclarationCache.cpp: Added.
2060         (rx::VertexDeclarationCache::VertexDeclarationCache):
2061         (rx::VertexDeclarationCache::~VertexDeclarationCache):
2062         (rx::VertexDeclarationCache::applyDeclaration):
2063         (rx::VertexDeclarationCache::markStateDirty):
2064         * src/libGLESv2/renderer/VertexDeclarationCache.h: Added.
2065         * src/libGLESv2/renderer/generatemip.h: Added.
2066         (rx::L8::average):
2067         (rx::A8L8::average):
2068         (rx::A8R8G8B8::average):
2069         (rx::A16B16G16R16F::average):
2070         (rx::R16F::average):
2071         (rx::R16G16F::average):
2072         (rx::A32B32G32R32F::average):
2073         (rx::R32F::average):
2074         (rx::R32G32F::average):
2075         (rx::R32G32B32F::average):
2076         (rx::GenerateMip):
2077         * src/libGLESv2/renderer/renderer11_utils.cpp: Added.
2078         (gl_d3d11::ConvertBlendFunc):
2079         (gl_d3d11::ConvertBlendOp):
2080         (gl_d3d11::ConvertColorMask):
2081         (gl_d3d11::ConvertCullMode):
2082         (gl_d3d11::ConvertComparison):
2083         (gl_d3d11::ConvertDepthMask):
2084         (gl_d3d11::ConvertStencilMask):
2085         (gl_d3d11::ConvertStencilOp):
2086         (gl_d3d11::ConvertFilter):
2087         (gl_d3d11::ConvertTextureWrap):
2088         (gl_d3d11::ConvertMinLOD):
2089         (gl_d3d11::ConvertMaxLOD):
2090         (d3d11_gl::ConvertBackBufferFormat):
2091         (d3d11_gl::ConvertDepthStencilFormat):
2092         (d3d11_gl::ConvertRenderbufferFormat):
2093         (d3d11_gl::ConvertTextureInternalFormat):
2094         (gl_d3d11::ConvertRenderbufferFormat):
2095         (gl_d3d11::ConvertTextureFormat):
2096         (d3d11::SetPositionTexCoordVertex):
2097         (d3d11::SetPositionDepthColorVertex):
2098         (d3d11::ComputePixelSizeBits):
2099         (d3d11::ComputeBlockSizeBits):
2100         (d3d11::IsCompressed):
2101         (d3d11::GetTextureFormatDimensionAlignment):
2102         (d3d11::IsDepthStencilFormat):
2103         (d3d11::GetDepthTextureFormat):
2104         (d3d11::GetDepthShaderResourceFormat):
2105         (d3d11::SetDebugName):
2106         * src/libGLESv2/renderer/renderer11_utils.h: Added.
2107         (d3d11::isDeviceLostError):
2108         * src/libGLESv2/renderer/renderer9_utils.cpp: Added.
2109         (gl_d3d9::ConvertComparison):
2110         (gl_d3d9::ConvertColor):
2111         (gl_d3d9::ConvertBlendFunc):
2112         (gl_d3d9::ConvertBlendOp):
2113         (gl_d3d9::ConvertStencilOp):
2114         (gl_d3d9::ConvertTextureWrap):
2115         (gl_d3d9::ConvertCullMode):
2116         (gl_d3d9::ConvertCubeFace):
2117         (gl_d3d9::ConvertColorMask):
2118         (gl_d3d9::ConvertMagFilter):
2119         (gl_d3d9::ConvertMinFilter):
2120         (gl_d3d9::ConvertRenderbufferFormat):
2121         (gl_d3d9::GetMultisampleTypeFromSamples):
2122         (d3d9_gl::GetStencilSize):
2123         (d3d9_gl::GetAlphaSize):
2124         (d3d9_gl::GetSamplesFromMultisampleType):
2125         (d3d9_gl::IsFormatChannelEquivalent):
2126         (d3d9_gl::ConvertBackBufferFormat):
2127         (d3d9_gl::ConvertDepthStencilFormat):
2128         (d3d9_gl::ConvertRenderTargetFormat):
2129         (d3d9_gl::GetEquivalentFormat):
2130         (d3d9::IsCompressedFormat):
2131         (d3d9::ComputeRowSize):
2132         * src/libGLESv2/renderer/renderer9_utils.h: Added.
2133         (d3d9::isDeviceLostError):
2134         * src/libGLESv2/renderer/shaders: Added.
2135         * src/libGLESv2/renderer/shaders/Blit.ps: Added.
2136         * src/libGLESv2/renderer/shaders/Blit.vs: Added.
2137         * src/libGLESv2/renderer/shaders/Clear11.hlsl: Added.
2138         * src/libGLESv2/renderer/shaders/Passthrough11.hlsl: Added.
2139         * src/libGLESv2/renderer/shaders/compiled: Added.
2140         * src/libGLESv2/renderer/shaders/compiled/clear11vs.h: Added.
2141         * src/libGLESv2/renderer/shaders/compiled/clearmultiple11ps.h: Added.
2142         * src/libGLESv2/renderer/shaders/compiled/clearsingle11ps.h: Added.
2143         * src/libGLESv2/renderer/shaders/compiled/componentmaskps.h: Added.
2144         * src/libGLESv2/renderer/shaders/compiled/flipyvs.h: Added.
2145         * src/libGLESv2/renderer/shaders/compiled/luminanceps.h: Added.
2146         * src/libGLESv2/renderer/shaders/compiled/passthrough11vs.h: Added.
2147         * src/libGLESv2/renderer/shaders/compiled/passthroughlum11ps.h: Added.
2148         * src/libGLESv2/renderer/shaders/compiled/passthroughlumalpha11ps.h: Added.
2149         * src/libGLESv2/renderer/shaders/compiled/passthroughps.h: Added.
2150         * src/libGLESv2/renderer/shaders/compiled/passthroughrgb11ps.h: Added.
2151         * src/libGLESv2/renderer/shaders/compiled/passthroughrgba11ps.h: Added.
2152         * src/libGLESv2/renderer/shaders/compiled/standardvs.h: Added.
2153         * src/libGLESv2/renderer/shaders/generate_shaders.bat: Added.
2154         * src/libGLESv2/renderer/vertexconversion.h: Added.
2155         (rx::Identity::convert):
2156         (rx::Cast::convert):
2157         (rx::Normalize::convert):
2158         (rx::FixedToFloat::convert):
2159         (rx::SimpleDefaultValues::zero):
2160         (rx::SimpleDefaultValues::one):
2161         (rx::NormalizedDefaultValues::zero):
2162         (rx::NormalizedDefaultValues::one):
2163         (rx::VertexDataConverter::convertArray):
2164         (rx::VertexDataConverter::pointerAddBytes):
2165         (rx::VertexDataConverter::copyComponent):
2166         * src/libGLESv2/resource.h: Added.
2167         * src/libGLESv2/utilities.cpp: Added.
2168         (gl::UniformComponentCount):
2169         (gl::UniformComponentType):
2170         (gl::UniformComponentSize):
2171         (gl::UniformInternalSize):
2172         (gl::UniformExternalSize):
2173         (gl::VariableRowCount):
2174         (gl::VariableColumnCount):
2175         (gl::AllocateFirstFreeBits):
2176         (gl::ComputePitch):
2177         (gl::ComputeCompressedPitch):
2178         (gl::ComputeCompressedSize):
2179         (gl::IsCompressed):
2180         (gl::IsDepthTexture):
2181         (gl::IsStencilTexture):
2182         (gl::MakeValidSize):
2183         (gl::ComputePixelSize):
2184         (gl::IsCubemapTextureTarget):
2185         (gl::IsInternalTextureTarget):
2186         (gl::ConvertSizedInternalFormat):
2187         (gl::ExtractFormat):
2188         (gl::ExtractType):
2189         (gl::IsColorRenderable):
2190         (gl::IsDepthRenderable):
2191         (gl::IsStencilRenderable):
2192         (gl::IsFloat32Format):
2193         (gl::IsFloat16Format):
2194         (gl::GetAlphaSize):
2195         (gl::GetRedSize):
2196         (gl::GetGreenSize):
2197         (gl::GetBlueSize):
2198         (gl::GetDepthSize):
2199         (gl::GetStencilSize):
2200         (gl::IsTriangleMode):
2201         (getTempPath):
2202         (writeFile):
2203         * src/libGLESv2/utilities.h: Added.
2204         * src/third_party/murmurhash: Added.
2205         * src/third_party/murmurhash/LICENSE: Added.
2206         * src/third_party/murmurhash/MurmurHash3.cpp: Added, replaced tabs with spaces.
2207         (rotl32):
2208         (rotl64):
2209         (getblock):
2210         (fmix):
2211         (MurmurHash3_x86_32):
2212         (MurmurHash3_x86_128):
2213         (MurmurHash3_x64_128):
2214         * src/third_party/murmurhash/MurmurHash3.h: Added, replaced tabs with spaces.
2215
2216 2013-07-20  Dean Jackson  <dino@apple.com>
2217
2218         Updated ANGLE is leaking like a sieve
2219         https://bugs.webkit.org/show_bug.cgi?id=118939
2220
2221         Rollout 152863, r152821, r152929 and r152755.
2222
2223         * ANGLE.plist:
2224         * ANGLE.xcodeproj/project.pbxproj:
2225         * DerivedSources.make: Removed.
2226         * GNUmakefile.am:
2227         * Target.pri:
2228         * include/GLSLANG/ShaderLang.h:
2229         * src/compiler/BaseTypes.h:
2230         (getQualifierString):
2231         * src/compiler/Common.h:
2232         (EncodeSourceLoc):
2233         (DecodeSourceLoc):
2234         * src/compiler/Compiler.cpp:
2235         (TCompiler::TCompiler):
2236         (TCompiler::Init):
2237         (TCompiler::compile):
2238         (TCompiler::detectRecursion):
2239         * src/compiler/ConstantUnion.h:
2240         (ConstantUnion::ConstantUnion):
2241         * src/compiler/DetectCallDepth.cpp: Removed.
2242         * src/compiler/DetectRecursion.cpp: Added.
2243         (DetectRecursion::FunctionNode::FunctionNode):
2244         (DetectRecursion::FunctionNode::getName):
2245         (DetectRecursion::FunctionNode::addCallee):
2246         (DetectRecursion::FunctionNode::detectRecursion):
2247         (DetectRecursion::DetectRecursion):
2248         (DetectRecursion::~DetectRecursion):
2249         (DetectRecursion::visitAggregate):
2250         (DetectRecursion::detectRecursion):
2251         (DetectRecursion::findFunctionByName):
2252         * src/compiler/DetectRecursion.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/DetectCallDepth.h.
2253         * src/compiler/Diagnostics.cpp:
2254         (TDiagnostics::writeInfo):
2255         * src/compiler/ForLoopUnroll.cpp:
2256         (ForLoopUnroll::evaluateIntConstant):
2257         * src/compiler/InfoSink.cpp:
2258         (TInfoSinkBase::prefix):
2259         (TInfoSinkBase::location):
2260         (TInfoSinkBase::message):
2261         * src/compiler/InfoSink.h:
2262         * src/compiler/Initialize.cpp:
2263         (BuiltInFunctionsCommon):
2264         (BuiltInFunctionsVertex):
2265         (TBuiltIns::initialize):
2266         (IdentifyBuiltIns):
2267         (InitExtensionBehavior):
2268         * src/compiler/Intermediate.cpp:
2269         (TIntermediate::addSymbol):
2270         (TIntermediate::addBinaryMath):
2271         (TIntermediate::addAssign):
2272         (TIntermediate::addIndex):
2273         (TIntermediate::addUnaryMath):
2274         (TIntermediate::setAggregateOperator):
2275         (TIntermediate::addConversion):
2276         (TIntermediate::growAggregate):
2277         (TIntermediate::makeAggregate):
2278         (TIntermediate::addSelection):
2279         (TIntermediate::addComma):
2280         (TIntermediate::addConstantUnion):
2281         (TIntermediate::addSwizzle):
2282         (TIntermediate::addLoop):
2283         (TIntermediate::addBranch):
2284         (TIntermUnary::promote):
2285         (TIntermBinary::promote):
2286         (CompareStruct):
2287         (CompareStructure):
2288         (TIntermConstantUnion::fold):
2289         (TIntermediate::promoteConstantUnion):
2290         * src/compiler/OutputGLSL.cpp:
2291         (TOutputGLSL::writeVariablePrecision):
2292         * src/compiler/OutputGLSL.h:
2293         * src/compiler/OutputGLSLBase.cpp:
2294         (TOutputGLSLBase::writeVariableType):
2295         (TOutputGLSLBase::writeConstantUnion):
2296         (TOutputGLSLBase::visitBinary):
2297         (TOutputGLSLBase::visitAggregate):
2298         (TOutputGLSLBase::getTypeName):
2299         (TOutputGLSLBase::hashFunctionName):
2300         * src/compiler/OutputGLSLBase.h:
2301         * src/compiler/OutputHLSL.cpp:
2302         (sh::OutputHLSL::OutputHLSL):
2303         (sh::OutputHLSL::header):
2304         (sh::OutputHLSL::visitSymbol):
2305         (sh::OutputHLSL::visitBinary):
2306         (sh::OutputHLSL::visitAggregate):
2307         (sh::OutputHLSL::visitSelection):
2308         (sh::OutputHLSL::visitLoop):
2309         (sh::OutputHLSL::handleExcessiveLoop):
2310         (sh::OutputHLSL::typeString):
2311         (sh::OutputHLSL::initializer):
2312         (sh::OutputHLSL::addConstructor):
2313         (sh::OutputHLSL::writeConstantUnion):
2314         (sh::OutputHLSL::decorateField):
2315         * src/compiler/OutputHLSL.h:
2316         * src/compiler/ParseHelper.cpp:
2317         (TParseContext::parseVectorFields):
2318         (TParseContext::parseMatrixFields):
2319         (TParseContext::error):
2320         (TParseContext::warning):
2321         (TParseContext::assignError):
2322         (TParseContext::unaryOpError):
2323         (TParseContext::binaryOpError):
2324         (TParseContext::precisionErrorCheck):
2325         (TParseContext::lValueErrorCheck):
2326         (TParseContext::globalErrorCheck):
2327         (TParseContext::reservedErrorCheck):
2328         (TParseContext::constructorErrorCheck):
2329         (TParseContext::voidErrorCheck):
2330         (TParseContext::boolErrorCheck):
2331         (TParseContext::samplerErrorCheck):
2332         (TParseContext::structQualifierErrorCheck):
2333         (TParseContext::parameterSamplerErrorCheck):
2334         (TParseContext::containsSampler):
2335         (TParseContext::arraySizeErrorCheck):
2336         (TParseContext::arrayQualifierErrorCheck):
2337         (TParseContext::arrayTypeErrorCheck):
2338         (TParseContext::arrayErrorCheck):
2339         (TParseContext::arraySetMaxSize):
2340         (TParseContext::nonInitConstErrorCheck):
2341         (TParseContext::nonInitErrorCheck):
2342         (TParseContext::paramErrorCheck):
2343         (TParseContext::extensionErrorCheck):
2344         (TParseContext::handleExtensionDirective):
2345         (TParseContext::handlePragmaDirective):
2346         (TParseContext::findFunction):
2347         (TParseContext::executeInitializer):
2348         (TParseContext::addConstructor):
2349         (TParseContext::constructBuiltIn):
2350         (TParseContext::constructStruct):
2351         (TParseContext::addConstVectorNode):
2352         (TParseContext::addConstMatrixNode):
2353         (TParseContext::addConstArrayNode):
2354         (TParseContext::addConstStruct):
2355         (TParseContext::enterStructDeclaration):
2356         (TParseContext::structNestingErrorCheck):
2357         * src/compiler/ParseHelper.h:
2358         (TParseContext::TParseContext):
2359         (TParseContext::pragma):
2360         * src/compiler/PoolAlloc.cpp:
2361         (TPoolAllocator::allocate):
2362         * src/compiler/ShHandle.h:
2363         * src/compiler/ShaderLang.cpp:
2364         (ShInitBuiltInResources):
2365         * src/compiler/SymbolTable.cpp:
2366         (TType::TType):
2367         (TType::buildMangledName):
2368         (TType::getStructSize):
2369         (TType::computeDeepestStructNesting):
2370         (TType::isStructureContainingArrays):
2371         (TSymbolTableLevel::relateToExtension):
2372         (TSymbol::TSymbol):
2373         (TVariable::TVariable):
2374         (TVariable::clone):
2375         (TFunction::TFunction):
2376         (TFunction::clone):
2377         (TSymbolTableLevel::clone):
2378         (TSymbolTable::copyTable):
2379         * src/compiler/SymbolTable.h:
2380         (TVariable::TVariable):
2381         (TVariable::updateArrayInformationType):
2382         (TVariable::getArrayInformationType):
2383         (TParameter::copyParam):
2384         (TFunction::relateToExtension):
2385         (TFunction::getExtension):
2386         * src/compiler/Types.h:
2387         (NewPoolTTypeList):
2388         (TType::TType):
2389         (TType::copyType):
2390         (TType::clone):
2391         (TType::getObjectSize):
2392         (TType::getMaxArraySize):
2393         (TType::setMaxArraySize):
2394         (TType::clearArrayness):
2395         (TType::setArrayInformationType):
2396         (TType::getArrayInformationType):
2397         (TType::getStruct):
2398         (TType::setStruct):
2399         (TType::getTypeName):
2400         (TType::setTypeName):
2401         (TType::isField):
2402         (TType::getFieldName):
2403         (TType::setFieldName):
2404         (TType::getMangledName):
2405         (TType::getDeepestStructNesting):
2406         (TPublicType::setBasic):
2407         * src/compiler/VariableInfo.cpp:
2408         (getUserDefinedVariableInfo):
2409         * src/compiler/builtin_symbol_table.cpp: Removed.
2410         * src/compiler/builtin_symbol_table.h: Removed.
2411         * src/compiler/builtin_symbols.json: Removed.
2412         * src/compiler/generate_builtin_symbol_table.py: Removed.
2413         * src/compiler/glslang.l:
2414         * src/compiler/glslang.y:
2415         * src/compiler/glslang_lex.cpp:
2416         (yy_get_previous_state):
2417         (yy_try_NUL_trans):
2418         (yy_push_state):
2419         (yy_pop_state):
2420         (yy_top_state):
2421         (string_input):
2422         (check_type):
2423         (reserved_word):
2424         (yyerror):
2425         (glslang_scan):
2426         * src/compiler/glslang_tab.cpp:
2427         * src/compiler/glslang_tab.h:
2428         * src/compiler/intermOut.cpp:
2429         (TOutputTraverser::visitUnary):
2430         (TOutputTraverser::visitAggregate):
2431         (TOutputTraverser::visitConstantUnion):
2432         * src/compiler/intermediate.h:
2433         (TIntermNode::TIntermNode):
2434         (TIntermNode::getLine):
2435         (TIntermNode::setLine):
2436         (TIntermNode::~TIntermNode):
2437         (TIntermConstantUnion::setUnionArrayPointer):
2438         (TIntermAggregate::TIntermAggregate):
2439         (TIntermAggregate::setEndLine):
2440         (TIntermAggregate::getEndLine):
2441         (TIntermTraverser::TIntermTraverser):
2442         (TIntermTraverser::incrementDepth):
2443         * src/compiler/localintermediate.h:
2444         * src/compiler/parseConst.cpp:
2445         (TConstTraverser::visitSymbol):
2446         (TConstTraverser::visitBinary):
2447         (TConstTraverser::visitUnary):
2448         (TConstTraverser::visitAggregate):
2449         (TConstTraverser::visitSelection):
2450         (TConstTraverser::visitConstantUnion):
2451         (TConstTraverser::visitLoop):
2452         (TConstTraverser::visitBranch):
2453         (TIntermediate::parseConstTree):
2454         * src/compiler/timing/RestrictVertexShaderTiming.cpp:
2455         (RestrictVertexShaderTiming::visitSymbol):
2456         * src/libEGL/Config.cpp: Removed.
2457         * src/libEGL/Config.h: Removed.
2458         * src/libEGL/Display.cpp: Removed.
2459         * src/libEGL/Display.h: Removed.
2460         * src/libEGL/README: Added.
2461         * src/libEGL/ShaderCache.h: Removed.
2462         * src/libEGL/Surface.cpp: Removed.
2463         * src/libEGL/Surface.h: Removed.
2464         * src/libEGL/libEGL.cpp: Removed.
2465         * src/libEGL/libEGL.def: Removed.
2466         * src/libEGL/libEGL.rc: Removed.
2467         * src/libEGL/libEGL.vcxproj: Removed.
2468         * src/libEGL/libEGL.vcxproj.filters: Removed.
2469         * src/libEGL/main.cpp: Removed.
2470         * src/libEGL/main.h: Removed.
2471         * src/libEGL/resource.h: Removed.
2472         * src/libGLESv2/BinaryStream.h: Removed.
2473         * src/libGLESv2/Blit.cpp: Removed.
2474         * src/libGLESv2/Blit.h: Removed.
2475         * src/libGLESv2/Buffer.cpp: Removed.
2476         * src/libGLESv2/Buffer.h: Removed.
2477         * src/libGLESv2/Context.cpp: Removed.
2478         * src/libGLESv2/Context.h: Removed.
2479         * src/libGLESv2/D3DConstantTable.cpp: Removed.
2480         * src/libGLESv2/D3DConstantTable.h: Removed.
2481         * src/libGLESv2/Fence.cpp: Removed.
2482         * src/libGLESv2/Fence.h: Removed.
2483         * src/libGLESv2/Float16ToFloat32.cpp: Removed.
2484         * src/libGLESv2/Float16ToFloat32.py: Removed.
2485         * src/libGLESv2/Framebuffer.cpp: Removed.
2486         * src/libGLESv2/Framebuffer.h: Removed.
2487         * src/libGLESv2/HandleAllocator.cpp: Removed.
2488         * src/libGLESv2/HandleAllocator.h: Removed.
2489         * src/libGLESv2/IndexDataManager.cpp: Removed.
2490         * src/libGLESv2/IndexDataManager.h: Removed.
2491         * src/libGLESv2/Program.cpp: Removed.
2492         * src/libGLESv2/Program.h: Removed.
2493         * src/libGLESv2/ProgramBinary.cpp: Removed.
2494         * src/libGLESv2/ProgramBinary.h: Removed.
2495         * src/libGLESv2/Query.cpp: Removed.
2496         * src/libGLESv2/Query.h: Removed.
2497         * src/libGLESv2/README: Added.
2498         * src/libGLESv2/Renderbuffer.cpp: Removed.
2499         * src/libGLESv2/Renderbuffer.h: Removed.
2500         * src/libGLESv2/ResourceManager.cpp: Removed.
2501         * src/libGLESv2/ResourceManager.h: Removed.
2502         * src/libGLESv2/Shader.cpp: Removed.
2503         * src/libGLESv2/Shader.h: Removed.
2504         * src/libGLESv2/Texture.cpp: Removed.
2505         * src/libGLESv2/Texture.h: Removed.
2506         * src/libGLESv2/TextureSSE2.cpp: Removed.
2507         * src/libGLESv2/VertexDataManager.cpp: Removed.
2508         * src/libGLESv2/VertexDataManager.h: Removed.
2509         * src/libGLESv2/libGLESv2.cpp: Removed.
2510         * src/libGLESv2/libGLESv2.def: Removed.
2511         * src/libGLESv2/libGLESv2.rc: Removed.
2512         * src/libGLESv2/libGLESv2.vcxproj: Removed.
2513         * src/libGLESv2/libGLESv2.vcxproj.filters: Removed.
2514         * src/libGLESv2/main.cpp: Removed.
2515         * src/libGLESv2/main.h: Removed.
2516         * src/libGLESv2/mathutil.h: Removed.
2517         * src/libGLESv2/resource.h: Removed.
2518         * src/libGLESv2/shaders/Blit.ps: Removed.
2519         * src/libGLESv2/shaders/Blit.vs: Removed.
2520         * src/libGLESv2/shaders/componentmaskps.h: Removed.
2521         * src/libGLESv2/shaders/flipyvs.h: Removed.
2522         * src/libGLESv2/shaders/generate_shaders.bat: Removed.
2523         * src/libGLESv2/shaders/luminanceps.h: Removed.
2524         * src/libGLESv2/shaders/passthroughps.h: Removed.
2525         * src/libGLESv2/shaders/standardvs.h: Removed.
2526         * src/libGLESv2/utilities.cpp: Removed.
2527         * src/libGLESv2/utilities.h: Removed.
2528         * src/libGLESv2/vertexconversion.h: Removed.
2529
2530 2013-07-19  Alex Christensen  <achristensen@apple.com>
2531
2532         Generate derived files in ANGLE at build time rather than when updating from upstream.
2533         https://bugs.webkit.org/show_bug.cgi?id=118872
2534
2535         Reviewed by Mark Rowe.
2536
2537         * ANGLE.xcodeproj/project.pbxproj: Made Derived Sources target which calls DerivedSources.make,
2538         moved generated files into Derived Sources group.
2539         * DerivedSources.make: Added.
2540
2541 2013-07-18  Alex Christensen  <achristensen@apple.com>
2542
2543         Added previously unincluded files from ANGLE r2426 with these exceptions:
2544         No gyp files are included.  No WebKit ports use them.
2545         ANGLE.sln is not included.  I will not use that.
2546         translator_common and translator_hlsl projects and filters are not included.
2547         I will need to make a customized translator  project that uses the GLSL translator instead of the HLSL.
2548         https://bugs.webkit.org/show_bug.cgi?id=118833
2549
2550         Reviewed by Dean Jackson.
2551
2552         * src/compiler/builtin_symbols.json: Added.
2553         * src/compiler/generate_builtin_symbol_table.py: Added.
2554         (parseBuiltin):
2555         * src/libEGL: Replaced.
2556         * src/libEGL/Config.cpp: Added.
2557         (egl::Config::Config):
2558         (egl::Config::setDefaults):
2559         (egl::Config::set):
2560         (egl::Config::getHandle):
2561         (egl::SortConfig::SortConfig):
2562         (egl::SortConfig::scanForWantedComponents):
2563         (egl::SortConfig::wantedComponentsSize):
2564         (egl::SortConfig::operator()):
2565         (egl::ConfigSet::ConfigSet):
2566         (egl::ConfigSet::add):
2567         (egl::ConfigSet::size):
2568         (egl::ConfigSet::getConfigs):
2569         (egl::ConfigSet::get):
2570         * src/libEGL/Config.h: Added.
2571         * src/libEGL/Display.cpp: Added.
2572         (egl::Display::getDisplay):
2573         (egl::Display::Display):
2574         (egl::Display::~Display):
2575         (egl::Display::initialize):
2576         (egl::Display::terminate):
2577         (egl::Display::startScene):
2578         (egl::Display::endScene):
2579         (egl::Display::getConfigs):
2580         (egl::Display::getConfigAttrib):
2581         (egl::Display::createDevice):
2582         (egl::Display::initializeDevice):
2583         (egl::Display::resetDevice):
2584         (egl::Display::createWindowSurface):
2585         (egl::Display::createOffscreenSurface):
2586         (egl::Display::createContext):
2587         (egl::Display::restoreLostDevice):
2588         (egl::Display::destroySurface):
2589         (egl::Display::destroyContext):
2590         (egl::Display::notifyDeviceLost):
2591         (egl::Display::isDeviceLost):
2592         (egl::Display::isInitialized):
2593         (egl::Display::isValidConfig):
2594         (egl::Display::isValidContext):
2595         (egl::Display::isValidSurface):
2596         (egl::Display::hasExistingWindowSurface):
2597         (egl::Display::getMinSwapInterval):
2598         (egl::Display::getMaxSwapInterval):
2599         (egl::Display::getDevice):
2600         (egl::Display::getDeviceCaps):
2601         (egl::Display::getAdapterIdentifier):
2602         (egl::Display::testDeviceLost):
2603         (egl::Display::testDeviceResettable):
2604         (egl::Display::sync):
2605         (egl::Display::allocateEventQuery):
2606         (egl::Display::freeEventQuery):
2607         (egl::Display::getMultiSampleSupport):
2608         (egl::Display::getDXT1TextureSupport):
2609         (egl::Display::getDXT3TextureSupport):
2610         (egl::Display::getDXT5TextureSupport):
2611         (egl::Display::getDepthTextureSupport):
2612         (egl::Display::getFloat32TextureSupport):
2613         (egl::Display::getFloat16TextureSupport):
2614         (egl::Display::getLuminanceTextureSupport):
2615         (egl::Display::getLuminanceAlphaTextureSupport):
2616         (egl::Display::getTextureFilterAnisotropySupport):
2617         (egl::Display::getBufferPool):
2618         (egl::Display::getTexturePool):
2619         (egl::Display::getEventQuerySupport):
2620         (egl::Display::getDefaultPresentParameters):
2621         (egl::Display::initExtensionString):
2622         (egl::Display::getExtensionString):
2623         (egl::Display::initVendorString):
2624         (egl::Display::getVendorString):
2625         (egl::Display::shareHandleSupported):
2626         (egl::Display::createVertexShader):
2627         (egl::Display::compileShaderSource):
2628         (egl::Display::createPixelShader):
2629         (egl::Display::getVertexTextureSupport):
2630         (egl::Display::getNonPower2TextureSupport):
2631         (egl::Display::getOcclusionQuerySupport):
2632         (egl::Display::getInstancingSupport):
2633         * src/libEGL/Display.h: Added.
2634         (getComparableOSVersion):
2635         (egl::Display::isD3d9ExDevice):
2636         * src/libEGL/README: Removed.
2637         * src/libEGL/ShaderCache.h: Added.
2638         (egl::ShaderCache::ShaderCache):
2639         (egl::ShaderCache::~ShaderCache):
2640         (egl::ShaderCache::initialize):
2641         (egl::ShaderCache::create):
2642         (egl::ShaderCache::clear):
2643         (egl::ShaderCache::createShader):
2644         * src/libEGL/Surface.cpp: Added.
2645         (egl::Surface::Surface):
2646         (egl::Surface::~Surface):
2647         (egl::Surface::initialize):
2648         (egl::Surface::release):
2649         (egl::Surface::resetSwapChain):
2650         (egl::Surface::swapRect):
2651         (egl::Surface::getWindowHandle):
2652         (egl::SurfaceWindowProc):
2653         (egl::Surface::subclassWindow):
2654         (egl::Surface::unsubclassWindow):
2655         (egl::Surface::checkForOutOfDateSwapChain):
2656         (egl::Surface::convertInterval):
2657         (egl::Surface::swap):
2658         (egl::Surface::postSubBuffer):
2659         (egl::Surface::getWidth):
2660         (egl::Surface::getHeight):
2661         (egl::Surface::isPostSubBufferSupported):
2662         (egl::Surface::getRenderTarget):
2663         (egl::Surface::getDepthStencil):
2664         (egl::Surface::getOffscreenTexture):
2665         (egl::Surface::setSwapInterval):
2666         (egl::Surface::getTextureFormat):
2667         (egl::Surface::getTextureTarget):
2668         (egl::Surface::setBoundTexture):
2669         (egl::Surface::getBoundTexture):
2670         (egl::Surface::getFormat):
2671         * src/libEGL/Surface.h: Added.
2672         (egl::Surface::getShareHandle):
2673         * src/libEGL/libEGL.cpp: Added.
2674         (validateDisplay):
2675         (validateConfig):
2676         (validateContext):
2677         (validateSurface):
2678         * src/libEGL/libEGL.def: Added.
2679         * src/libEGL/libEGL.rc: Added.
2680         * src/libEGL/libEGL.vcxproj: Added.
2681         * src/libEGL/libEGL.vcxproj.filters: Added.
2682         * src/libEGL/main.cpp: Added.
2683         (DllMain):
2684         (egl::setCurrentError):
2685         (egl::getCurrentError):
2686         (egl::setCurrentAPI):
2687         (egl::getCurrentAPI):
2688         (egl::setCurrentDisplay):
2689         (egl::getCurrentDisplay):
2690         (egl::setCurrentDrawSurface):
2691         (egl::getCurrentDrawSurface):
2692         (egl::setCurrentReadSurface):
2693         (egl::getCurrentReadSurface):
2694         (error):
2695         * src/libEGL/main.h: Added.
2696         (error):
2697         (success):
2698         * src/libEGL/resource.h: Added.
2699         * src/libGLESv2: Replaced.
2700         * src/libGLESv2/BinaryStream.h: Added.
2701         (gl::BinaryInputStream::BinaryInputStream):
2702         (gl::BinaryInputStream::read):
2703         (gl::BinaryInputStream::skip):
2704         (gl::BinaryInputStream::offset):
2705         (gl::BinaryInputStream::error):
2706         (gl::BinaryInputStream::endOfStream):
2707         (gl::BinaryOutputStream::BinaryOutputStream):
2708         (gl::BinaryOutputStream::write):
2709         (gl::BinaryOutputStream::length):
2710         (gl::BinaryOutputStream::data):
2711         * src/libGLESv2/Blit.cpp: Added.
2712         (gl::Blit::Blit):
2713         (gl::Blit::~Blit):
2714         (gl::Blit::initGeometry):
2715         (gl::Blit::setShader):
2716         (gl::Blit::setVertexShader):
2717         (gl::Blit::setPixelShader):
2718         (gl::Blit::getSurfaceRect):
2719         (gl::Blit::boxFilter):
2720         (gl::Blit::copy):
2721         (gl::Blit::formatConvert):
2722         (gl::Blit::setFormatConvertShaders):
2723         (gl::Blit::copySurfaceToTexture):
2724         (gl::Blit::setViewport):
2725         (gl::Blit::setCommonBlitState):
2726         (gl::Blit::render):
2727         (gl::Blit::saveState):
2728         (gl::Blit::restoreState):
2729         * src/libGLESv2/Blit.h: Added.
2730         * src/libGLESv2/Buffer.cpp: Added.
2731         (gl::Buffer::Buffer):
2732         (gl::Buffer::~Buffer):
2733         (gl::Buffer::bufferData):
2734         (gl::Buffer::bufferSubData):
2735         (gl::Buffer::getStaticVertexBuffer):
2736         (gl::Buffer::getStaticIndexBuffer):
2737         (gl::Buffer::invalidateStaticData):
2738         (gl::Buffer::promoteStaticUsage):
2739         * src/libGLESv2/Buffer.h: Added.
2740         (gl::Buffer::data):
2741         (gl::Buffer::size):
2742         (gl::Buffer::usage):
2743         * src/libGLESv2/Context.cpp: Added.
2744         (gl::makeStaticString):
2745         (gl::Context::Context):
2746         (gl::Context::~Context):
2747         (gl::Context::makeCurrent):
2748         (gl::Context::markAllStateDirty):
2749         (gl::Context::markDxUniformsDirty):
2750         (gl::Context::markContextLost):
2751         (gl::Context::isContextLost):
2752         (gl::Context::setClearColor):
2753         (gl::Context::setClearDepth):
2754         (gl::Context::setClearStencil):
2755         (gl::Context::setCullFace):
2756         (gl::Context::isCullFaceEnabled):
2757         (gl::Context::setCullMode):
2758         (gl::Context::setFrontFace):
2759         (gl::Context::setDepthTest):
2760         (gl::Context::isDepthTestEnabled):
2761         (gl::Context::setDepthFunc):
2762         (gl::Context::setDepthRange):
2763         (gl::Context::setBlend):
2764         (gl::Context::isBlendEnabled):
2765         (gl::Context::setBlendFactors):
2766         (gl::Context::setBlendColor):
2767         (gl::Context::setBlendEquation):
2768         (gl::Context::setStencilTest):
2769         (gl::Context::isStencilTestEnabled):
2770         (gl::Context::setStencilParams):
2771         (gl::Context::setStencilBackParams):
2772         (gl::Context::setStencilWritemask):
2773         (gl::Context::setStencilBackWritemask):
2774         (gl::Context::setStencilOperations):
2775         (gl::Context::setStencilBackOperations):
2776         (gl::Context::setPolygonOffsetFill):
2777         (gl::Context::isPolygonOffsetFillEnabled):
2778         (gl::Context::setPolygonOffsetParams):
2779         (gl::Context::setSampleAlphaToCoverage):
2780         (gl::Context::isSampleAlphaToCoverageEnabled):
2781         (gl::Context::setSampleCoverage):
2782         (gl::Context::isSampleCoverageEnabled):
2783         (gl::Context::setSampleCoverageParams):
2784         (gl::Context::setScissorTest):
2785         (gl::Context::isScissorTestEnabled):
2786         (gl::Context::setDither):
2787         (gl::Context::isDitherEnabled):
2788         (gl::Context::setLineWidth):
2789         (gl::Context::setGenerateMipmapHint):
2790         (gl::Context::setFragmentShaderDerivativeHint):
2791         (gl::Context::setViewportParams):
2792         (gl::Context::setScissorParams):
2793         (gl::Context::setColorMask):
2794         (gl::Context::setDepthMask):
2795         (gl::Context::setActiveSampler):
2796         (gl::Context::getReadFramebufferHandle):
2797         (gl::Context::getDrawFramebufferHandle):
2798         (gl::Context::getRenderbufferHandle):
2799         (gl::Context::getArrayBufferHandle):
2800         (gl::Context::getActiveQuery):
2801         (gl::Context::setEnableVertexAttribArray):
2802         (gl::Context::getVertexAttribState):
2803         (gl::Context::setVertexAttribState):
2804         (gl::Context::getVertexAttribPointer):
2805         (gl::Context::getVertexAttributes):
2806         (gl::Context::setPackAlignment):
2807         (gl::Context::getPackAlignment):
2808         (gl::Context::setUnpackAlignment):
2809         (gl::Context::getUnpackAlignment):
2810         (gl::Context::setPackReverseRowOrder):
2811         (gl::Context::getPackReverseRowOrder):
2812         (gl::Context::createBuffer):
2813         (gl::Context::createProgram):
2814         (gl::Context::createShader):
2815         (gl::Context::createTexture):
2816         (gl::Context::createRenderbuffer):
2817         (gl::Context::createFramebuffer):
2818         (gl::Context::createFence):
2819         (gl::Context::createQuery):
2820         (gl::Context::deleteBuffer):
2821         (gl::Context::deleteShader):
2822         (gl::Context::deleteProgram):
2823         (gl::Context::deleteTexture):
2824         (gl::Context::deleteRenderbuffer):
2825         (gl::Context::deleteFramebuffer):
2826         (gl::Context::deleteFence):
2827         (gl::Context::deleteQuery):
2828         (gl::Context::getBuffer):
2829         (gl::Context::getShader):
2830         (gl::Context::getProgram):
2831         (gl::Context::getTexture):
2832         (gl::Context::getRenderbuffer):
2833         (gl::Context::getReadFramebuffer):
2834         (gl::Context::getDrawFramebuffer):
2835         (gl::Context::bindArrayBuffer):
2836         (gl::Context::bindElementArrayBuffer):
2837         (gl::Context::bindTexture2D):
2838         (gl::Context::bindTextureCubeMap):
2839         (gl::Context::bindReadFramebuffer):
2840         (gl::Context::bindDrawFramebuffer):
2841         (gl::Context::bindRenderbuffer):
2842         (gl::Context::useProgram):
2843         (gl::Context::linkProgram):
2844         (gl::Context::setProgramBinary):
2845         (gl::Context::beginQuery):
2846         (gl::Context::endQuery):
2847         (gl::Context::setFramebufferZero):
2848         (gl::Context::setRenderbufferStorage):
2849         (gl::Context::getFramebuffer):
2850         (gl::Context::getFence):
2851         (gl::Context::getQuery):
2852         (gl::Context::getArrayBuffer):
2853         (gl::Context::getElementArrayBuffer):
2854         (gl::Context::getCurrentProgramBinary):
2855         (gl::Context::getTexture2D):
2856         (gl::Context::getTextureCubeMap):
2857         (gl::Context::getSamplerTexture):
2858         (gl::Context::getBooleanv):
2859         (gl::Context::getFloatv):
2860         (gl::Context::getIntegerv):
2861         (gl::Context::getQueryParameterInfo):
2862         (gl::Context::applyRenderTarget):
2863         (gl::Context::applyState):
2864         (gl::Context::applyVertexBuffer):
2865         (gl::Context::applyIndexBuffer):
2866         (gl::Context::applyShaders):
2867         (gl::Context::applyTextures):
2868         (gl::Context::readPixels):
2869         (gl::Context::clear):
2870         (gl::Context::drawArrays):
2871         (gl::Context::drawElements):
2872         (gl::Context::sync):
2873         (gl::Context::drawLineLoop):
2874         (gl::Context::recordInvalidEnum):
2875         (gl::Context::recordInvalidValue):
2876         (gl::Context::recordInvalidOperation):
2877         (gl::Context::recordOutOfMemory):
2878         (gl::Context::recordInvalidFramebufferOperation):
2879         (gl::Context::getError):
2880         (gl::Context::getResetStatus):
2881         (gl::Context::isResetNotificationEnabled):
2882         (gl::Context::supportsShaderModel3):
2883         (gl::Context::getMaximumPointSize):
2884         (gl::Context::getMaximumVaryingVectors):
2885         (gl::Context::getMaximumVertexTextureImageUnits):
2886         (gl::Context::getMaximumCombinedTextureImageUnits):
2887         (gl::Context::getMaximumFragmentUniformVectors):
2888         (gl::Context::getMaxSupportedSamples):
2889         (gl::Context::getNearestSupportedSamples):
2890         (gl::Context::supportsEventQueries):
2891         (gl::Context::supportsOcclusionQueries):
2892         (gl::Context::supportsDXT1Textures):
2893         (gl::Context::supportsDXT3Textures):
2894         (gl::Context::supportsDXT5Textures):
2895         (gl::Context::supportsFloat32Textures):
2896         (gl::Context::supportsFloat32LinearFilter):
2897         (gl::Context::supportsFloat32RenderableTextures):
2898         (gl::Context::supportsFloat16Textures):
2899         (gl::Context::supportsFloat16LinearFilter):
2900         (gl::Context::supportsFloat16RenderableTextures):
2901         (gl::Context::getMaximumRenderbufferDimension):
2902         (gl::Context::getMaximumTextureDimension):
2903         (gl::Context::getMaximumCubeTextureDimension):
2904         (gl::Context::getMaximumTextureLevel):
2905         (gl::Context::supportsLuminanceTextures):
2906         (gl::Context::supportsLuminanceAlphaTextures):
2907         (gl::Context::supportsDepthTextures):
2908         (gl::Context::supports32bitIndices):
2909         (gl::Context::supportsNonPower2Texture):
2910         (gl::Context::supportsInstancing):
2911         (gl::Context::supportsTextureFilterAnisotropy):
2912         (gl::Context::supportsDerivativeInstructions):
2913         (gl::Context::getTextureMaxAnisotropy):
2914         (gl::Context::getCurrentReadFormatType):
2915         (gl::Context::detachBuffer):
2916         (gl::Context::detachTexture):
2917         (gl::Context::detachFramebuffer):
2918         (gl::Context::detachRenderbuffer):
2919         (gl::Context::getIncompleteTexture):
2920         (gl::Context::skipDraw):
2921         (gl::Context::isTriangleMode):
2922         (gl::Context::setVertexAttrib):
2923         (gl::Context::setVertexAttribDivisor):
2924         (gl::Context::initExtensionString):
2925         (gl::Context::getExtensionString):
2926         (gl::Context::initRendererString):
2927         (gl::Context::getRendererString):
2928         (gl::Context::blitFramebuffer):
2929         (gl::VertexDeclarationCache::VertexDeclarationCache):
2930         (gl::VertexDeclarationCache::~VertexDeclarationCache):
2931         (gl::VertexDeclarationCache::applyDeclaration):
2932         (gl::VertexDeclarationCache::markStateDirty):
2933         * src/libGLESv2/Context.h: Added.
2934         (gl::VertexAttribute::VertexAttribute):
2935         (gl::VertexAttribute::typeSize):
2936         (gl::VertexAttribute::stride):
2937         (gl::Context::getBlitter):
2938         (gl::Context::getDeviceCaps):
2939         * src/libGLESv2/D3DConstantTable.cpp: Added.
2940         (gl::D3DConstant::D3DConstant):
2941         (gl::D3DConstant::~D3DConstant):
2942         (gl::D3DConstant::addStructMembers):
2943         (gl::D3DConstantTable::D3DConstantTable):
2944         (gl::D3DConstantTable::~D3DConstantTable):
2945         (gl::D3DConstantTable::getConstant):
2946         (gl::D3DConstantTable::getConstantByName):
2947         * src/libGLESv2/D3DConstantTable.h: Added.
2948         (gl::D3DConstantTable::error):
2949         (gl::D3DConstantTable::constants):
2950         * src/libGLESv2/Fence.cpp: Added.
2951         (gl::Fence::Fence):
2952         (gl::Fence::~Fence):
2953         (gl::Fence::isFence):
2954         (gl::Fence::setFence):
2955         (gl::Fence::testFence):
2956         (gl::Fence::finishFence):
2957         (gl::Fence::getFenceiv):
2958         * src/libGLESv2/Fence.h: Added.
2959         * src/libGLESv2/Float16ToFloat32.cpp: Added.
2960         (gl::float16ToFloat32):
2961         * src/libGLESv2/Float16ToFloat32.py: Added.
2962         (convertMantissa):
2963         (convertExponent):
2964         (convertOffset):
2965         * src/libGLESv2/Framebuffer.cpp: Added.
2966         (gl::Framebuffer::Framebuffer):
2967         (gl::Framebuffer::~Framebuffer):
2968         (gl::Framebuffer::lookupRenderbuffer):
2969         (gl::Framebuffer::setColorbuffer):
2970         (gl::Framebuffer::setDepthbuffer):
2971         (gl::Framebuffer::setStencilbuffer):
2972         (gl::Framebuffer::detachTexture):
2973         (gl::Framebuffer::detachRenderbuffer):
2974         (gl::Framebuffer::getRenderTargetSerial):
2975         (gl::Framebuffer::getRenderTarget):
2976         (gl::Framebuffer::getDepthStencil):
2977         (gl::Framebuffer::getDepthbufferSerial):
2978         (gl::Framebuffer::getStencilbufferSerial):
2979         (gl::Framebuffer::getColorbuffer):
2980         (gl::Framebuffer::getDepthbuffer):
2981         (gl::Framebuffer::getStencilbuffer):
2982         (gl::Framebuffer::getNullColorbuffer):
2983         (gl::Framebuffer::getColorbufferType):
2984         (gl::Framebuffer::getDepthbufferType):
2985         (gl::Framebuffer::getStencilbufferType):
2986         (gl::Framebuffer::getColorbufferHandle):
2987         (gl::Framebuffer::getDepthbufferHandle):
2988         (gl::Framebuffer::getStencilbufferHandle):
2989         (gl::Framebuffer::hasStencil):
2990         (gl::Framebuffer::completeness):
2991         (gl::DefaultFramebuffer::DefaultFramebuffer):
2992         (gl::Framebuffer::getSamples):
2993         (gl::DefaultFramebuffer::completeness):
2994         * src/libGLESv2/Framebuffer.h: Added.
2995         * src/libGLESv2/HandleAllocator.cpp: Added.
2996         (gl::HandleAllocator::HandleAllocator):
2997         (gl::HandleAllocator::~HandleAllocator):
2998         (gl::HandleAllocator::setBaseHandle):
2999         (gl::HandleAllocator::allocate):
3000         (gl::HandleAllocator::release):
3001         * src/libGLESv2/HandleAllocator.h: Added.
3002         * src/libGLESv2/IndexDataManager.cpp: Added.
3003         (gl::IndexDataManager::IndexDataManager):
3004         (gl::IndexDataManager::~IndexDataManager):
3005         (gl::convertIndices):
3006         (gl::computeRange):
3007         (gl::IndexDataManager::prepareIndexData):
3008         (gl::IndexDataManager::indexSize):
3009         (gl::IndexDataManager::typeSize):
3010         (gl::IndexDataManager::getCountingIndices):
3011         (gl::IndexBuffer::IndexBuffer):
3012         (gl::IndexBuffer::~IndexBuffer):
3013         (gl::IndexBuffer::getBuffer):
3014         (gl::IndexBuffer::getSerial):
3015         (gl::IndexBuffer::issueSerial):
3016         (gl::IndexBuffer::unmap):
3017         (gl::StreamingIndexBuffer::StreamingIndexBuffer):
3018         (gl::StreamingIndexBuffer::~StreamingIndexBuffer):
3019         (gl::StreamingIndexBuffer::map):
3020         (gl::StreamingIndexBuffer::reserveSpace):
3021         (gl::StaticIndexBuffer::StaticIndexBuffer):
3022         (gl::StaticIndexBuffer::~StaticIndexBuffer):
3023         (gl::StaticIndexBuffer::map):
3024         (gl::StaticIndexBuffer::reserveSpace):
3025         (gl::StaticIndexBuffer::lookupType):
3026         (gl::StaticIndexBuffer::lookupRange):
3027         (gl::StaticIndexBuffer::addRange):
3028         * src/libGLESv2/IndexDataManager.h: Added.
3029         (gl::IndexBuffer::size):
3030         (gl::StaticIndexBuffer::IndexRange::operator<):
3031         * src/libGLESv2/Program.cpp: Added.
3032         (gl::AttributeBindings::AttributeBindings):
3033         (gl::AttributeBindings::~AttributeBindings):
3034         (gl::InfoLog::InfoLog):
3035         (gl::InfoLog::~InfoLog):
3036         (gl::InfoLog::getLength):
3037         (gl::InfoLog::getLog):
3038         (gl::InfoLog::appendSanitized):
3039         (gl::InfoLog::append):
3040         (gl::InfoLog::reset):
3041         (gl::Program::Program):
3042         (gl::Program::~Program):
3043         (gl::Program::attachShader):
3044         (gl::Program::detachShader):
3045         (gl::Program::getAttachedShadersCount):
3046         (gl::AttributeBindings::bindAttributeLocation):
3047         (gl::Program::bindAttributeLocation):
3048         (gl::Program::link):
3049         (gl::AttributeBindings::getAttributeBinding):
3050         (gl::Program::unlink):
3051         (gl::Program::isLinked):
3052         (gl::Program::getProgramBinary):
3053         (gl::Program::setProgramBinary):
3054         (gl::Program::release):
3055         (gl::Program::addRef):
3056         (gl::Program::getRefCount):
3057         (gl::Program::getProgramBinaryLength):
3058         (gl::Program::getInfoLogLength):
3059         (gl::Program::getInfoLog):
3060         (gl::Program::getAttachedShaders):
3061         (gl::Program::getActiveAttribute):
3062         (gl::Program::getActiveAttributeCount):
3063         (gl::Program::getActiveAttributeMaxLength):
3064         (gl::Program::getActiveUniform):
3065         (gl::Program::getActiveUniformCount):
3066         (gl::Program::getActiveUniformMaxLength):
3067         (gl::Program::flagForDeletion):
3068         (gl::Program::isFlaggedForDeletion):
3069         (gl::Program::validate):
3070         (gl::Program::isValidated):
3071         * src/libGLESv2/Program.h: Added.
3072         * src/libGLESv2/ProgramBinary.cpp: Added.
3073         (gl::str):
3074         (gl::Uniform::Uniform):
3075         (gl::Uniform::~Uniform):
3076         (gl::Uniform::isArray):
3077         (gl::UniformLocation::UniformLocation):
3078         (gl::ProgramBinary::ProgramBinary):
3079         (gl::ProgramBinary::~ProgramBinary):
3080         (gl::ProgramBinary::getSerial):
3081         (gl::ProgramBinary::issueSerial):
3082         (gl::ProgramBinary::getPixelShader):
3083         (gl::ProgramBinary::getVertexShader):
3084         (gl::ProgramBinary::getAttributeLocation):
3085         (gl::ProgramBinary::getSemanticIndex):
3086         (gl::ProgramBinary::getUsedSamplerRange):
3087         (gl::ProgramBinary::usesPointSize):
3088         (gl::ProgramBinary::getSamplerMapping):
3089         (gl::ProgramBinary::getSamplerTextureType):
3090         (gl::ProgramBinary::getUniformLocation):
3091         (gl::ProgramBinary::setUniform1fv):
3092         (gl::ProgramBinary::setUniform2fv):
3093         (gl::ProgramBinary::setUniform3fv):
3094         (gl::ProgramBinary::setUniform4fv):
3095         (gl::transposeMatrix):
3096         (gl::ProgramBinary::setUniformMatrix2fv):
3097         (gl::ProgramBinary::setUniformMatrix3fv):
3098         (gl::ProgramBinary::setUniformMatrix4fv):
3099         (gl::ProgramBinary::setUniform1iv):
3100         (gl::ProgramBinary::setUniform2iv):
3101         (gl::ProgramBinary::setUniform3iv):
3102         (gl::ProgramBinary::setUniform4iv):
3103         (gl::ProgramBinary::getUniformfv):
3104         (gl::ProgramBinary::getUniformiv):
3105         (gl::ProgramBinary::dirtyAllUniforms):
3106         (gl::ProgramBinary::applyUniforms):
3107         (gl::ProgramBinary::compileToBinary):
3108         (gl::ProgramBinary::packVaryings):
3109         (gl::ProgramBinary::linkVaryings):
3110         (gl::ProgramBinary::load):
3111         (gl::ProgramBinary::save):
3112         (gl::ProgramBinary::getLength):
3113         (gl::ProgramBinary::link):
3114         (gl::ProgramBinary::linkAttributes):
3115         (gl::ProgramBinary::linkUniforms):
3116         (gl::ProgramBinary::defineUniform):
3117         (gl::ProgramBinary::createUniform):
3118         (gl::ProgramBinary::decorateAttribute):
3119         (gl::ProgramBinary::undecorateUniform):
3120         (gl::ProgramBinary::applyUniformnbv):
3121         (gl::ProgramBinary::applyUniformnfv):
3122         (gl::ProgramBinary::applyUniform1iv):
3123         (gl::ProgramBinary::applyUniform2iv):
3124         (gl::ProgramBinary::applyUniform3iv):
3125         (gl::ProgramBinary::applyUniform4iv):
3126         (gl::ProgramBinary::applyUniformniv):
3127         (gl::ProgramBinary::isValidated):
3128         (gl::ProgramBinary::getActiveAttribute):
3129         (gl::ProgramBinary::getActiveAttributeCount):
3130         (gl::ProgramBinary::getActiveAttributeMaxLength):
3131         (gl::ProgramBinary::getActiveUniform):
3132         (gl::ProgramBinary::getActiveUniformCount):
3133         (gl::ProgramBinary::getActiveUniformMaxLength):
3134         (gl::ProgramBinary::validate):
3135         (gl::ProgramBinary::validateSamplers):
3136         (gl::ProgramBinary::getDxDepthRangeLocation):
3137         (gl::ProgramBinary::getDxDepthLocation):
3138         (gl::ProgramBinary::getDxCoordLocation):
3139         (gl::ProgramBinary::getDxHalfPixelSizeLocation):
3140         (gl::ProgramBinary::getDxFrontCCWLocation):
3141         (gl::ProgramBinary::getDxPointsOrLinesLocation):
3142         (gl::ProgramBinary::Sampler::Sampler):
3143         * src/libGLESv2/ProgramBinary.h: Added.
3144         (gl::Uniform::RegisterInfo::RegisterInfo):
3145         (gl::Uniform::RegisterInfo::set):
3146         (gl::UniformLocation::UniformLocation):
3147         * src/libGLESv2/Query.cpp: Added.
3148         (gl::Query::Query):
3149         (gl::Query::~Query):
3150         (gl::Query::begin):
3151         (gl::Query::end):
3152         (gl::Query::getResult):
3153         (gl::Query::isResultAvailable):
3154         (gl::Query::getType):
3155         (gl::Query::testQuery):
3156         * src/libGLESv2/Query.h: Added.
3157         * src/libGLESv2/README: Removed.
3158         * src/libGLESv2/Renderbuffer.cpp: Added.
3159         (gl::RenderbufferInterface::RenderbufferInterface):
3160         (gl::RenderbufferInterface::addProxyRef):
3161         (gl::RenderbufferInterface::releaseProxy):
3162         (gl::RenderbufferInterface::getRedSize):
3163         (gl::RenderbufferInterface::getGreenSize):
3164         (gl::RenderbufferInterface::getBlueSize):
3165         (gl::RenderbufferInterface::getAlphaSize):
3166         (gl::RenderbufferInterface::getDepthSize):
3167         (gl::RenderbufferInterface::getStencilSize):
3168         (gl::RenderbufferTexture2D::RenderbufferTexture2D):
3169         (gl::RenderbufferTexture2D::~RenderbufferTexture2D):
3170         (gl::RenderbufferTexture2D::addProxyRef):
3171         (gl::RenderbufferTexture2D::releaseProxy):
3172         (gl::RenderbufferTexture2D::getRenderTarget):
3173         (gl::RenderbufferTexture2D::getDepthStencil):
3174         (gl::RenderbufferTexture2D::getWidth):
3175         (gl::RenderbufferTexture2D::getHeight):
3176         (gl::RenderbufferTexture2D::getInternalFormat):
3177         (gl::RenderbufferTexture2D::getD3DFormat):
3178         (gl::RenderbufferTexture2D::getSamples):
3179         (gl::RenderbufferTexture2D::getSerial):
3180         (gl::RenderbufferTextureCubeMap::RenderbufferTextureCubeMap):
3181         (gl::RenderbufferTextureCubeMap::~RenderbufferTextureCubeMap):
3182         (gl::RenderbufferTextureCubeMap::addProxyRef):
3183         (gl::RenderbufferTextureCubeMap::releaseProxy):
3184         (gl::RenderbufferTextureCubeMap::getRenderTarget):
3185         (gl::RenderbufferTextureCubeMap::getDepthStencil):
3186         (gl::RenderbufferTextureCubeMap::getWidth):
3187         (gl::RenderbufferTextureCubeMap::getHeight):
3188         (gl::RenderbufferTextureCubeMap::getInternalFormat):
3189         (gl::RenderbufferTextureCubeMap::getD3DFormat):
3190         (gl::RenderbufferTextureCubeMap::getSamples):
3191         (gl::RenderbufferTextureCubeMap::getSerial):
3192         (gl::Renderbuffer::Renderbuffer):
3193         (gl::Renderbuffer::~Renderbuffer):
3194         (gl::Renderbuffer::addRef):
3195         (gl::Renderbuffer::release):
3196         (gl::Renderbuffer::getRenderTarget):
3197         (gl::Renderbuffer::getDepthStencil):
3198         (gl::Renderbuffer::getWidth):
3199         (gl::Renderbuffer::getHeight):
3200         (gl::Renderbuffer::getInternalFormat):
3201         (gl::Renderbuffer::getD3DFormat):
3202         (gl::Renderbuffer::getRedSize):
3203         (gl::Renderbuffer::getGreenSize):
3204         (gl::Renderbuffer::getBlueSize):
3205         (gl::Renderbuffer::getAlphaSize):
3206         (gl::Renderbuffer::getDepthSize):
3207         (gl::Renderbuffer::getStencilSize):
3208         (gl::Renderbuffer::getSamples):
3209         (gl::Renderbuffer::getSerial):
3210         (gl::Renderbuffer::setStorage):
3211         (gl::RenderbufferStorage::RenderbufferStorage):
3212         (gl::RenderbufferStorage::~RenderbufferStorage):
3213         (gl::RenderbufferStorage::getRenderTarget):
3214         (gl::RenderbufferStorage::getDepthStencil):
3215         (gl::RenderbufferStorage::getWidth):
3216         (gl::RenderbufferStorage::getHeight):
3217         (gl::RenderbufferStorage::getInternalFormat):
3218         (gl::RenderbufferStorage::getD3DFormat):
3219         (gl::RenderbufferStorage::getSamples):
3220         (gl::RenderbufferStorage::getSerial):
3221         (gl::RenderbufferStorage::issueSerial):
3222         (gl::RenderbufferStorage::issueCubeSerials):
3223         (gl::Colorbuffer::Colorbuffer):
3224         (gl::Colorbuffer::~Colorbuffer):
3225         (gl::Colorbuffer::getRenderTarget):
3226         (gl::DepthStencilbuffer::DepthStencilbuffer):
3227         (gl::DepthStencilbuffer::~DepthStencilbuffer):
3228         (gl::DepthStencilbuffer::getDepthStencil):
3229         (gl::Depthbuffer::Depthbuffer):
3230         (gl::Depthbuffer::~Depthbuffer):
3231         (gl::Stencilbuffer::Stencilbuffer):
3232         (gl::Stencilbuffer::~Stencilbuffer):
3233         * src/libGLESv2/Renderbuffer.h: Added.
3234         (gl::RenderbufferInterface::~RenderbufferInterface):
3235         * src/libGLESv2/ResourceManager.cpp: Added.
3236         (gl::ResourceManager::ResourceManager):
3237         (gl::ResourceManager::~ResourceManager):
3238         (gl::ResourceManager::addRef):
3239         (gl::ResourceManager::release):
3240         (gl::ResourceManager::createBuffer):
3241         (gl::ResourceManager::createShader):
3242         (gl::ResourceManager::createProgram):
3243         (gl::ResourceManager::createTexture):
3244         (gl::ResourceManager::createRenderbuffer):
3245         (gl::ResourceManager::deleteBuffer):
3246         (gl::ResourceManager::deleteShader):
3247         (gl::ResourceManager::deleteProgram):
3248         (gl::ResourceManager::deleteTexture):
3249         (gl::ResourceManager::deleteRenderbuffer):
3250         (gl::ResourceManager::getBuffer):
3251         (gl::ResourceManager::getShader):
3252         (gl::ResourceManager::getTexture):
3253         (gl::ResourceManager::getProgram):
3254         (gl::ResourceManager::getRenderbuffer):
3255         (gl::ResourceManager::setRenderbuffer):
3256         (gl::ResourceManager::checkBufferAllocation):
3257         (gl::ResourceManager::checkTextureAllocation):
3258         (gl::ResourceManager::checkRenderbufferAllocation):
3259         * src/libGLESv2/ResourceManager.h: Added.
3260         * src/libGLESv2/Shader.cpp: Added.
3261         (gl::Shader::Shader):
3262         (gl::Shader::~Shader):
3263         (gl::Shader::getHandle):
3264         (gl::Shader::setSource):
3265         (gl::Shader::getInfoLogLength):
3266         (gl::Shader::getInfoLog):
3267         (gl::Shader::getSourceLength):
3268         (gl::Shader::getTranslatedSourceLength):
3269         (gl::Shader::getSourceImpl):
3270         (gl::Shader::getSource):
3271         (gl::Shader::getTranslatedSource):
3272         (gl::Shader::isCompiled):
3273         (gl::Shader::getHLSL):
3274         (gl::Shader::addRef):
3275         (gl::Shader::release):
3276         (gl::Shader::getRefCount):
3277         (gl::Shader::isFlaggedForDeletion):
3278         (gl::Shader::flagForDeletion):
3279         (gl::Shader::initializeCompiler):
3280         (gl::Shader::releaseCompiler):
3281         (gl::Shader::parseVaryings):
3282         (gl::Shader::uncompile):
3283         (gl::Shader::compileToHLSL):
3284         (gl::Shader::parseType):
3285         (gl::Shader::compareVarying):
3286         (gl::VertexShader::VertexShader):
3287         (gl::VertexShader::~VertexShader):
3288         (gl::VertexShader::getType):
3289         (gl::VertexShader::uncompile):
3290         (gl::VertexShader::compile):
3291         (gl::VertexShader::getSemanticIndex):
3292         (gl::VertexShader::parseAttributes):
3293         (gl::FragmentShader::FragmentShader):
3294         (gl::FragmentShader::~FragmentShader):
3295         (gl::FragmentShader::getType):
3296         (gl::FragmentShader::compile):
3297         * src/libGLESv2/Shader.h: Added.
3298         (gl::Varying::Varying):
3299         (gl::Attribute::Attribute):
3300         * src/libGLESv2/Texture.cpp: Added.
3301         (gl::ConvertTextureInternalFormat):
3302         (gl::IsTextureFormatRenderable):
3303         (gl::GetTextureUsage):
3304         (gl::MakeValidSize):
3305         (gl::CopyLockableSurfaces):
3306         (gl::Image::Image):
3307         (gl::Image::~Image):
3308         (gl::Image::redefine):
3309         (gl::Image::createSurface):
3310         (gl::Image::lock):
3311         (gl::Image::unlock):
3312         (gl::Image::isRenderableFormat):
3313         (gl::Image::getD3DFormat):
3314         (gl::Image::getSurface):
3315         (gl::Image::setManagedSurface):
3316         (gl::Image::updateSurface):
3317         (gl::Image::loadData):
3318         (gl::Image::loadAlphaData):
3319         (gl::Image::loadAlphaFloatData):
3320         (gl::Image::loadAlphaHalfFloatData):
3321         (gl::Image::loadLuminanceData):
3322         (gl::Image::loadLuminanceFloatData):
3323         (gl::Image::loadLuminanceHalfFloatData):
3324         (gl::Image::loadLuminanceAlphaData):
3325         (gl::Image::loadLuminanceAlphaFloatData):
3326         (gl::Image::loadLuminanceAlphaHalfFloatData):
3327         (gl::Image::loadRGBUByteData):
3328         (gl::Image::loadRGB565Data):
3329         (gl::Image::loadRGBFloatData):
3330         (gl::Image::loadRGBHalfFloatData):
3331         (gl::Image::loadRGBAUByteData):
3332         (gl::Image::loadRGBA4444Data):
3333         (gl::Image::loadRGBA5551Data):
3334         (gl::Image::loadRGBAFloatData):
3335         (gl::Image::loadRGBAHalfFloatData):
3336         (gl::Image::loadBGRAData):
3337         (gl::Image::loadCompressedData):
3338         (gl::Image::copy):
3339         (gl::TextureStorage::TextureStorage):
3340         (gl::TextureStorage::~TextureStorage):
3341         (gl::TextureStorage::isRenderTarget):
3342         (gl::TextureStorage::isManaged):
3343         (gl::TextureStorage::getPool):
3344         (gl::TextureStorage::getUsage):
3345         (gl::TextureStorage::getTextureSerial):
3346         (gl::TextureStorage::issueTextureSerial):
3347         (gl::TextureStorage::getLodOffset):
3348         (gl::Texture::Texture):
3349         (gl::Texture::~Texture):
3350         (gl::Texture::setMinFilter):
3351         (gl::Texture::setMagFilter):
3352         (gl::Texture::setWrapS):
3353         (gl::Texture::setWrapT):
3354         (gl::Texture::setMaxAnisotropy):
3355         (gl::Texture::setUsage):
3356         (gl::Texture::getMinFilter):
3357         (gl::Texture::getMagFilter):
3358         (gl::Texture::getWrapS):
3359         (gl::Texture::getWrapT):
3360         (gl::Texture::getMaxAnisotropy):
3361         (gl::Texture::getUsage):
3362         (gl::Texture::isMipmapFiltered):
3363         (gl::Texture::setImage):
3364         (gl::Texture::setCompressedImage):
3365         (gl::Texture::subImage):
3366         (gl::Texture::subImageCompressed):
3367         (gl::Texture::getTexture):
3368         (gl::Texture::hasDirtyParameters):
3369         (gl::Texture::hasDirtyImages):
3370         (gl::Texture::resetDirty):
3371         (gl::Texture::getTextureSerial):
3372         (gl::Texture::getRenderTargetSerial):
3373         (gl::Texture::isImmutable):
3374         (gl::Texture::getLodOffset):
3375         (gl::Texture::creationLevels):
3376         (gl::Texture::levelCount):
3377         (gl::Texture::getBlitter):
3378         (gl::Texture::copyToRenderTarget):
3379         (gl::TextureStorage2D::TextureStorage2D):
3380         (gl::TextureStorage2D::~TextureStorage2D):
3381         (gl::TextureStorage2D::getSurfaceLevel):
3382         (gl::TextureStorage2D::getBaseTexture):
3383         (gl::TextureStorage2D::getRenderTargetSerial):
3384         (gl::Texture2D::Texture2D):
3385         (gl::Texture2D::~Texture2D):
3386         (gl::Texture2D::addProxyRef):
3387         (gl::Texture2D::releaseProxy):
3388         (gl::Texture2D::getTarget):
3389         (gl::Texture2D::getWidth):
3390    &nb