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