Mass remove all the empty directories
[WebKit-https.git] / Source / ThirdParty / ANGLE / ChangeLog
1 2013-04-10  Benjamin Poulain  <bpoulain@apple.com>
2
3         Mass remove all the empty directories
4
5         Rubberstamped by Ryosuke Niwa.
6
7         * src/libGLESv2/geometry: Removed.
8
9 2013-04-08  Ryosuke Niwa  <rniwa@webkit.org>
10
11         Remove ANGLE.gyp
12         https://bugs.webkit.org/show_bug.cgi?id=114245
13
14         Unreviewed. Just removing an empty directory.
15
16         * ANGLE.gyp: Removed.
17
18 2013-04-04  Martin Robinson  <mrobinson@igalia.com>
19
20         [GTK] Remove the gyp build
21         https://bugs.webkit.org/show_bug.cgi?id=113942
22
23         Reviewed by Gustavo Noronha Silva.
24
25         * ANGLE.gyp/ANGLE.gyp: Removed.
26         * ANGLE.gypi: Removed.
27
28 2013-03-20  Zan Dobersek  <zdobersek@igalia.com>
29
30         [GTK] Build ANGLE sources into a separate library from libWebCore.la
31         https://bugs.webkit.org/show_bug.cgi?id=112778
32
33         Reviewed by Martin Robinson.
34
35         * GNUmakefile.am: Added, sets up the libANGLE.la library.
36
37 2013-03-05  Kenneth Russell  <kbr@google.com>
38
39         Upgrade ANGLE to r1987
40         https://bugs.webkit.org/show_bug.cgi?id=111381
41
42         Reviewed by Dean Jackson.
43
44         * include/GLSLANG/ShaderLang.h:
45         * src/common/version.h:
46         * src/compiler/Compiler.cpp:
47         (TCompiler::TCompiler):
48         (TCompiler::Init):
49         (TCompiler::compile):
50         * src/compiler/ParseHelper.h:
51         (TParseContext):
52         * src/compiler/ShHandle.h:
53         (TCompiler):
54         * src/compiler/ShaderLang.cpp:
55         (ShInitBuiltInResources):
56         * src/compiler/UnfoldShortCircuit.cpp:
57         (sh::UnfoldShortCircuit::visitSelection):
58         * src/compiler/glslang.l:
59         * src/compiler/glslang.y:
60         * src/compiler/glslang_lex.cpp:
61         (glslang_scan):
62         * src/compiler/glslang_tab.cpp:
63              Updated ANGLE to r1987.
64
65 2013-03-01  Martin Robinson  <mrobinson@igalia.com>
66
67         [GTK] Add ANGLE to the GTK+ gyp build
68         https://bugs.webkit.org/show_bug.cgi?id=111128
69
70         Reviewed by Dirk Pranke.
71
72         Add files that build an ANGLE static library for GTK+ using gyp.
73
74         * ANGLE.gyp/ANGLE.gyp: Added.
75         * ANGLE.gypi: Added.
76
77 2013-02-22  Kenneth Russell  <kbr@google.com>
78
79         Mac OS build broken by new ExpressionParser.cpp
80         https://bugs.webkit.org/show_bug.cgi?id=110629
81
82         Unreviewed build fix. Regenerated ExpressionParser with Bison 2.3.
83
84         * src/compiler/preprocessor/ExpressionParser.cpp:
85
86 2013-02-21  Zhenyao Mo  <zmo@google.com>
87
88         Roll ANGLE to r1833
89         https://bugs.webkit.org/show_bug.cgi?id=110513
90
91         Reviewed by Kenneth Russell.
92
93         Upstream ANGLE r1833 includes webkit side local fixes
94         1) r139758 build fix for -Wshorten-64-to-32
95         2) r139665 build fix for uninitialized variables
96
97         After this roll, WebKit side ANGLE is the same as upstream ANGLE r1833, except:
98         1) include/GLSLANG/ShaderLang.h, where "KHR" is removed from include path.
99
100         With this roll, we have EXT_draw_buffers support.
101         
102         * ANGLE.xcodeproj/project.pbxproj:
103         * Target.pri:
104         * include/GLSLANG/ShaderLang.h:
105         * src/common/debug.cpp:
106         * src/common/system.h: Added.
107         * src/common/version.h:
108         * src/compiler/ArrayBoundsClamper.cpp: Removed.
109         * src/compiler/ArrayBoundsClamper.h: Removed.
110         * src/compiler/Compiler.cpp:
111         (TCompiler::TCompiler):
112         (TCompiler::Init):
113         (TCompiler::compile):
114         (TCompiler::getArrayBoundsClamper):
115         (TCompiler::getArrayIndexClampingStrategy):
116         (TCompiler::getBuiltInFunctionEmulator):
117         * src/compiler/DetectDiscontinuity.cpp:
118         (sh::DetectLoopDiscontinuity::traverse):
119         (sh::DetectLoopDiscontinuity::visitLoop):
120         (sh):
121         (sh::DetectLoopDiscontinuity::visitBranch):
122         * src/compiler/DetectDiscontinuity.h:
123         (DetectLoopDiscontinuity):
124         * src/compiler/Initialize.cpp:
125         (InitExtensionBehavior):
126         * src/compiler/Intermediate.cpp:
127         (TIntermConstantUnion::fold):
128         (TIntermTraverser::hash):
129         * src/compiler/MapLongVariableNames.cpp:
130         (LongNameMap::Size):
131         (MapLongVariableNames::mapGlobalLongName):
132         * src/compiler/MapLongVariableNames.h:
133         (LongNameMap):
134         * src/compiler/OutputESSL.cpp:
135         (TOutputESSL::TOutputESSL):
136         * src/compiler/OutputESSL.h:
137         (TOutputESSL):
138         * src/compiler/OutputGLSL.cpp:
139         (TOutputGLSL::TOutputGLSL):
140         * src/compiler/OutputGLSL.h:
141         (TOutputGLSL):
142         * src/compiler/OutputGLSLBase.cpp:
143         (TOutputGLSLBase::TOutputGLSLBase):
144         (TOutputGLSLBase::writeConstantUnion):
145         (TOutputGLSLBase::visitBinary):
146         * src/compiler/OutputGLSLBase.h:
147         (TOutputGLSLBase):
148         * src/compiler/OutputHLSL.cpp:
149         (sh::OutputHLSL::output):
150         (sh::OutputHLSL::visitLoop):
151         (sh::OutputHLSL::writeConstantUnion):
152         * src/compiler/ParseHelper.cpp:
153         (TParseContext::constructorErrorCheck):
154         (PaParseStrings):
155         * src/compiler/ParseHelper.h:
156         * src/compiler/ShHandle.h:
157         (TCompiler):
158         * src/compiler/ShaderLang.cpp:
159         (checkActiveUniformAndAttribMaxLengths):
160         (checkMappedNameMaxLength):
161         (getVariableInfo):
162         (ShInitBuiltInResources):
163         (ShCompile):
164         (ShGetInfo):
165         (ShGetActiveAttrib):
166         (ShGetActiveUniform):
167         (ShGetNameHashingEntry):
168         * src/compiler/SymbolTable.h:
169         (TFunction::getParamCount):
170         (TFunction::getParam):
171         (TSymbolTable::setDefaultPrecision):
172         * src/compiler/TranslatorESSL.cpp:
173         (TranslatorESSL::translate):
174         * src/compiler/TranslatorGLSL.cpp:
175         (TranslatorGLSL::translate):
176         * src/compiler/ValidateLimitations.cpp:
177         (ValidateLimitations::validateFunctionCall):
178         * src/compiler/VariablePacker.cpp:
179         (VariablePacker::GetNumRows):
180         * src/compiler/glslang.h:
181         * src/compiler/glslang.l:
182         * src/compiler/glslang.y:
183         * src/compiler/glslang_lex.cpp:
184         (string_input):
185         (glslang_scan):
186         * src/compiler/glslang_tab.cpp:
187         * src/compiler/preprocessor/ExpressionParser.cpp:
188         * src/compiler/preprocessor/ExpressionParser.y:
189         * src/compiler/preprocessor/Input.cpp:
190         (pp::Input::Input):
191         (pp::Input::read):
192         * src/compiler/preprocessor/Input.h:
193         (Input):
194         (pp::Input::count):
195         (pp::Input::string):
196         (pp::Input::length):
197         (Location):
198         * src/compiler/preprocessor/Preprocessor.cpp:
199         (pp::Preprocessor::init):
200         * src/compiler/preprocessor/Preprocessor.h:
201         (Preprocessor):
202         * src/compiler/preprocessor/Tokenizer.cpp:
203         (pp::Tokenizer::init):
204         * src/compiler/preprocessor/Tokenizer.h:
205         (Tokenizer):
206         * src/compiler/preprocessor/Tokenizer.l:
207         * src/third_party: Added.
208         * src/third_party/compiler: Added.
209         * src/third_party/compiler/ArrayBoundsClamper.cpp: Added.
210         (ArrayBoundsClamper::ArrayBoundsClamper):
211         (ArrayBoundsClamper::SetClampingStrategy):
212         (ArrayBoundsClamper::MarkIndirectArrayBoundsForClamping):
213         (ArrayBoundsClamper::OutputClampingFunctionDefinition):
214         * src/third_party/compiler/ArrayBoundsClamper.h: Added.
215         (ArrayBoundsClamper):
216         (ArrayBoundsClamper::Cleanup):
217         (ArrayBoundsClamper::GetArrayBoundsClampDefinitionNeeded):
218         (ArrayBoundsClamper::SetArrayBoundsClampDefinitionNeeded):
219         * src/third_party/compiler/LICENSE: Added.
220         * src/third_party/compiler/README.angle: Added.
221
222 2013-02-04  David Kilzer  <ddkilzer@apple.com>
223
224         Sort ANGLE Xcode project file.
225
226         * ANGLE.xcodeproj/project.pbxproj:
227
228 2013-01-30  David Kilzer  <ddkilzer@apple.com>
229
230         Remove useless comment from Base.xcconfig
231
232         Rubber-stamped by Mark Rowe.
233
234         * Configurations/Base.xcconfig: Remove comment.
235
236 2013-01-16  Allan Sandfeld Jensen  <allan.jensen@digia.com>
237
238         Doesn't build with GCC 4.7+
239         https://bugs.webkit.org/show_bug.cgi?id=106999
240
241         Reviewed by Csaba Osztrogonác.
242
243         Correct __GNU_C_MINOR__ macro to __GNUC_MINOR__.
244
245         * src/compiler/preprocessor/ExpressionParser.y:
246
247 2013-01-15  David Kilzer  <ddkilzer@apple.com>
248
249         BUILD FIX: Add SUPPORTED_PLATFORMS to Base.xcconfig
250
251         * Configurations/Base.xcconfig: Add SUPPORTED_PLATFORMS so that
252         Xcode knows we can build this project for all three platforms.
253         Previously the Mac OS X SDKs were missing in the scheme picker.
254
255 2013-01-15  David Kilzer  <ddkilzer@apple.com>
256
257         Upstream iOS changes for ANGLE project
258         <http://webkit.org/b/106913>
259
260         Reviewed by Joseph Pecoraro.
261
262         * ANGLE.xcodeproj/project.pbxproj:
263         - Use $(INSTALL_PATH_PREFIX) with CopyFiles build phase paths.
264         - Add iOS.xcconfig to project.
265         * Configurations/ANGLE.xcconfig:
266         - Use INSTALL_PATH_ACTUAL instead of INSTALL_PATH.  (See below.)
267         - Use $(INSTALL_PATH_PREFIX) with PUBLIC_HEADERS_FOLDER_PATH.
268         * Configurations/Base.xcconfig:
269         - Include iOS.xcconfig.
270         - Add per-platform values for GCC_ENABLE_OBJC_GC and
271           GCC_MODEL_TUNING.
272         - Define INSTALL_PATH when building for macosx SDK.
273         * Configurations/iOS.xcconfig: Add.  Note that missing include
274         files are simply ignored without an error by Xcode.
275
276 2013-01-15  David Kilzer  <ddkilzer@apple.com>
277
278         ANGLE should build with -Wshorten-64-to-32
279         <http://webkit.org/b/106798>
280         <http://code.google.com/p/angleproject/issues/detail?id=396>
281
282         Reviewed by Kenneth Russell.
283
284         Most changes below are simply to document issues with #pragma
285         statements per request by upstream.  The change to osinclude.h
286         is the only bug fix, which defines OS_TLSIndex in terms of
287         pthread_key_t instead of unsigned int since pthread_key_t is a
288         64-bit value on 64-bit Mac OS X.
289
290         * Configurations/Base.xcconfig: Enable -Wshorten-64-to-32 by
291         setting GCC_WARN_64_TO_32_BIT_CONVERSION to YES.
292         * src/compiler/Intermediate.cpp:
293         (TIntermTraverser::hash): Add #pragmas for clang to ignore
294         -Wshorten-64-to-32 warning.
295         * src/compiler/MapLongVariableNames.cpp:
296         (LongNameMap::Size): Ditto.
297         * src/compiler/ShaderLang.cpp:
298         (getVariableInfo): Ditto.
299         (ShGetInfo): Ditto.
300         * src/compiler/ValidateLimitations.cpp:
301         (ValidateLimitations::validateFunctionCall): Ditto.
302         * src/compiler/glslang.l: Ditto.
303         * src/compiler/glslang_lex.cpp: Ditto.
304         * src/compiler/osinclude.h: Change type of OS_TLSIndex to
305         pthread_key_t.  Define OS_INVALID_TLS_INDEX by using
306         static_cast<OS_TLSIndex>(-1).
307         * src/compiler/preprocessor/Input.cpp:
308         (pp::Input::Input): Add #pragmas for clang to ignore
309         -Wshorten-64-to-32 warning.
310         * src/compiler/preprocessor/Tokenizer.cpp: Ditto.
311         * src/compiler/preprocessor/Tokenizer.l: Ditto.
312
313 2013-01-14  David Kilzer  <ddkilzer@apple.com>
314
315         Remove nonexistent file in ANGLE Xcode project
316
317         * ANGLE.xcodeproj/project.pbxproj: Remove references to
318         ossource_nspr.cpp which was removed in r139665.
319
320 2013-01-14  Dean Jackson  <dino@apple.com>
321
322         Unreviewed QT build fix.
323
324         * ANGLE.pri:
325
326 2013-01-14  Dean Jackson  <dino@apple.com>
327
328         [ANGLE] Update ANGLE in WebKit
329         https://bugs.webkit.org/show_bug.cgi?id=106274
330
331         Unreviewed attempted build fix.
332
333         Remove the copy files stage. Make khrplatform.h a public header.
334
335         * ANGLE.xcodeproj/project.pbxproj:
336         * include/GLSLANG/ShaderLang.h:
337
338 2013-01-14  Max Vujovic  <mvujovic@adobe.com>
339
340         [ANGLE] Update ANGLE in WebKit
341         https://bugs.webkit.org/show_bug.cgi?id=106274
342
343         Reviewed by Dean Jackson.
344
345         Update ANGLE to r1641.
346
347         ANGLE parsers were generated with Bison 2.3.
348
349         Additionally, perform the following changes to WebKit's ANGLE build system. Note that these
350         changes only apply to WebKit's copy of ANGLE, and do not need to be upstreamed to ANGLE.
351         (a) Remove all files in the libEGL and libGLESv2 directories because nobody is using them. 
352             Add a README in each directory to explain why their contents are not copied over from
353             ANGLE. This simplifies updating ANGLE in the future.
354         (b) Remove the build_angle.xcodeproj file that no-one is using. It appears it was copied
355             over from a gyp build of ANGLE. The Mac build uses ANGLE.xcodeproj.
356         (c) Remove duplicate file entries in ANGLE.xcodeproj. Change its Xcode group structure to
357             match ANGLE's directory structure.
358         (d) Add a Copy Files task to ANGLE.xcodeproj to put the khrplatform.h header in the right
359             place so ShaderLang.h can find it. ShaderLang.h is copied to
360             <BuildDir>/usr/local/include/ANGLE/ShaderLang.h during the Copy Headers task, and it
361             includes "KHR/khrplatform.h". Thus, we need to copy khrplatform.h to
362             <BuildDir>/usr/local/include/ANGLE/KHR/khrplatform.h.
363
364         Additionally, make one build fix in ANGLE source that should be upstreamed to ANGLE:
365         (1) Before this patch in ExpressionParser.y, we toggled the "-Wpragmas" flag so compilers
366             could ignore the pragmas that they didn't understand instead of generating an error.
367             However, clang does not understand "-Wpragmas" itself. Instead, tt understands
368             "-Wunknown-pragmas". Now, instead of trying to temporarily ignore pragmas, we apply the
369             right flags to the right compiler versions. The new code in ExpressionParser.y looks
370             like:
371
372         """
373         // Turn off uninitialized variable warnings triggered by the auto-generated pplval variable.
374         // On gcc 4.7+, The flag is called "-Wmaybe-uninitialized".
375         // On clang and gcc < 4.7, the flag is called "-Wuninitialized".
376         #if !defined(__clang__) && ((__GNUC__ == 4 && __GNU_C_MINOR__ >= 7) || __GNUC__ >= 5)
377         #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
378         #else
379         #pragma GCC diagnostic ignored "-Wuninitialized"
380         #endif
381         """
382
383         * ANGLE.plist:
384         * ANGLE.pri:
385         * ANGLE.xcodeproj/project.pbxproj:
386         * DerivedSources.pri:
387         * Target.pri:
388         * include/GLSLANG/ShaderLang.h:
389         * src/build_angle.xcodeproj/project.pbxproj: Removed.
390         * src/common/angleutils.h:
391         * src/common/debug.cpp:
392         (gl::ScopedPerfEventHelper::ScopedPerfEventHelper):
393         * src/common/debug.h:
394         * src/common/version.h:
395         * src/compiler/Compiler.cpp:
396         (TCompiler::Init):
397         (TCompiler::compile):
398         (TCompiler::clearResults):
399         (TCompiler::collectAttribsUniforms):
400         (TCompiler::enforcePackingRestrictions):
401         * src/compiler/Diagnostics.cpp:
402         (TDiagnostics::TDiagnostics):
403         (TDiagnostics::writeInfo):
404         (TDiagnostics::print):
405         * src/compiler/Diagnostics.h:
406         (TDiagnostics::numErrors):
407         (TDiagnostics::numWarnings):
408         (TDiagnostics):
409         * src/compiler/DirectiveHandler.h:
410         * src/compiler/HashNames.h: Added.
411         * src/compiler/Intermediate.cpp:
412         (TIntermTraverser::hash):
413         * src/compiler/OutputESSL.cpp:
414         (TOutputESSL::TOutputESSL):
415         * src/compiler/OutputESSL.h:
416         (TOutputESSL):
417         * src/compiler/OutputGLSL.cpp:
418         (TOutputGLSL::TOutputGLSL):
419         * src/compiler/OutputGLSL.h:
420         (TOutputGLSL):
421         * src/compiler/OutputGLSLBase.cpp:
422         (TOutputGLSLBase::TOutputGLSLBase):
423         (TOutputGLSLBase::writeVariableType):
424         (TOutputGLSLBase::writeFunctionParameters):
425         (TOutputGLSLBase::writeConstantUnion):
426         (TOutputGLSLBase::visitSymbol):
427         (TOutputGLSLBase::visitBinary):
428         (TOutputGLSLBase::visitAggregate):
429         (TOutputGLSLBase::getTypeName):
430         (TOutputGLSLBase::hashName):
431         (TOutputGLSLBase::hashVariableName):
432         (TOutputGLSLBase::hashFunctionName):
433         * src/compiler/OutputGLSLBase.h:
434         (TOutputGLSLBase):
435         * src/compiler/OutputHLSL.cpp:
436         (sh::OutputHLSL::OutputHLSL):
437         (sh::OutputHLSL::header):
438         (sh::OutputHLSL::visitAggregate):
439         (sh::OutputHLSL::visitBranch):
440         (sh::OutputHLSL::handleExcessiveLoop):
441         * src/compiler/OutputHLSL.h:
442         (OutputHLSL):
443         * src/compiler/ParseHelper.cpp:
444         (TParseContext::error):
445         (TParseContext::nonInitConstErrorCheck):
446         (PaParseStrings):
447         * src/compiler/ParseHelper.h:
448         (TParseContext::TParseContext):
449         (TParseContext):
450         (TParseContext::numErrors):
451         * src/compiler/RenameFunction.h:
452         (RenameFunction::visitAggregate):
453         * src/compiler/ShHandle.h:
454         (TCompiler::getHashFunction):
455         (TCompiler::getNameMap):
456         (TCompiler::getSymbolTable):
457         (TCompiler):
458         * src/compiler/ShaderLang.cpp:
459         (ShInitBuiltInResources):
460         (ShGetInfo):
461         (ShGetNameHashingEntry):
462         * src/compiler/SymbolTable.cpp:
463         (TType::TType):
464         (TType::isStructureContainingArrays):
465         * src/compiler/SymbolTable.h:
466         (TSymbolTable::findBuiltIn):
467         (TSymbolTable):
468         * src/compiler/TranslatorESSL.cpp:
469         (TranslatorESSL::translate):
470         * src/compiler/TranslatorGLSL.cpp:
471         (TranslatorGLSL::translate):
472         * src/compiler/Types.h:
473         (TType):
474         (TPublicType):
475         (TPublicType::setBasic):
476         (TPublicType::setAggregate):
477         (TPublicType::setArray):
478         (TPublicType::isStructureContainingArrays):
479         * src/compiler/UnfoldShortCircuit.cpp:
480         (sh::UnfoldShortCircuit::visitBinary):
481         * src/compiler/VariableInfo.cpp:
482         (getVariableInfo):
483         (getUserDefinedVariableInfo):
484         (TVariableInfo::TVariableInfo):
485         (CollectAttribsUniforms::CollectAttribsUniforms):
486         (CollectAttribsUniforms::visitAggregate):
487         * src/compiler/VariableInfo.h:
488         (TVariableInfo):
489         (CollectAttribsUniforms):
490         * src/compiler/VariablePacker.cpp: Added.
491         (VariablePacker::GetNumComponentsPerRow):
492         (VariablePacker::GetNumRows):
493         (TVariableInfoComparer::operator()):
494         (VariablePacker::makeColumnFlags):
495         (VariablePacker::fillColumns):
496         (VariablePacker::searchColumn):
497         (VariablePacker::CheckVariablesWithinPackingLimits):
498         * src/compiler/VariablePacker.h: Added.
499         (VariablePacker):
500         * src/compiler/VersionGLSL.cpp:
501         (TVersionGLSL::visitAggregate):
502         * src/compiler/VersionGLSL.h:
503         (TVersionGLSL):
504         * src/compiler/glslang.l:
505         * src/compiler/glslang.y:
506         * src/compiler/glslang_lex.cpp:
507         (string_input):
508         (glslang_finalize):
509         (glslang_scan):
510         * src/compiler/glslang_tab.cpp:
511         * src/compiler/intermediate.h:
512         (TIntermTraverser):
513         * src/compiler/osinclude.h:
514         (OS_GetTLSValue):
515         * src/compiler/ossource_nspr.cpp:
516         * src/compiler/preprocessor/DiagnosticsBase.cpp: Added.
517         (pp):
518         (pp::Diagnostics::~Diagnostics):
519         (pp::Diagnostics::report):
520         (pp::Diagnostics::severity):
521         (pp::Diagnostics::message):
522         * src/compiler/preprocessor/DiagnosticsBase.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Diagnostics.h.
523         (pp):
524         (Diagnostics):
525         * src/compiler/preprocessor/DirectiveHandlerBase.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/DirectiveHandlerBase.cpp.
526         (pp):
527         (pp::DirectiveHandler::~DirectiveHandler):
528         * src/compiler/preprocessor/DirectiveHandlerBase.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/DirectiveHandler.h.
529         (pp):
530         (DirectiveHandler):
531         * src/compiler/preprocessor/DirectiveParser.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/DirectiveParser.cpp.
532         (getDirective):
533         (isConditionalDirective):
534         (isEOD):
535         (skipUntilEOD):
536         (isMacroNameReserved):
537         (isMacroPredefined):
538         (pp):
539         (DefinedParser):
540         (pp::DefinedParser::DefinedParser):
541         (pp::DefinedParser::lex):
542         (pp::DirectiveParser::DirectiveParser):
543         (pp::DirectiveParser::lex):
544         (pp::DirectiveParser::parseDirective):
545         (pp::DirectiveParser::parseDefine):
546         (pp::DirectiveParser::parseUndef):
547         (pp::DirectiveParser::parseIf):
548         (pp::DirectiveParser::parseIfdef):
549         (pp::DirectiveParser::parseIfndef):
550         (pp::DirectiveParser::parseElse):
551         (pp::DirectiveParser::parseElif):
552         (pp::DirectiveParser::parseEndif):
553         (pp::DirectiveParser::parseError):
554         (pp::DirectiveParser::parsePragma):
555         (pp::DirectiveParser::parseExtension):
556         (pp::DirectiveParser::parseVersion):
557         (pp::DirectiveParser::parseLine):
558         (pp::DirectiveParser::skipping):
559         (pp::DirectiveParser::parseConditionalIf):
560         (pp::DirectiveParser::parseExpressionIf):
561         (pp::DirectiveParser::parseExpressionIfdef):
562         * src/compiler/preprocessor/DirectiveParser.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/DirectiveParser.h.
563         (pp):
564         (DirectiveParser):
565         (ConditionalBlock):
566         (pp::DirectiveParser::ConditionalBlock::ConditionalBlock):
567         * src/compiler/preprocessor/ExpressionParser.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/ExpressionParser.cpp.
568         (yysyntax_error):
569         (yylex):
570         (yyerror):
571         (pp):
572         (pp::ExpressionParser::ExpressionParser):
573         (pp::ExpressionParser::parse):
574         * src/compiler/preprocessor/ExpressionParser.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/ExpressionParser.h.
575         (pp):
576         (ExpressionParser):
577         * src/compiler/preprocessor/ExpressionParser.y: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/ExpressionParser.y.
578         * src/compiler/preprocessor/Input.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Input.cpp.
579         (pp):
580         (pp::Input::Input):
581         (pp::Input::read):
582         * src/compiler/preprocessor/Input.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Input.h.
583         (pp):
584         (Input):
585         (pp::Input::count):
586         (pp::Input::string):
587         (pp::Input::length):
588         (Location):
589         (pp::Input::Location::Location):
590         (pp::Input::readLoc):
591         * src/compiler/preprocessor/Lexer.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Lexer.cpp.
592         (pp):
593         (pp::Lexer::~Lexer):
594         * src/compiler/preprocessor/Lexer.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Lexer.h.
595         (pp):
596         (Lexer):
597         * src/compiler/preprocessor/Macro.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Macro.cpp.
598         (pp):
599         (pp::Macro::equals):
600         * src/compiler/preprocessor/Macro.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Macro.h.
601         (pp):
602         (pp::Macro::Macro):
603         (Macro):
604         * src/compiler/preprocessor/MacroExpander.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/MacroExpander.cpp.
605         (pp):
606         (TokenLexer):
607         (pp::TokenLexer::TokenLexer):
608         (pp::TokenLexer::lex):
609         (pp::MacroExpander::MacroExpander):
610         (pp::MacroExpander::~MacroExpander):
611         (pp::MacroExpander::lex):
612         (pp::MacroExpander::getToken):
613         (pp::MacroExpander::ungetToken):
614         (pp::MacroExpander::isNextTokenLeftParen):
615         (pp::MacroExpander::pushMacro):
616         (pp::MacroExpander::popMacro):
617         (pp::MacroExpander::expandMacro):
618         (pp::MacroExpander::collectMacroArgs):
619         (pp::MacroExpander::replaceMacroParams):
620         * src/compiler/preprocessor/MacroExpander.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/MacroExpander.h.
621         (pp):
622         (MacroExpander):
623         (MacroContext):
624         (pp::MacroExpander::MacroContext::MacroContext):
625         (pp::MacroExpander::MacroContext::empty):
626         (pp::MacroExpander::MacroContext::get):
627         (pp::MacroExpander::MacroContext::unget):
628         * src/compiler/preprocessor/Preprocessor.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Preprocessor.cpp.
629         (pp):
630         (PreprocessorImpl):
631         (pp::PreprocessorImpl::PreprocessorImpl):
632         (pp::Preprocessor::Preprocessor):
633         (pp::Preprocessor::~Preprocessor):
634         (pp::Preprocessor::init):
635         (pp::Preprocessor::predefineMacro):
636         (pp::Preprocessor::lex):
637         * src/compiler/preprocessor/Preprocessor.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Preprocessor.h.
638         (pp):
639         (Preprocessor):
640         * src/compiler/preprocessor/SourceLocation.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/SourceLocation.h.
641         (pp):
642         (pp::SourceLocation::SourceLocation):
643         (SourceLocation):
644         (pp::SourceLocation::equals):
645         (pp::operator==):
646         (pp::operator!=):
647         * src/compiler/preprocessor/Token.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Token.cpp.
648         (pp):
649         (pp::Token::reset):
650         (pp::Token::equals):
651         (pp::Token::setAtStartOfLine):
652         (pp::Token::setHasLeadingSpace):
653         (pp::Token::setExpansionDisabled):
654         (pp::Token::iValue):
655         (pp::Token::uValue):
656         (pp::Token::fValue):
657         (pp::operator<<):
658         * src/compiler/preprocessor/Token.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Token.h.
659         (pp):
660         (pp::Token::Token):
661         (Token):
662         (pp::Token::atStartOfLine):
663         (pp::Token::hasLeadingSpace):
664         (pp::Token::expansionDisabled):
665         (pp::operator==):
666         (pp::operator!=):
667         * src/compiler/preprocessor/Tokenizer.cpp: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Tokenizer.cpp.
668         (yy_buffer_state):
669         (yy_trans_info):
670         (yyguts_t):
671         (yy_get_previous_state):
672         (yy_try_NUL_trans):
673         (input):
674         (pprestart):
675         (pp_switch_to_buffer):
676         (pp_load_buffer_state):
677         (pp_create_buffer):
678         (pp_delete_buffer):
679         (pp_init_buffer):
680         (pp_flush_buffer):
681         (pppush_buffer_state):
682         (pppop_buffer_state):
683         (ppensure_buffer_stack):
684         (pp_scan_buffer):
685         (pp_scan_string):
686         (pp_scan_bytes):
687         (yy_fatal_error):
688         (ppget_extra):
689         (ppget_lineno):
690         (ppget_column):
691         (ppget_in):
692         (ppget_out):
693         (ppget_leng):
694         (ppget_text):
695         (ppset_extra):
696         (ppset_lineno):
697         (ppset_column):
698         (ppset_in):
699         (ppset_out):
700         (ppget_debug):
701         (ppset_debug):
702         (ppget_lval):
703         (ppset_lval):
704         (ppget_lloc):
705         (ppset_lloc):
706         (pplex_init):
707         (pplex_init_extra):
708         (yy_init_globals):
709         (pplex_destroy):
710         (yy_flex_strncpy):
711         (yy_flex_strlen):
712         (ppalloc):
713         (pprealloc):
714         (ppfree):
715         (pp):
716         (pp::Tokenizer::Tokenizer):
717         (pp::Tokenizer::~Tokenizer):
718         (pp::Tokenizer::init):
719         (pp::Tokenizer::setFileNumber):
720         (pp::Tokenizer::setLineNumber):
721         (pp::Tokenizer::lex):
722         (pp::Tokenizer::initScanner):
723         (pp::Tokenizer::destroyScanner):
724         * src/compiler/preprocessor/Tokenizer.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Tokenizer.h.
725         (pp):
726         (Tokenizer):
727         (Context):
728         * src/compiler/preprocessor/Tokenizer.l: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/Tokenizer.l.
729         * src/compiler/preprocessor/atom.c: Removed.
730         * src/compiler/preprocessor/atom.h: Removed.
731         * src/compiler/preprocessor/compile.h: Removed.
732         * src/compiler/preprocessor/cpp.c: Removed.
733         * src/compiler/preprocessor/cpp.h: Removed.
734         * src/compiler/preprocessor/cppstruct.c: Removed.
735         * src/compiler/preprocessor/generate_parser.sh: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/generate_parser.sh.
736         * src/compiler/preprocessor/memory.c: Removed.
737         * src/compiler/preprocessor/memory.h: Removed.
738         * src/compiler/preprocessor/new/DiagnosticsBase.cpp: Removed.
739         * src/compiler/preprocessor/new/new_file.cpp: Removed.
740         * src/compiler/preprocessor/new/new_file2.cpp: Removed.
741         * src/compiler/preprocessor/new/preprocessor.vcproj: Removed.
742         * src/compiler/preprocessor/numeric_lex.h: Added.
743         (pp):
744         (pp::numeric_base_int):
745         (pp::numeric_lex_int):
746         (pp::numeric_lex_float):
747         * src/compiler/preprocessor/parser.h: Removed.
748         * src/compiler/preprocessor/pp_utils.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/preprocessor/new/pp_utils.h.
749         * src/compiler/preprocessor/preprocess.h: Removed.
750         * src/compiler/preprocessor/scanner.c: Removed.
751         * src/compiler/preprocessor/scanner.h: Removed.
752         * src/compiler/preprocessor/slglobals.h: Removed.
753         * src/compiler/preprocessor/symbols.c: Removed.
754         * src/compiler/preprocessor/symbols.h: Removed.
755         * src/compiler/preprocessor/tokens.c: Removed.
756         * src/compiler/preprocessor/tokens.h: Removed.
757         * src/libEGL/Config.cpp: Removed.
758         * src/libEGL/Config.h: Removed.
759         * src/libEGL/Display.cpp: Removed.
760         * src/libEGL/Display.h: Removed.
761         * src/libEGL/README: Added.
762         * src/libEGL/Surface.cpp: Removed.
763         * src/libEGL/Surface.h: Removed.
764         * src/libEGL/libEGL.cpp: Removed.
765         * src/libEGL/libEGL.def: Removed.
766         * src/libEGL/libEGL.rc: Removed.
767         * src/libEGL/libEGL.vcproj: Removed.
768         * src/libEGL/main.cpp: Removed.
769         * src/libEGL/main.h: Removed.
770         * src/libEGL/resource.h: Removed.
771         * src/libGLESv2/Blit.cpp: Removed.
772         * src/libGLESv2/Blit.h: Removed.
773         * src/libGLESv2/Buffer.cpp: Removed.
774         * src/libGLESv2/Buffer.h: Removed.
775         * src/libGLESv2/Context.cpp: Removed.
776         * src/libGLESv2/Context.h: Removed.
777         * src/libGLESv2/Fence.cpp: Removed.
778         * src/libGLESv2/Fence.h: Removed.
779         * src/libGLESv2/Framebuffer.cpp: Removed.
780         * src/libGLESv2/Framebuffer.h: Removed.
781         * src/libGLESv2/HandleAllocator.cpp: Removed.
782         * src/libGLESv2/HandleAllocator.h: Removed.
783         * src/libGLESv2/IndexDataManager.cpp: Removed.
784         * src/libGLESv2/IndexDataManager.h: Removed.
785         * src/libGLESv2/Program.cpp: Removed.
786         * src/libGLESv2/Program.h: Removed.
787         * src/libGLESv2/ProgramBinary.cpp: Removed.
788         * src/libGLESv2/ProgramBinary.h: Removed.
789         * src/libGLESv2/Query.cpp: Removed.
790         * src/libGLESv2/Query.h: Removed.
791         * src/libGLESv2/README: Added.
792         * src/libGLESv2/Renderbuffer.cpp: Removed.
793         * src/libGLESv2/Renderbuffer.h: Removed.
794         * src/libGLESv2/ResourceManager.cpp: Removed.
795         * src/libGLESv2/ResourceManager.h: Removed.
796         * src/libGLESv2/Shader.cpp: Removed.
797         * src/libGLESv2/Shader.h: Removed.
798         * src/libGLESv2/Texture.cpp: Removed.
799         * src/libGLESv2/Texture.h: Removed.
800         * src/libGLESv2/VertexDataManager.cpp: Removed.
801         * src/libGLESv2/VertexDataManager.h: Removed.
802         * src/libGLESv2/libGLESv2.cpp: Removed.
803         * src/libGLESv2/libGLESv2.def: Removed.
804         * src/libGLESv2/libGLESv2.rc: Removed.
805         * src/libGLESv2/libGLESv2.vcproj: Removed.
806         * src/libGLESv2/main.cpp: Removed.
807         * src/libGLESv2/main.h: Removed.
808         * src/libGLESv2/mathutil.h: Removed.
809         * src/libGLESv2/resource.h: Removed.
810         * src/libGLESv2/utilities.cpp: Removed.
811         * src/libGLESv2/utilities.h: Removed.
812         * src/libGLESv2/vertexconversion.h: Removed.
813
814 2012-12-18  Max Vujovic  <mvujovic@adobe.com>
815
816         [ANGLE] Use of uninitialized memory in ArrayBoundsClamper
817         https://bugs.webkit.org/show_bug.cgi?id=105218
818
819         Reviewed by Dean Jackson.
820
821         TIntermBinary::addIndexClamp is uninitialized when the compile flag 
822         SH_CLAMP_INDIRECT_ARRAY_BOUNDS is not set. Then, addIndexClamp is used in OutputGLSLBase. 
823         CSS Shaders needs to do a first validation pass without the SH_CLAMP_INDIRECT_ARRAY_BOUNDS 
824         flag and its effects. However, sometimes addIndexClamp is true, which inserts clamping code
825         that causes a shader to fail compilation at the WebGL level.
826
827         * src/compiler/intermediate.h:
828         (TIntermBinary::TIntermBinary):
829
830 2012-10-29  Anders Carlsson  <andersca@apple.com>
831
832         Build WebKit as C++11 on Mac
833         https://bugs.webkit.org/show_bug.cgi?id=100720
834
835         Reviewed by Daniel Bates.
836
837         * Configurations/Base.xcconfig:
838         Add CLANG_CXX_LANGUAGE_STANDARD=gnu++0x.
839
840 2012-10-28  Mark Rowe  <mrowe@apple.com>
841
842         Simplify Xcode configuration settings that used to vary between OS versions.
843
844         Reviewed by Dan Bernstein.
845
846         * Configurations/Base.xcconfig:
847         * Configurations/DebugRelease.xcconfig:
848
849 2012-10-28  Mark Rowe  <mrowe@apple.com>
850
851         Remove references to unsupported OS and Xcode versions.
852
853         Reviewed by Anders Carlsson.
854
855         * Configurations/Base.xcconfig:
856         * Configurations/CompilerVersion.xcconfig: Removed.
857         * Configurations/DebugRelease.xcconfig:
858
859 2012-10-27  Dan Bernstein  <mitz@apple.com>
860
861         REAL_PLATFORM_NAME build setting is no longer needed
862         https://bugs.webkit.org/show_bug.cgi?id=100587
863
864         Reviewed by Mark Rowe.
865
866         Removed the definition of REAL_PLATFORM_NAME and replaced references to it with references
867         to PLATFORM_NAME.
868
869         * Configurations/Base.xcconfig:
870         * Configurations/CompilerVersion.xcconfig:
871
872 2012-10-18  Dean Jackson  <dino@apple.com>
873
874         Shader translator needs option to clamp uniform array accesses in vertex shaders
875         https://bugs.webkit.org/show_bug.cgi?id=98977
876         https://code.google.com/p/angleproject/issues/detail?id=49
877
878         Reviewed by Alok Priyadarshi and Ken Russell.
879
880         WebGL does not allow GLSL code to index a uniform array outside its bounds. Add a
881         flag to the ANGLE compiler to insert clamp statements around such indexing.
882         Since it is possible to access vec2/3/4 and mat2/3/4 components by array indexing,
883         they must be similarly clamped.
884
885         Unfortunately, it is currently not possible to always determine that the indexing is
886         operating on a uniform variable. For example, suppose we have "uniform mat4 a". ANGLE
887         is currently not able to tell us that the rvalue of "a[0]" is a uniform, just that
888         it has a size of 4. Therefore, the clamping is done on all indirect array indexing.
889
890         This will have a performance impact. Future enhancements may be able to determine
891         cases where the clamping is not necessary. Currently only direct indexing is skipped
892         (i.e. looking up a value using a constant index).
893
894         The clamp insertion is only performed on the GLSL output. Direct3D already guarantees
895         that out-of-bounds uniform array access returns a zero value.
896
897         * ANGLE.xcodeproj/project.pbxproj:
898         * Target.pri:
899         * include/GLSLANG/ShaderLang.h: New compiler option.
900         * src/compiler/ArrayBoundsClamper.cpp: Added.
901         (ArrayBoundsClamper::ArrayBoundsClamper):
902         (ArrayBoundsClamper::OutputClampingFunctionDefinition): Injects a clamping function for integers into GLSL source.
903         (ArrayBoundsClamper::MarkIndirectArrayBoundsForClamping): Examines the AST looking for non-direct array indexing.
904         * src/compiler/ArrayBoundsClamper.h: Added.
905         (ArrayBoundsClamper):
906         (ArrayBoundsClamper::GetArrayBoundsClampDefinitionNeeded):
907         (ArrayBoundsClamper::SetArrayBoundsClampDefinitionNeeded): Marks the object as needing to output the clamping function.
908         (ArrayBoundsClamper::Cleanup): Resets the state so that subsequent runs start fresh.
909         * src/compiler/Compiler.cpp:
910         (TCompiler::compile): Run the clamping code if the compile option was set.
911         (TCompiler::clearResults):
912         (TCompiler::getArrayBoundsClamper):
913         * src/compiler/OutputGLSLBase.cpp:
914         (TOutputGLSLBase::visitBinary): If the expression has been flagged, insert an appropriate "clamp" statement.
915         * src/compiler/ShHandle.h:
916         (TCompiler):
917         * src/compiler/TranslatorESSL.cpp:
918         (TranslatorESSL::translate):
919         * src/compiler/TranslatorGLSL.cpp:
920         (TranslatorGLSL::translate):
921         * src/compiler/intermOut.cpp:
922         (TType::getCompleteString): Add array size to intermediate tree output.
923         * src/compiler/intermediate.h:
924         (TIntermBinary::setAddIndexClamp): New flag for indicating a binary expression needs clamping.
925         (TIntermBinary::getAddIndexClamp):
926         (TIntermBinary):
927
928 2012-09-13  Mark Rowe  <mrowe@apple.com>
929
930         <rdar://problem/12255720> Fix the build with newer Clang
931
932         Reviewed by Sam Weinig.
933         
934         Clang generates a warning about the inclusion of trailing commas on the final enum item as it's apparently
935         a C++11 extension. Remove them.
936         
937         * src/compiler/BaseTypes.h:
938         * src/compiler/ExtensionBehavior.h:
939         * src/compiler/ParseHelper.cpp:
940         (TParseContext::parseVectorFields):
941         * src/compiler/intermediate.h:
942
943 2012-09-13  Simon Hausmann  <simon.hausmann@nokia.com>
944
945         [Qt] The ANGLE build on Windows breaks with GnuWin32's flex because it is too old
946         https://bugs.webkit.org/show_bug.cgi?id=96359
947
948         Reviewed by Tor Arne Vestbø.
949
950         GnuWin32's flex is 2.5.4 and that is too old for ANGLE's preprocessor
951         lexer. The only viable alternative I could find on Windows that provides
952         binaries is the winflexbison distribution (http://sourceforge.net/projects/winflexbison/),
953         so let's use that one instead.
954
955         * DerivedSources.pri:
956
957 2012-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
958
959         [Qt] Build on Windows requires bison/flex in PATH
960         https://bugs.webkit.org/show_bug.cgi?id=96358
961
962         Reviewed by Tor Arne Vestbø.
963
964         Use MAKEFILE_NOOP_COMMAND instead of the \n\t trick to generate a dummy command. Otherwise
965         the PATH prepend trick will break because it generates a command line along the lines of
966         (set PATH="...") && with just that trailing ampersand pair.
967
968         * DerivedSources.pri:
969
970 2012-09-10  Dean Jackson  <dino@apple.com>
971
972         [Apple] Install plist for Apple Open Source build system
973         https://bugs.webkit.org/show_bug.cgi?id=96345
974
975         Reviewed by Mark Rowe.
976
977         Apple's build system requires a couple of files that describe where
978         the 3rd party Open Source library came from, and what license it
979         uses. These files are copied into /usr/local when the project is
980         being installed.
981
982         * ANGLE.plist: Added.
983         * ANGLE.txt: Added.
984         * ANGLE.xcodeproj/project.pbxproj:
985
986 2012-09-06  Andras Becsi  <andras.becsi@nokia.com>
987
988         [ANGLE] Fix the build with gcc 4.7
989         https://bugs.webkit.org/show_bug.cgi?id=95989
990
991         Reviewed by Csaba Osztrogonác.
992
993         The build fails because of a bogus warning about the auto-generated
994         pplval variable. Unfortunately the warning is called -Wuninitialized
995         in gcc 4.6 and -Wmaybe-uninitialized in gcc 4.7 thus we also need to
996         ignore unknown pragmas not to break the build with compilers that do
997         not recognize these options.
998
999         * src/compiler/preprocessor/new/ExpressionParser.y:
1000
1001 2012-09-06  Simon Hausmann  <simon.hausmann@nokia.com>
1002
1003         [Qt] Fix build with ANGLE on platforms that provide EGL/GLESv2
1004         https://bugs.webkit.org/show_bug.cgi?id=95965
1005
1006         Reviewed by Tor Arne Vestbø.
1007
1008         Add build rules to build ANGLE as a static library for the Qt port.
1009
1010         * ANGLE.pri: Added.
1011         * ANGLE.pro: Added.
1012         * DerivedSources.pri: Added.
1013         * Target.pri: Added.
1014
1015 2012-08-24  Joshua Netterfield  <jnetterfield@rim.com>
1016
1017         [CSS Shaders] [ANGLE] RenameFunction::RenameFunction may store references to temporary string
1018         https://bugs.webkit.org/show_bug.cgi?id=94736
1019         http://code.google.com/p/angleproject/issues/detail?id=360
1020
1021         Reviewed by George Staikos.
1022
1023         When RenameFunction::RenameFunction(const TString& oldFunctionName, const TString&
1024         newFunctionName) is called from TCompiler::rewriteCSSShader(TIntermNode*), references to
1025         the temporaries oldFunctionName and newFunctionName are stored as mOldFunctionName and
1026         mNewFunctionName. This results in undefined behaviour in visitAggregate.
1027
1028         This same patch is being applied in upstream ANGLE, and is needed for CSS Shader
1029         sanitization.
1030
1031         * src/compiler/RenameFunction.h:
1032         (RenameFunction::visitAggregate):
1033         (RenameFunction):
1034
1035 2012-07-18  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>
1036
1037         [Qt] Buildfix after r122870.
1038         https://bugs.webkit.org/show_bug.cgi?id=89039
1039
1040         Reviewed by Csaba Osztrogonác
1041
1042         * src/compiler/preprocessor/new/MacroExpander.cpp:
1043         (pp::MacroExpander::ungetToken):
1044
1045 2012-07-17  Max Vujovic  <mvujovic@adobe.com>
1046
1047         Update ANGLE in WebKit
1048         https://bugs.webkit.org/show_bug.cgi?id=89039
1049
1050         Reviewed by Dean Jackson and Mark Rowe.
1051
1052         Update ANGLE to r1170, with the following modifications:
1053
1054         (1) Use Bison 2.3 instead of Bison 2.4.2 to generate ExpressionParser.cpp and
1055         glslang_tab.cpp. I had to modify ExpressionParser.y to make it compatible with Bison
1056         2.3. The changes have been contributed back to ANGLE in r1224.
1057
1058         (2) Continue to recognize QNX as POSIX in ANGLE. This has been contributed back to ANGLE
1059         in r1223.
1060
1061         (3) Rename ANGLE/src/compiler/preprocessor/new/Diagnostic.cpp to DiagnosticBase.cpp.
1062         Rename ANGLE/src/compiler/preprocessor/new/DirectiveHandler.cpp to DirectiveHandlerBase.cpp.
1063
1064         With the introduction of ANGLE's new preprocessor, there were two files named Diagnostic.cpp
1065         in ANGLE under different folders. This caused problems on the QT build when their object
1066         files, both named Diagnostic.o, tried to go in the same folder. Renaming one of them to
1067         DiagnosticBase.cpp avoids this conflict. The same situation occurred with
1068         DirectiveHandler.cpp. I will work on contributing this change back to ANGLE for future
1069         updates.
1070
1071         (4) Add the following lines to glslang.y and ExpressionParser.y:
1072         #define YYENABLE_NLS 0
1073         #define YYLTYPE_IS_TRIVIAL 1
1074
1075         Bison 2.3 doesn't first check that these macros are defined before reading their value,
1076         which causes the QT build to fail.
1077
1078         We work around this issue in the same way in CSSGrammar.y.
1079
1080         I will work on contributing this change back to ANGLE.
1081
1082         * ANGLE.xcodeproj/project.pbxproj:
1083         * include/GLES2/gl2ext.h:
1084         * include/GLSLANG/ShaderLang.h:
1085         * src/build_angle.xcodeproj/project.pbxproj:
1086         * src/common/angleutils.h:
1087         * src/common/debug.cpp:
1088         (gl):
1089         (gl::output):
1090         (gl::trace):
1091         (gl::perfActive):
1092         (gl::ScopedPerfEventHelper::ScopedPerfEventHelper):
1093         (gl::ScopedPerfEventHelper::~ScopedPerfEventHelper):
1094         * src/common/version.h:
1095         * src/compiler/BuiltInFunctionEmulator.cpp:
1096         (BuiltInFunctionEmulator::IdentifyFunction):
1097         * src/compiler/BuiltInFunctionEmulator.h:
1098         * src/compiler/Compiler.cpp:
1099         (isWebGLBasedSpec):
1100         (TCompiler::compile):
1101         (TCompiler::rewriteCSSShader):
1102         (TCompiler::enforceTimingRestrictions):
1103         (TCompiler::enforceFragmentShaderTimingRestrictions):
1104         (TCompiler::enforceVertexShaderTimingRestrictions):
1105         * src/compiler/DetectDiscontinuity.cpp: Added.
1106         (sh::DetectLoopDiscontinuity::traverse):
1107         (sh):
1108         (sh::DetectLoopDiscontinuity::visitBranch):
1109         (sh::DetectLoopDiscontinuity::visitAggregate):
1110         (sh::containsLoopDiscontinuity):
1111         (sh::DetectGradientOperation::traverse):
1112         (sh::DetectGradientOperation::visitUnary):
1113         (sh::DetectGradientOperation::visitAggregate):
1114         (sh::containsGradientOperation):
1115         * src/compiler/DetectDiscontinuity.h: Added.
1116         (sh):
1117         (DetectLoopDiscontinuity):
1118         (DetectGradientOperation):
1119         * src/compiler/Diagnostics.cpp: Added.
1120         (TDiagnostics::TDiagnostics):
1121         (TDiagnostics::~TDiagnostics):
1122         (TDiagnostics::writeInfo):
1123         (TDiagnostics::writeDebug):
1124         (TDiagnostics::print):
1125         * src/compiler/Diagnostics.h: Added.
1126         (TDiagnostics):
1127         (TDiagnostics::infoSink):
1128         * src/compiler/DirectiveHandler.cpp: Added.
1129         (getBehavior):
1130         (TDirectiveHandler::TDirectiveHandler):
1131         (TDirectiveHandler::~TDirectiveHandler):
1132         (TDirectiveHandler::handleError):
1133         (TDirectiveHandler::handlePragma):
1134         (TDirectiveHandler::handleExtension):
1135         (TDirectiveHandler::handleVersion):
1136         * src/compiler/DirectiveHandler.h: Added.
1137         (TDirectiveHandler):
1138         (TDirectiveHandler::pragma):
1139         (TDirectiveHandler::extensionBehavior):
1140         * src/compiler/ExtensionBehavior.h:
1141         (getBehaviorString):
1142         * src/compiler/Initialize.cpp:
1143         (BuiltInConstants):
1144         (TBuiltIns::initialize):
1145         (IdentifyBuiltIns):
1146         * src/compiler/InitializeParseContext.cpp: Added.
1147         (InitializeParseContextIndex):
1148         (FreeParseContextIndex):
1149         (InitializeGlobalParseContext):
1150         (FreeParseContext):
1151         (GetGlobalParseContext):
1152         * src/compiler/InitializeParseContext.h:
1153         (TThreadParseContextRec):
1154         * src/compiler/Intermediate.cpp:
1155         (TIntermediate::addSelection):
1156         * src/compiler/MapLongVariableNames.cpp:
1157         * src/compiler/OutputHLSL.cpp:
1158         (sh::str):
1159         (sh::OutputHLSL::OutputHLSL):
1160         (sh::OutputHLSL::~OutputHLSL):
1161         (sh::OutputHLSL::output):
1162         (sh::OutputHLSL::header):
1163         (sh::OutputHLSL::visitBinary):
1164         (sh::OutputHLSL::visitUnary):
1165         (sh::OutputHLSL::visitAggregate):
1166         (sh::OutputHLSL::visitSelection):
1167         (sh::OutputHLSL::visitLoop):
1168         (sh::OutputHLSL::traverseStatements):
1169         (sh):
1170         (sh::OutputHLSL::handleExcessiveLoop):
1171         (sh::OutputHLSL::typeString):
1172         (sh::OutputHLSL::addConstructor):
1173         (sh::OutputHLSL::decorateField):
1174         * src/compiler/OutputHLSL.h:
1175         (sh):
1176         (OutputHLSL):
1177         * src/compiler/ParseHelper.cpp:
1178         (TParseContext::parseVectorFields):
1179         (TParseContext::parseMatrixFields):
1180         (TParseContext::error):
1181         (TParseContext::warning):
1182         (TParseContext::trace):
1183         (TParseContext::assignError):
1184         (TParseContext::unaryOpError):
1185         (TParseContext::binaryOpError):
1186         (TParseContext::precisionErrorCheck):
1187         (TParseContext::lValueErrorCheck):
1188         (TParseContext::constErrorCheck):
1189         (TParseContext::integerErrorCheck):
1190         (TParseContext::globalErrorCheck):
1191         (TParseContext::reservedErrorCheck):
1192         (TParseContext::constructorErrorCheck):
1193         (TParseContext::voidErrorCheck):
1194         (TParseContext::boolErrorCheck):
1195         (TParseContext::samplerErrorCheck):
1196         (TParseContext::structQualifierErrorCheck):
1197         (TParseContext::parameterSamplerErrorCheck):
1198         (TParseContext::arraySizeErrorCheck):
1199         (TParseContext::arrayQualifierErrorCheck):
1200         (TParseContext::arrayTypeErrorCheck):
1201         (TParseContext::arrayErrorCheck):
1202         (TParseContext::arraySetMaxSize):
1203         (TParseContext::nonInitConstErrorCheck):
1204         (TParseContext::nonInitErrorCheck):
1205         (TParseContext::paramErrorCheck):
1206         (TParseContext::extensionErrorCheck):
1207         (TParseContext::supportsExtension):
1208         (TParseContext::handleExtensionDirective):
1209         (TParseContext::handlePragmaDirective):
1210         (TParseContext::findFunction):
1211         (TParseContext::executeInitializer):
1212         (TParseContext::constructBuiltIn):
1213         (TParseContext::constructStruct):
1214         (TParseContext::addConstVectorNode):
1215         (TParseContext::addConstMatrixNode):
1216         (TParseContext::addConstArrayNode):
1217         (TParseContext::addConstStruct):
1218         (TParseContext::enterStructDeclaration):
1219         (TParseContext::structNestingErrorCheck):
1220         (PaParseStrings):
1221         * src/compiler/ParseHelper.h:
1222         (TParseContext::TParseContext):
1223         (TParseContext):
1224         (TParseContext::infoSink):
1225         (TParseContext::extensionBehavior):
1226         (TParseContext::pragma):
1227         * src/compiler/PoolAlloc.cpp:
1228         (TAllocation::checkGuardBlock):
1229         * src/compiler/Pragma.h: Added.
1230         (TPragma):
1231         (TPragma::TPragma):
1232         * src/compiler/RenameFunction.h: Added.
1233         (RenameFunction):
1234         (RenameFunction::RenameFunction):
1235         (RenameFunction::visitAggregate):
1236         * src/compiler/ShHandle.h:
1237         (TCompiler):
1238         * src/compiler/ShaderLang.cpp:
1239         (getVariableInfo):
1240         * src/compiler/SymbolTable.cpp:
1241         (TType::buildMangledName):
1242         * src/compiler/TranslatorHLSL.cpp:
1243         * src/compiler/UnfoldSelect.cpp: Removed.
1244         * src/compiler/UnfoldSelect.h: Removed.
1245         * src/compiler/UnfoldShortCircuit.cpp: Added.
1246         (sh::UnfoldShortCircuit::UnfoldShortCircuit):
1247         (sh):
1248         (sh::UnfoldShortCircuit::traverse):
1249         (sh::UnfoldShortCircuit::visitBinary):
1250         (sh::UnfoldShortCircuit::visitSelection):
1251         (sh::UnfoldShortCircuit::visitLoop):
1252         (sh::UnfoldShortCircuit::getNextTemporaryIndex):
1253         * src/compiler/UnfoldShortCircuit.h: Added.
1254         (sh):
1255         (UnfoldShortCircuit):
1256         * src/compiler/ValidateLimitations.cpp:
1257         * src/compiler/debug.cpp:
1258         * src/compiler/depgraph: Added.
1259         * src/compiler/depgraph/DependencyGraph.cpp: Added.
1260         (TDependencyGraph::TDependencyGraph):
1261         (TDependencyGraph::~TDependencyGraph):
1262         (TDependencyGraph::createArgument):
1263         (TDependencyGraph::createFunctionCall):
1264         (TDependencyGraph::getOrCreateSymbol):
1265         (TDependencyGraph::createSelection):
1266         (TDependencyGraph::createLoop):
1267         (TDependencyGraph::createLogicalOp):
1268         (TGraphLogicalOp::getOpString):
1269         * src/compiler/depgraph/DependencyGraph.h: Added.
1270         (TGraphNode):
1271         (TGraphNode::TGraphNode):
1272         (TGraphNode::~TGraphNode):
1273         (TGraphParentNode):
1274         (TGraphParentNode::TGraphParentNode):
1275         (TGraphParentNode::~TGraphParentNode):
1276         (TGraphParentNode::addDependentNode):
1277         (TGraphArgument):
1278         (TGraphArgument::TGraphArgument):
1279         (TGraphArgument::~TGraphArgument):
1280         (TGraphArgument::getIntermFunctionCall):
1281         (TGraphArgument::getArgumentNumber):
1282         (TGraphFunctionCall):
1283         (TGraphFunctionCall::TGraphFunctionCall):
1284         (TGraphFunctionCall::~TGraphFunctionCall):
1285         (TGraphFunctionCall::getIntermFunctionCall):
1286         (TGraphSymbol):
1287         (TGraphSymbol::TGraphSymbol):
1288         (TGraphSymbol::~TGraphSymbol):
1289         (TGraphSymbol::getIntermSymbol):
1290         (TGraphSelection):
1291         (TGraphSelection::TGraphSelection):
1292         (TGraphSelection::~TGraphSelection):
1293         (TGraphSelection::getIntermSelection):
1294         (TGraphLoop):
1295         (TGraphLoop::TGraphLoop):
1296         (TGraphLoop::~TGraphLoop):
1297         (TGraphLoop::getIntermLoop):
1298         (TGraphLogicalOp):
1299         (TGraphLogicalOp::TGraphLogicalOp):
1300         (TGraphLogicalOp::~TGraphLogicalOp):
1301         (TGraphLogicalOp::getIntermLogicalOp):
1302         (TDependencyGraph):
1303         (TDependencyGraph::begin):
1304         (TDependencyGraph::end):
1305         (TDependencyGraph::beginSamplerSymbols):
1306         (TDependencyGraph::endSamplerSymbols):
1307         (TDependencyGraph::beginUserDefinedFunctionCalls):
1308         (TDependencyGraph::endUserDefinedFunctionCalls):
1309         (TDependencyGraphTraverser):
1310         (TDependencyGraphTraverser::TDependencyGraphTraverser):
1311         (TDependencyGraphTraverser::visitSymbol):
1312         (TDependencyGraphTraverser::visitArgument):
1313         (TDependencyGraphTraverser::visitFunctionCall):
1314         (TDependencyGraphTraverser::visitSelection):
1315         (TDependencyGraphTraverser::visitLoop):
1316         (TDependencyGraphTraverser::visitLogicalOp):
1317         (TDependencyGraphTraverser::getDepth):
1318         (TDependencyGraphTraverser::incrementDepth):
1319         (TDependencyGraphTraverser::decrementDepth):
1320         (TDependencyGraphTraverser::clearVisited):
1321         (TDependencyGraphTraverser::markVisited):
1322         (TDependencyGraphTraverser::isVisited):
1323         * src/compiler/depgraph/DependencyGraphBuilder.cpp: Added.
1324         (TDependencyGraphBuilder::build):
1325         (TDependencyGraphBuilder::visitAggregate):
1326         (TDependencyGraphBuilder::visitFunctionDefinition):
1327         (TDependencyGraphBuilder::visitFunctionCall):
1328         (TDependencyGraphBuilder::visitAggregateChildren):
1329         (TDependencyGraphBuilder::visitSymbol):
1330         (TDependencyGraphBuilder::visitBinary):
1331         (TDependencyGraphBuilder::visitAssignment):
1332         (TDependencyGraphBuilder::visitLogicalOp):
1333         (TDependencyGraphBuilder::visitBinaryChildren):
1334         (TDependencyGraphBuilder::visitSelection):
1335         (TDependencyGraphBuilder::visitLoop):
1336         (TDependencyGraphBuilder::connectMultipleNodesToSingleNode):
1337         * src/compiler/depgraph/DependencyGraphBuilder.h: Added.
1338         (TDependencyGraphBuilder):
1339         (TNodeSetStack):
1340         (TDependencyGraphBuilder::TNodeSetStack::TNodeSetStack):
1341         (TDependencyGraphBuilder::TNodeSetStack::~TNodeSetStack):
1342         (TDependencyGraphBuilder::TNodeSetStack::getTopSet):
1343         (TDependencyGraphBuilder::TNodeSetStack::pushSet):
1344         (TDependencyGraphBuilder::TNodeSetStack::popSet):
1345         (TDependencyGraphBuilder::TNodeSetStack::popSetIntoNext):
1346         (TDependencyGraphBuilder::TNodeSetStack::insertIntoTopSet):
1347         (TDependencyGraphBuilder::TNodeSetStack::clear):
1348         (TNodeSetMaintainer):
1349         (TDependencyGraphBuilder::TNodeSetMaintainer::TNodeSetMaintainer):
1350         (TDependencyGraphBuilder::TNodeSetMaintainer::~TNodeSetMaintainer):
1351         (TNodeSetPropagatingMaintainer):
1352         (TDependencyGraphBuilder::TNodeSetPropagatingMaintainer::TNodeSetPropagatingMaintainer):
1353         (TDependencyGraphBuilder::TNodeSetPropagatingMaintainer::~TNodeSetPropagatingMaintainer):
1354         (TLeftmostSymbolMaintainer):
1355         (TDependencyGraphBuilder::TLeftmostSymbolMaintainer::TLeftmostSymbolMaintainer):
1356         (TDependencyGraphBuilder::TLeftmostSymbolMaintainer::~TLeftmostSymbolMaintainer):
1357         (TDependencyGraphBuilder::TDependencyGraphBuilder):
1358         (TDependencyGraphBuilder::build):
1359         * src/compiler/depgraph/DependencyGraphOutput.cpp: Added.
1360         (TDependencyGraphOutput::outputIndentation):
1361         (TDependencyGraphOutput::visitArgument):
1362         (TDependencyGraphOutput::visitFunctionCall):
1363         (TDependencyGraphOutput::visitSymbol):
1364         (TDependencyGraphOutput::visitSelection):
1365         (TDependencyGraphOutput::visitLoop):
1366         (TDependencyGraphOutput::visitLogicalOp):
1367         (TDependencyGraphOutput::outputAllSpanningTrees):
1368         * src/compiler/depgraph/DependencyGraphOutput.h: Added.
1369         (TDependencyGraphOutput):
1370         (TDependencyGraphOutput::TDependencyGraphOutput):
1371         * src/compiler/depgraph/DependencyGraphTraverse.cpp: Added.
1372         (TGraphNode::traverse):
1373         (TGraphParentNode::traverse):
1374         (TGraphArgument::traverse):
1375         (TGraphFunctionCall::traverse):
1376         (TGraphSymbol::traverse):
1377         (TGraphSelection::traverse):
1378         (TGraphLoop::traverse):
1379         (TGraphLogicalOp::traverse):
1380         * src/compiler/glslang.h:
1381         * src/compiler/glslang.l:
1382         * src/compiler/glslang.y:
1383         * src/compiler/glslang_lex.cpp:
1384         (yy_buffer_state):
1385         (yyguts_t):
1386         (yy_get_previous_state):
1387         (yy_try_NUL_trans):
1388         (input):
1389         (yyensure_buffer_stack):
1390         (yy_scan_bytes):
1391         (yyget_leng):
1392         (string_input):
1393         (yyerror):
1394         (glslang_finalize):
1395         (glslang_scan):
1396         * src/compiler/glslang_tab.cpp:
1397         * src/compiler/intermediate.h:
1398         (TIntermAggregate::TIntermAggregate):
1399         (TIntermAggregate::~TIntermAggregate):
1400         (TIntermAggregate::isUserDefined):
1401         (TIntermAggregate):
1402         (TIntermTraverser::~TIntermTraverser):
1403         * src/compiler/osinclude.h:
1404         * src/compiler/preprocessor/atom.c:
1405         (FindHashLoc):
1406         (PrintAtomTable):
1407         * src/compiler/preprocessor/cpp.c:
1408         (CPPpragma):
1409         (readCPPline):
1410         (PredefineIntMacro):
1411         (MacroExpand):
1412         * src/compiler/preprocessor/cpp.h:
1413         * src/compiler/preprocessor/memory.h:
1414         * src/compiler/preprocessor/new: Added properties allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs, allow-tabs and allow-tabs.
1415         * src/compiler/preprocessor/new/Context.cpp: Removed.
1416         * src/compiler/preprocessor/new/Context.h: Removed.
1417         * src/compiler/preprocessor/new/Diagnostics.h: Added.
1418         (pp):
1419         (Diagnostics):
1420         * src/compiler/preprocessor/new/DiagnosticsBase.cpp: Added.
1421         (pp):
1422         (pp::Diagnostics::~Diagnostics):
1423         (pp::Diagnostics::report):
1424         (pp::Diagnostics::severity):
1425         * src/compiler/preprocessor/new/DirectiveHandler.h: Added.
1426         (pp):
1427         (DirectiveHandler):
1428         * src/compiler/preprocessor/new/DirectiveHandlerBase.cpp: Added.
1429         (pp):
1430         (pp::DirectiveHandler::~DirectiveHandler):
1431         * src/compiler/preprocessor/new/DirectiveParser.cpp: Added.
1432         (getDirective):
1433         (isConditionalDirective):
1434         (isEOD):
1435         (skipUntilEOD):
1436         (isMacroNameReserved):
1437         (isMacroPredefined):
1438         (pp):
1439         (DefinedParser):
1440         (pp::DefinedParser::DefinedParser):
1441         (pp::DefinedParser::lex):
1442         (pp::DirectiveParser::DirectiveParser):
1443         (pp::DirectiveParser::lex):
1444         (pp::DirectiveParser::parseDirective):
1445         (pp::DirectiveParser::parseDefine):
1446         (pp::DirectiveParser::parseUndef):
1447         (pp::DirectiveParser::parseIf):
1448         (pp::DirectiveParser::parseIfdef):
1449         (pp::DirectiveParser::parseIfndef):
1450         (pp::DirectiveParser::parseElse):
1451         (pp::DirectiveParser::parseElif):
1452         (pp::DirectiveParser::parseEndif):
1453         (pp::DirectiveParser::parseError):
1454         (pp::DirectiveParser::parsePragma):
1455         (pp::DirectiveParser::parseExtension):
1456         (pp::DirectiveParser::parseVersion):
1457         (pp::DirectiveParser::parseLine):
1458         (pp::DirectiveParser::skipping):
1459         (pp::DirectiveParser::parseConditionalIf):
1460         (pp::DirectiveParser::parseExpressionIf):
1461         (pp::DirectiveParser::parseExpressionIfdef):
1462         * src/compiler/preprocessor/new/DirectiveParser.h: Added.
1463         (pp):
1464         (DirectiveParser):
1465         (ConditionalBlock):
1466         (pp::DirectiveParser::ConditionalBlock::ConditionalBlock):
1467         * src/compiler/preprocessor/new/ExpressionParser.cpp: Added.
1468         (yysyntax_error):
1469         (yylex):
1470         (yyerror):
1471         (pp):
1472         (pp::ExpressionParser::ExpressionParser):
1473         (pp::ExpressionParser::parse):
1474         * src/compiler/preprocessor/new/ExpressionParser.h: Added.
1475         (pp):
1476         (ExpressionParser):
1477         * src/compiler/preprocessor/new/ExpressionParser.y: Added.
1478         * src/compiler/preprocessor/new/Input.cpp: Added property allow-tabs.
1479         (pp::Input::Input):
1480         (pp::Input::read):
1481         * src/compiler/preprocessor/new/Input.h: Added property allow-tabs.
1482         (pp):
1483         (Input):
1484         (pp::Input::count):
1485         (pp::Input::string):
1486         (pp::Input::length):
1487         (Location):
1488         (pp::Input::Location::Location):
1489         (pp::Input::readLoc):
1490         * src/compiler/preprocessor/new/Lexer.cpp: Added.
1491         (pp):
1492         (pp::Lexer::~Lexer):
1493         * src/compiler/preprocessor/new/Lexer.h: Added.
1494         (pp):
1495         (Lexer):
1496         * src/compiler/preprocessor/new/Macro.cpp: Added property allow-tabs.
1497         (pp::Macro::equals):
1498         * src/compiler/preprocessor/new/Macro.h: Added property allow-tabs.
1499         (pp):
1500         (pp::Macro::Macro):
1501         (Macro):
1502         * src/compiler/preprocessor/new/MacroExpander.cpp: Added.
1503         (pp):
1504         (TokenLexer):
1505         (pp::TokenLexer::TokenLexer):
1506         (pp::TokenLexer::lex):
1507         (pp::MacroExpander::MacroExpander):
1508         (pp::MacroExpander::~MacroExpander):
1509         (pp::MacroExpander::lex):
1510         (pp::MacroExpander::getToken):
1511         (pp::MacroExpander::ungetToken):
1512         (pp::MacroExpander::isNextTokenLeftParen):
1513         (pp::MacroExpander::pushMacro):
1514         (pp::MacroExpander::popMacro):
1515         (pp::MacroExpander::expandMacro):
1516         (pp::MacroExpander::collectMacroArgs):
1517         (pp::MacroExpander::replaceMacroParams):
1518         * src/compiler/preprocessor/new/MacroExpander.h: Added.
1519         (pp):
1520         (MacroExpander):
1521         (MacroContext):
1522         (pp::MacroExpander::MacroContext::MacroContext):
1523         (pp::MacroExpander::MacroContext::empty):
1524         (pp::MacroExpander::MacroContext::get):
1525         (pp::MacroExpander::MacroContext::unget):
1526         * src/compiler/preprocessor/new/Preprocessor.cpp: Added property allow-tabs.
1527         (PreprocessorImpl):
1528         (pp::PreprocessorImpl::PreprocessorImpl):
1529         (pp):
1530         (pp::Preprocessor::Preprocessor):
1531         (pp::Preprocessor::~Preprocessor):
1532         (pp::Preprocessor::init):
1533         (pp::Preprocessor::predefineMacro):
1534         (pp::Preprocessor::lex):
1535         * src/compiler/preprocessor/new/Preprocessor.h: Added property allow-tabs.
1536         (pp):
1537         (Preprocessor):
1538         * src/compiler/preprocessor/new/SourceLocation.h: Added.
1539         (pp):
1540         (pp::SourceLocation::SourceLocation):
1541         (SourceLocation):
1542         (pp::SourceLocation::equals):
1543         (pp::operator==):
1544         (pp::operator!=):
1545         * src/compiler/preprocessor/new/Token.cpp: Added property allow-tabs.
1546         (pp::Token::reset):
1547         (pp::Token::equals):
1548         (pp::Token::setAtStartOfLine):
1549         (pp::Token::setHasLeadingSpace):
1550         (pp):
1551         (pp::Token::setExpansionDisabled):
1552         (pp::operator<<):
1553         * src/compiler/preprocessor/new/Token.h: Added property allow-tabs.
1554         (pp::Token::Token):
1555         (Token):
1556         (pp::Token::atStartOfLine):
1557         (pp::Token::hasLeadingSpace):
1558         (pp::Token::expansionDisabled):
1559         (pp::operator==):
1560         (pp):
1561         (pp::operator!=):
1562         * src/compiler/preprocessor/new/Tokenizer.cpp: Added.
1563         (yy_buffer_state):
1564         (yy_trans_info):
1565         (yyguts_t):
1566         (yy_get_previous_state):
1567         (yy_try_NUL_trans):
1568         (input):
1569         (pprestart):
1570         (pp_switch_to_buffer):
1571         (pp_load_buffer_state):
1572         (pp_create_buffer):
1573         (pp_delete_buffer):
1574         (pp_init_buffer):
1575         (pp_flush_buffer):
1576         (pppush_buffer_state):
1577         (pppop_buffer_state):
1578         (ppensure_buffer_stack):
1579         (pp_scan_buffer):
1580         (pp_scan_string):
1581         (pp_scan_bytes):
1582         (yy_fatal_error):
1583         (ppget_extra):
1584         (ppget_lineno):
1585         (ppget_column):
1586         (ppget_in):
1587         (ppget_out):
1588         (ppget_leng):
1589         (ppget_text):
1590         (ppset_extra):
1591         (ppset_lineno):
1592         (ppset_column):
1593         (ppset_in):
1594         (ppset_out):
1595         (ppget_debug):
1596         (ppset_debug):
1597         (ppget_lval):
1598         (ppset_lval):
1599         (ppget_lloc):
1600         (ppset_lloc):
1601         (pplex_init):
1602         (pplex_init_extra):
1603         (yy_init_globals):
1604         (pplex_destroy):
1605         (yy_flex_strncpy):
1606         (yy_flex_strlen):
1607         (ppalloc):
1608         (pprealloc):
1609         (ppfree):
1610         (pp):
1611         (pp::Tokenizer::Tokenizer):
1612         (pp::Tokenizer::~Tokenizer):
1613         (pp::Tokenizer::init):
1614         (pp::Tokenizer::setFileNumber):
1615         (pp::Tokenizer::setLineNumber):
1616         (pp::Tokenizer::lex):
1617         (pp::Tokenizer::initScanner):
1618         (pp::Tokenizer::destroyScanner):
1619         * src/compiler/preprocessor/new/Tokenizer.h: Added.
1620         (pp):
1621         (Tokenizer):
1622         (Context):
1623         * src/compiler/preprocessor/new/Tokenizer.l: Added.
1624         * src/compiler/preprocessor/new/generate_parser.sh: Added property allow-tabs.
1625         * src/compiler/preprocessor/new/pp.l: Removed.
1626         * src/compiler/preprocessor/new/pp.y: Removed.
1627         * src/compiler/preprocessor/new/pp_lex.cpp: Removed.
1628         * src/compiler/preprocessor/new/pp_tab.cpp: Removed.
1629         * src/compiler/preprocessor/new/pp_tab.h: Removed.
1630         * src/compiler/preprocessor/new/pp_utils.h: Added.
1631         * src/compiler/preprocessor/new/preprocessor.vcproj: Added.
1632         * src/compiler/preprocessor/new/stl_utils.h: Removed.
1633         * src/compiler/preprocessor/new/token_type.h: Removed.
1634         * src/compiler/preprocessor/preprocess.h:
1635         * src/compiler/preprocessor/scanner.c:
1636         (InitScannerInput):
1637         * src/compiler/preprocessor/scanner.h:
1638         * src/compiler/preprocessor/symbols.h:
1639         * src/compiler/preprocessor/tokens.c:
1640         (ReadToken):
1641         (DumpTokenStream):
1642         * src/compiler/preprocessor/tokens.h:
1643         * src/compiler/timing: Added.
1644         * src/compiler/timing/RestrictFragmentShaderTiming.cpp: Added.
1645         (RestrictFragmentShaderTiming::RestrictFragmentShaderTiming):
1646         (RestrictFragmentShaderTiming::enforceRestrictions):
1647         (RestrictFragmentShaderTiming::validateUserDefinedFunctionCallUsage):
1648         (RestrictFragmentShaderTiming::beginError):
1649         (RestrictFragmentShaderTiming::isSamplingOp):
1650         (RestrictFragmentShaderTiming::visitArgument):
1651         (RestrictFragmentShaderTiming::visitSelection):
1652         (RestrictFragmentShaderTiming::visitLoop):
1653         (RestrictFragmentShaderTiming::visitLogicalOp):
1654         * src/compiler/timing/RestrictFragmentShaderTiming.h: Added.
1655         (RestrictFragmentShaderTiming):
1656         (RestrictFragmentShaderTiming::numErrors):
1657         * src/compiler/timing/RestrictVertexShaderTiming.cpp: Added.
1658         (RestrictVertexShaderTiming::visitSymbol):
1659         * src/compiler/timing/RestrictVertexShaderTiming.h: Added.
1660         (RestrictVertexShaderTiming):
1661         (RestrictVertexShaderTiming::RestrictVertexShaderTiming):
1662         (RestrictVertexShaderTiming::enforceRestrictions):
1663         (RestrictVertexShaderTiming::numErrors):
1664         * src/libEGL/Display.cpp:
1665         (egl):
1666         (egl::Display::getDepthTextureSupport):
1667         (egl::Display::getTexturePool):
1668         * src/libEGL/Display.h:
1669         (Display):
1670         * src/libEGL/Surface.cpp:
1671         (egl::Surface::Surface):
1672         (egl::Surface::release):
1673         (egl::Surface::resetSwapChain):
1674         (egl::Surface::swapRect):
1675         (egl):
1676         (egl::Surface::swap):
1677         (egl::Surface::postSubBuffer):
1678         * src/libEGL/Surface.h:
1679         (Surface):
1680         * src/libEGL/libEGL.cpp:
1681         * src/libGLESv2/Context.cpp:
1682         (gl::Context::makeCurrent):
1683         (gl::Context::markDxUniformsDirty):
1684         (gl):
1685         (gl::Context::getIntegerv):
1686         (gl::Context::getQueryParameterInfo):
1687         (gl::Context::applyRenderTarget):
1688         (gl::Context::applyState):
1689         (gl::Context::applyShaders):
1690         (gl::Context::applyTextures):
1691         (gl::Context::readPixels):
1692         (gl::Context::clear):
1693         (gl::Context::drawArrays):
1694         (gl::Context::drawElements):
1695         (gl::Context::supportsDepthTextures):
1696         (gl::Context::initExtensionString):
1697         (gl::Context::blitFramebuffer):
1698         (gl::VertexDeclarationCache::applyDeclaration):
1699         * src/libGLESv2/Context.h:
1700         (Context):
1701         * src/libGLESv2/Framebuffer.cpp:
1702         (gl::Framebuffer::~Framebuffer):
1703         (gl):
1704         (gl::Framebuffer::getNullColorbuffer):
1705         (gl::Framebuffer::completeness):
1706         * src/libGLESv2/Framebuffer.h:
1707         (Framebuffer):
1708         * src/libGLESv2/Program.cpp:
1709         (gl):
1710         (gl::AttributeBindings::AttributeBindings):
1711         (gl::AttributeBindings::~AttributeBindings):
1712         (gl::InfoLog::InfoLog):
1713         (gl::InfoLog::~InfoLog):
1714         (gl::InfoLog::getLength):
1715         (gl::InfoLog::getLog):
1716         (gl::InfoLog::appendSanitized):
1717         (gl::InfoLog::append):
1718         (gl::InfoLog::reset):
1719         (gl::Program::Program):
1720         (gl::Program::~Program):
1721         (gl::Program::attachShader):
1722         (gl::Program::detachShader):
1723         (gl::Program::getAttachedShadersCount):
1724         (gl::AttributeBindings::bindAttributeLocation):
1725         (gl::Program::bindAttributeLocation):
1726         (gl::Program::link):
1727         (gl::AttributeBindings::getAttributeBinding):
1728         (gl::Program::unlink):
1729         (gl::Program::getProgramBinary):
1730         (gl::Program::setProgramBinary):
1731         (gl::Program::getInfoLogLength):
1732         (gl::Program::getInfoLog):
1733         (gl::Program::getActiveAttribute):
1734         (gl::Program::getActiveAttributeCount):
1735         (gl::Program::getActiveAttributeMaxLength):
1736         (gl::Program::getActiveUniform):
1737         (gl::Program::getActiveUniformCount):
1738         (gl::Program::getActiveUniformMaxLength):
1739         (gl::Program::validate):
1740         (gl::Program::isValidated):
1741         * src/libGLESv2/Program.h:
1742         (gl):
1743         (AttributeBindings):
1744         (InfoLog):
1745         (Program):
1746         * src/libGLESv2/ProgramBinary.cpp: Added.
1747         (gl::str):
1748         (gl):
1749         (gl::Uniform::Uniform):
1750         (gl::Uniform::~Uniform):
1751         (gl::Uniform::isArray):
1752         (gl::UniformLocation::UniformLocation):
1753         (gl::ProgramBinary::ProgramBinary):
1754         (gl::ProgramBinary::~ProgramBinary):
1755         (gl::ProgramBinary::getPixelShader):
1756         (gl::ProgramBinary::getVertexShader):
1757         (gl::ProgramBinary::getAttributeLocation):
1758         (gl::ProgramBinary::getSemanticIndex):
1759         (gl::ProgramBinary::getUsedSamplerRange):
1760         (gl::ProgramBinary::getSamplerMapping):
1761         (gl::ProgramBinary::getSamplerTextureType):
1762         (gl::ProgramBinary::getUniformLocation):
1763         (gl::ProgramBinary::setUniform1fv):
1764         (gl::ProgramBinary::setUniform2fv):
1765         (gl::ProgramBinary::setUniform3fv):
1766         (gl::ProgramBinary::setUniform4fv):
1767         (gl::transposeMatrix):
1768         (gl::ProgramBinary::setUniformMatrix2fv):
1769         (gl::ProgramBinary::setUniformMatrix3fv):
1770         (gl::ProgramBinary::setUniformMatrix4fv):
1771         (gl::ProgramBinary::setUniform1iv):
1772         (gl::ProgramBinary::setUniform2iv):
1773         (gl::ProgramBinary::setUniform3iv):
1774         (gl::ProgramBinary::setUniform4iv):
1775         (gl::ProgramBinary::getUniformfv):
1776         (gl::ProgramBinary::getUniformiv):
1777         (gl::ProgramBinary::dirtyAllUniforms):
1778         (gl::ProgramBinary::applyUniforms):
1779         (gl::ProgramBinary::compileToBinary):
1780         (gl::ProgramBinary::packVaryings):
1781         (gl::ProgramBinary::linkVaryings):
1782         (gl::ProgramBinary::link):
1783         (gl::ProgramBinary::linkAttributes):
1784         (gl::ProgramBinary::linkUniforms):
1785         (gl::ProgramBinary::defineUniform):
1786         (gl::ProgramBinary::createUniform):
1787         (gl::ProgramBinary::decorateAttribute):
1788         (gl::ProgramBinary::undecorateUniform):
1789         (gl::ProgramBinary::applyUniformnbv):
1790         (gl::ProgramBinary::applyUniformnfv):
1791         (gl::ProgramBinary::applyUniform1iv):
1792         (gl::ProgramBinary::applyUniform2iv):
1793         (gl::ProgramBinary::applyUniform3iv):
1794         (gl::ProgramBinary::applyUniform4iv):
1795         (gl::ProgramBinary::applyUniformniv):
1796         (gl::ProgramBinary::isValidated):
1797         (gl::ProgramBinary::getActiveAttribute):
1798         (gl::ProgramBinary::getActiveAttributeCount):
1799         (gl::ProgramBinary::getActiveAttributeMaxLength):
1800         (gl::ProgramBinary::getActiveUniform):
1801         (gl::ProgramBinary::getActiveUniformCount):
1802         (gl::ProgramBinary::getActiveUniformMaxLength):
1803         (gl::ProgramBinary::validate):
1804         (gl::ProgramBinary::validateSamplers):
1805         (gl::ProgramBinary::getDxDepthRangeLocation):
1806         (gl::ProgramBinary::getDxDepthLocation):
1807         (gl::ProgramBinary::getDxCoordLocation):
1808         (gl::ProgramBinary::getDxHalfPixelSizeLocation):
1809         (gl::ProgramBinary::getDxFrontCCWLocation):
1810         (gl::ProgramBinary::getDxPointsOrLinesLocation):
1811         * src/libGLESv2/ProgramBinary.h: Added.
1812         (gl):
1813         (Uniform):
1814         (gl::Uniform::RegisterInfo::RegisterInfo):
1815         (RegisterInfo):
1816         (gl::Uniform::RegisterInfo::set):
1817         (UniformLocation):
1818         (ProgramBinary):
1819         (Sampler):
1820         * src/libGLESv2/Renderbuffer.cpp:
1821         (gl):
1822         (gl::RenderbufferTexture2D::RenderbufferTexture2D):
1823         (gl::RenderbufferTexture2D::~RenderbufferTexture2D):
1824         (gl::RenderbufferTexture2D::addProxyRef):
1825         (gl::RenderbufferTexture2D::releaseProxy):
1826         (gl::RenderbufferTexture2D::getRenderTarget):
1827         (gl::RenderbufferTexture2D::getDepthStencil):
1828         (gl::RenderbufferTexture2D::getWidth):
1829         (gl::RenderbufferTexture2D::getHeight):
1830         (gl::RenderbufferTexture2D::getInternalFormat):
1831         (gl::RenderbufferTexture2D::getD3DFormat):
1832         (gl::RenderbufferTexture2D::getSamples):
1833         (gl::RenderbufferTexture2D::getSerial):
1834         (gl::RenderbufferTextureCubeMap::RenderbufferTextureCubeMap):
1835         (gl::RenderbufferTextureCubeMap::~RenderbufferTextureCubeMap):
1836         (gl::RenderbufferTextureCubeMap::addProxyRef):
1837         (gl::RenderbufferTextureCubeMap::releaseProxy):
1838         (gl::RenderbufferTextureCubeMap::getRenderTarget):
1839         (gl::RenderbufferTextureCubeMap::getDepthStencil):
1840         (gl::RenderbufferTextureCubeMap::getWidth):
1841         (gl::RenderbufferTextureCubeMap::getHeight):
1842         (gl::RenderbufferTextureCubeMap::getInternalFormat):
1843         (gl::RenderbufferTextureCubeMap::getD3DFormat):
1844         (gl::RenderbufferTextureCubeMap::getSamples):
1845         (gl::RenderbufferTextureCubeMap::getSerial):
1846         (gl::DepthStencilbuffer::getDepthStencil):
1847         * src/libGLESv2/Renderbuffer.h:
1848         (gl):
1849         (RenderbufferTexture2D):
1850         (RenderbufferTextureCubeMap):
1851         * src/libGLESv2/Shader.cpp:
1852         (gl::Shader::getInfoLog):
1853         (gl::Shader::getSourceImpl):
1854         * src/libGLESv2/Shader.h:
1855         (Shader):
1856         (VertexShader):
1857         * src/libGLESv2/Texture.cpp:
1858         (gl::ConvertTextureFormatType):
1859         (gl::IsTextureFormatRenderable):
1860         (gl::GetTextureUsage):
1861         (gl):
1862         (gl::Image::createSurface):
1863         (gl::Image::updateSurface):
1864         (gl::Image::loadData):
1865         (gl::Image::loadAlphaData):
1866         (gl::Image::loadAlphaDataSSE2):
1867         (gl::Image::loadAlphaFloatData):
1868         (gl::Image::loadAlphaHalfFloatData):
1869         (gl::Image::loadLuminanceData):
1870         (gl::Image::loadLuminanceFloatData):
1871         (gl::Image::loadLuminanceHalfFloatData):
1872         (gl::Image::loadLuminanceAlphaData):
1873         (gl::Image::loadLuminanceAlphaFloatData):
1874         (gl::Image::loadLuminanceAlphaHalfFloatData):
1875         (gl::Image::loadRGBUByteData):
1876         (gl::Image::loadRGB565Data):
1877         (gl::Image::loadRGBFloatData):
1878         (gl::Image::loadRGBHalfFloatData):
1879         (gl::Image::loadRGBAUByteDataSSE2):
1880         (gl::Image::loadRGBAUByteData):
1881         (gl::Image::loadRGBA4444Data):
1882         (gl::Image::loadRGBA5551Data):
1883         (gl::Image::loadRGBAFloatData):
1884         (gl::Image::loadRGBAHalfFloatData):
1885         (gl::Image::loadBGRAData):
1886         (gl::Image::loadCompressedData):
1887         (gl::Image::copy):
1888         (gl::TextureStorage::TextureStorage):
1889         (gl::TextureStorage::isRenderTarget):
1890         (gl::TextureStorage::getUsage):
1891         (gl::Texture::setImage):
1892         (gl::Texture::setCompressedImage):
1893         (gl::Texture::subImage):
1894         (gl::Texture::subImageCompressed):
1895         (gl::TextureStorage2D::TextureStorage2D):
1896         (gl::Texture2D::getInternalFormat):
1897         (gl::Texture2D::getD3DFormat):
1898         (gl::Texture2D::copyImage):
1899         (gl::Texture2D::copySubImage):
1900         (gl::Texture2D::storage):
1901         (gl::Texture2D::isSamplerComplete):
1902         (gl::Texture2D::isCompressed):
1903         (gl::Texture2D::isDepth):
1904         (gl::Texture2D::createTexture):
1905         (gl::Texture2D::convertToRenderTarget):
1906         (gl::Texture2D::getRenderbuffer):
1907         (gl::Texture2D::getRenderTarget):
1908         (gl::Texture2D::getDepthStencil):
1909         (gl::TextureStorageCubeMap::TextureStorageCubeMap):
1910         (gl::TextureCubeMap::getWidth):
1911         (gl::TextureCubeMap::getHeight):
1912         (gl::TextureCubeMap::getInternalFormat):
1913         (gl::TextureCubeMap::getD3DFormat):
1914         (gl::TextureCubeMap::isSamplerComplete):
1915         (gl::TextureCubeMap::isCompressed):
1916         (gl::TextureCubeMap::createTexture):
1917         (gl::TextureCubeMap::convertToRenderTarget):
1918         (gl::TextureCubeMap::copyImage):
1919         (gl::TextureCubeMap::copySubImage):
1920         (gl::TextureCubeMap::storage):
1921         (gl::TextureCubeMap::getRenderbuffer):
1922         * src/libGLESv2/Texture.h:
1923         (Image):
1924         (TextureStorage):
1925         (Texture):
1926         (TextureStorage2D):
1927         (Texture2D):
1928         (TextureStorageCubeMap):
1929         (TextureCubeMap):
1930         * src/libGLESv2/VertexDataManager.cpp:
1931         (gl::VertexDataManager::prepareVertexData):
1932         * src/libGLESv2/libGLESv2.cpp:
1933         (checkTextureFormatType):
1934         (validateSubImageParams2D):
1935         (validateSubImageParamsCube):
1936         * src/libGLESv2/libGLESv2.vcproj:
1937         * src/libGLESv2/mathutil.h:
1938         (gl):
1939         * src/libGLESv2/utilities.cpp:
1940         (gl::IsDepthTexture):
1941         (gl):
1942         (gl::ComputePixelSize):
1943         (gl::ExtractFormat):
1944         (gl::ExtractType):
1945         (es2dx::ConvertCubeFace):
1946         (es2dx::ConvertRenderbufferFormat):
1947         (dx2es::GetStencilSize):
1948         (dx2es::GetDepthSize):
1949         (dx2es::IsDepthTextureFormat):
1950         (dx2es):
1951         (dx2es::IsStencilTextureFormat):
1952         (dx2es::ConvertDepthStencilFormat):
1953         * src/libGLESv2/utilities.h:
1954         (gl):
1955         (dx2es):
1956
1957 2012-07-11  Mark Rowe  <mrowe@apple.com>
1958
1959         <http://webkit.org/b/91024> Build against the latest SDK when targeting older OS X versions.
1960
1961         Reviewed by Dan Bernstein.
1962
1963         The deployment target is already set to the version that we're targeting, and it's that setting
1964         which determines which functionality from the SDK is available to us.
1965
1966         * Configurations/Base.xcconfig:
1967
1968 2012-06-22  Joshua Netterfield  <jnetterfield@rim.com>
1969
1970         [BlackBerry] Sanitize GLSL code using ANGLE.
1971
1972         BlackBerry port does not sanitize GLSL code with ANGLE
1973         https://bugs.webkit.org/show_bug.cgi?id=89583
1974
1975         Reviewed by Rob Buis.
1976
1977         * src/compiler/osinclude.h: Recognises QNX as POSIX
1978
1979 2012-03-26  Dean Jackson  <dino@apple.com>
1980
1981         Update ANGLE in WebKit
1982         https://bugs.webkit.org/show_bug.cgi?id=81717
1983
1984         Reviewed by Kenneth Russell.
1985
1986         Update angleproject to r1009. Synced the source directory
1987         between the angle repository and WebKit. Ran the OS X Lion
1988         version of Bison over the glslang.l input which generates
1989         a slightly different output than angle provided.
1990
1991         * include/EGL/eglext.h:
1992         * include/GLES2/gl2ext.h:
1993         * include/GLSLANG/ShaderLang.h:
1994         * src/common/RefCountObject.cpp: Renamed from Source/ThirdParty/ANGLE/src/libGLESv2/RefCountObject.cpp.
1995         (RefCountObject::RefCountObject):
1996         (RefCountObject::~RefCountObject):
1997         (RefCountObject::addRef):
1998         (RefCountObject::release):
1999         (RefCountObjectBindingPointer::set):
2000         * src/common/RefCountObject.h: Renamed from Source/ThirdParty/ANGLE/src/libGLESv2/RefCountObject.h.
2001         (RefCountObject):
2002         (RefCountObject::id):
2003         (RefCountObjectBindingPointer):
2004         (RefCountObjectBindingPointer::RefCountObjectBindingPointer):
2005         (RefCountObjectBindingPointer::~RefCountObjectBindingPointer):
2006         (RefCountObjectBindingPointer::get):
2007         (RefCountObjectBindingPointer::id):
2008         (RefCountObjectBindingPointer::operator ! ):
2009         (BindingPointer):
2010         (BindingPointer::set):
2011         (BindingPointer::get):
2012         (BindingPointer::operator -> ):
2013         * src/common/debug.cpp:
2014         (gl::output):
2015         * src/common/version.h:
2016         * src/compiler/BaseTypes.h:
2017         * src/compiler/Compiler.cpp:
2018         (TCompiler::TCompiler):
2019         (TCompiler::~TCompiler):
2020         (TCompiler::mapLongVariableNames):
2021         * src/compiler/ConstantUnion.h:
2022         (ConstantUnion::ConstantUnion):
2023         (ConstantUnion::operator==):
2024         (ConstantUnion::operator>):
2025         (ConstantUnion::operator<):
2026         * src/compiler/Intermediate.cpp:
2027         (TIntermConstantUnion::fold):
2028         * src/compiler/MapLongVariableNames.cpp:
2029         (LongNameMap::LongNameMap):
2030         (LongNameMap::~LongNameMap):
2031         (LongNameMap::GetInstance):
2032         (LongNameMap::Release):
2033         (LongNameMap::Find):
2034         (LongNameMap::Insert):
2035         (LongNameMap::Size):
2036         (MapLongVariableNames::MapLongVariableNames):
2037         (MapLongVariableNames::visitSymbol):
2038         (MapLongVariableNames::mapGlobalLongName):
2039         * src/compiler/MapLongVariableNames.h:
2040         (LongNameMap):
2041         (MapLongVariableNames):
2042         * src/compiler/OutputHLSL.cpp:
2043         (sh::OutputHLSL::OutputHLSL):
2044         (sh::OutputHLSL::header):
2045         (sh::OutputHLSL::visitSymbol):
2046         (sh::OutputHLSL::visitUnary):
2047         (sh::OutputHLSL::visitAggregate):
2048         (sh::OutputHLSL::visitLoop):
2049         (sh::OutputHLSL::handleExcessiveLoop):
2050         (sh::OutputHLSL::typeString):
2051         (sh::OutputHLSL::addConstructor):
2052         (sh::OutputHLSL::decorateUniform):
2053         * src/compiler/OutputHLSL.h:
2054         (OutputHLSL):
2055         * src/compiler/PoolAlloc.cpp:
2056         (TAllocation::checkGuardBlock):
2057         * src/compiler/ShHandle.h:
2058         (TCompiler):
2059         * src/compiler/SymbolTable.cpp:
2060         * src/compiler/SymbolTable.h:
2061         (TSymbolTable):
2062         (TSymbolTable::getOuterLevel):
2063         * src/compiler/VariableInfo.cpp:
2064         (getVariableDataType):
2065         * src/compiler/glslang.l:
2066         * src/compiler/glslang.y:
2067         * src/compiler/glslang_lex.cpp:
2068         (yy_buffer_state):
2069         (yyguts_t):
2070         (input):
2071         (yyensure_buffer_stack):
2072         (yy_scan_bytes):
2073         (yyget_leng):
2074         * src/compiler/glslang_tab.cpp:
2075         * src/compiler/osinclude.h:
2076         * src/compiler/preprocessor/cpp.c:
2077         * src/compiler/preprocessor/memory.c:
2078         * src/compiler/preprocessor/new/Context.cpp: Added.
2079         (isMacroNameReserved):
2080         (pp):
2081         (pp::Context::Context):
2082         (pp::Context::~Context):
2083         (pp::Context::init):
2084         (pp::Context::process):
2085         (pp::Context::defineMacro):
2086         (pp::Context::undefineMacro):
2087         (pp::Context::isMacroDefined):
2088         (pp::Context::reset):
2089         (pp::Context::defineBuiltInMacro):
2090         * src/compiler/preprocessor/new/Context.h: Added.
2091         (pp):
2092         (Context):
2093         (pp::Context::lexer):
2094         (pp::Context::output):
2095         * src/compiler/preprocessor/new/Input.cpp: Added.
2096         (pp):
2097         (pp::Input::Input):
2098         (pp::Input::eof):
2099         (pp::Input::read):
2100         (pp::Input::getChar):
2101         (pp::Input::peekChar):
2102         (pp::Input::switchToNextString):
2103         (pp::Input::isStringEmpty):
2104         (pp::Input::stringLength):
2105         * src/compiler/preprocessor/new/Input.h: Added.
2106         (pp):
2107         (Input):
2108         (pp::Input::error):
2109         (pp::Input::stringIndex):
2110         * src/compiler/preprocessor/new/Macro.cpp: Added.
2111         (pp):
2112         (pp::Macro::Macro):
2113         (pp::Macro::~Macro):
2114         * src/compiler/preprocessor/new/Macro.h: Added.
2115         (pp):
2116         (Macro):
2117         (pp::Macro::type):
2118         (pp::Macro::identifier):
2119         (pp::Macro::parameters):
2120         (pp::Macro::replacements):
2121         * src/compiler/preprocessor/new/Preprocessor.cpp: Added.
2122         (pp):
2123         (pp::Preprocessor::Preprocessor):
2124         (pp::Preprocessor::~Preprocessor):
2125         (pp::Preprocessor::init):
2126         (pp::Preprocessor::process):
2127         (pp::Preprocessor::reset):
2128         * src/compiler/preprocessor/new/Preprocessor.h: Added.
2129         (pp):
2130         (Preprocessor):
2131         (pp::Preprocessor::begin):
2132         (pp::Preprocessor::end):
2133         * src/compiler/preprocessor/new/Token.cpp: Added.
2134         (pp):
2135         (pp::Token::encodeLocation):
2136         (pp::Token::decodeLocation):
2137         (pp::Token::Token):
2138         (pp::Token::~Token):
2139         (pp::operator<<):
2140         * src/compiler/preprocessor/new/Token.h: Added.
2141         (pp):
2142         (Token):
2143         (pp::Token::location):
2144         (pp::Token::type):
2145         (pp::Token::value):
2146         * src/compiler/preprocessor/new/generate_parser.sh: Added.
2147         * src/compiler/preprocessor/new/pp.l: Added.
2148         * src/compiler/preprocessor/new/pp.y: Added.
2149         * src/compiler/preprocessor/new/pp_lex.cpp: Added.
2150         (yy_buffer_state):
2151         (yy_trans_info):
2152         (yyguts_t):
2153         (yy_get_previous_state):
2154         (yy_try_NUL_trans):
2155         (input):
2156         (pprestart):
2157         (pp_switch_to_buffer):
2158         (pp_load_buffer_state):
2159         (pp_create_buffer):
2160         (pp_delete_buffer):
2161         (pp_init_buffer):
2162         (pp_flush_buffer):
2163         (pppush_buffer_state):
2164         (pppop_buffer_state):
2165         (ppensure_buffer_stack):
2166         (pp_scan_buffer):
2167         (pp_scan_string):
2168         (pp_scan_bytes):
2169         (yy_push_state):
2170         (yy_pop_state):
2171         (yy_top_state):
2172         (yy_fatal_error):
2173         (ppget_extra):
2174         (ppget_lineno):
2175         (ppget_column):
2176         (ppget_in):
2177         (ppget_out):
2178         (ppget_leng):
2179         (ppget_text):
2180         (ppset_extra):
2181         (ppset_lineno):
2182         (ppset_column):
2183         (ppset_in):
2184         (ppset_out):
2185         (ppget_debug):
2186         (ppset_debug):
2187         (ppget_lval):
2188         (ppset_lval):
2189         (ppget_lloc):
2190         (ppset_lloc):
2191         (pplex_init):
2192         (pplex_init_extra):
2193         (yy_init_globals):
2194         (pplex_destroy):
2195         (yy_flex_strncpy):
2196         (yy_flex_strlen):
2197         (ppalloc):
2198         (pprealloc):
2199         (ppfree):
2200         (extractMacroName):
2201         (pp):
2202         (pp::Context::readInput):
2203         (pp::Context::initLexer):
2204         (pp::Context::destroyLexer):
2205         * src/compiler/preprocessor/new/pp_tab.cpp: Added.
2206         (YYLTYPE):
2207         (yysyntax_error):
2208         (yyerror):
2209         (pushConditionalBlock):
2210         (popConditionalBlock):
2211         (pp::Context::parse):
2212         * src/compiler/preprocessor/new/pp_tab.h: Added.
2213         (YYLTYPE):
2214         * src/compiler/preprocessor/new/stl_utils.h: Added.
2215         (pp):
2216         (Delete):
2217         (pp::Delete::operator()):
2218         (DeleteSecond):
2219         (pp::DeleteSecond::operator()):
2220         * src/compiler/preprocessor/new/token_type.h: Added.
2221         * src/compiler/preprocessor/scanner.c:
2222         (yylex_CPP):
2223         * src/compiler/preprocessor/symbols.c:
2224         * src/compiler/preprocessor/tokens.c:
2225         * src/libEGL/Config.cpp:
2226         (egl::ConfigSet::getConfigs):
2227         * src/libEGL/Display.cpp:
2228         (egl::Display::initialize):
2229         (egl::Display::terminate):
2230         (egl::Display::restoreLostDevice):
2231         (egl::Display::sync):
2232         (egl):
2233         (egl::Display::allocateEventQuery):
2234         (egl::Display::freeEventQuery):
2235         (egl::Display::getFloat32TextureSupport):
2236         (egl::Display::getFloat16TextureSupport):
2237         (egl::Display::getEventQuerySupport):
2238         (egl::Display::initExtensionString):
2239         (egl::Display::shareHandleSupported):
2240         (egl::Display::getOcclusionQuerySupport):
2241         (egl::Display::getInstancingSupport):
2242         * src/libEGL/Display.h:
2243         (Display):
2244         (egl::Display::isD3d9ExDevice):
2245         * src/libEGL/Surface.cpp:
2246         (egl::Surface::resetSwapChain):
2247         * src/libEGL/libEGL.cpp:
2248         * src/libEGL/libEGL.vcproj:
2249         * src/libGLESv2/Blit.cpp:
2250         (gl::Blit::setCommonBlitState):
2251         * src/libGLESv2/Buffer.h:
2252         (Buffer):
2253         * src/libGLESv2/Context.cpp:
2254         (gl::Context::Context):
2255         (gl::Context::~Context):
2256         (gl::Context::makeCurrent):
2257         (gl::Context::getActiveQuery):
2258         (gl):
2259         (gl::Context::createFence):
2260         (gl::Context::createQuery):
2261         (gl::Context::deleteQuery):
2262         (gl::Context::beginQuery):
2263         (gl::Context::endQuery):
2264         (gl::Context::getQuery):
2265         (gl::Context::applyVertexBuffer):
2266         (gl::Context::applyIndexBuffer):
2267         (gl::Context::readPixels):
2268         (gl::Context::clear):
2269         (gl::Context::drawArrays):
2270         (gl::Context::drawElements):
2271         (gl::Context::sync):
2272         (gl::Context::drawLineLoop):
2273         (gl::Context::supportsOcclusionQueries):
2274         (gl::Context::supportsInstancing):
2275         (gl::Context::setVertexAttribDivisor):
2276         (gl::Context::initExtensionString):
2277         (gl::VertexDeclarationCache::applyDeclaration):
2278         (gl::VertexDeclarationCache::markStateDirty):
2279         * src/libGLESv2/Context.h:
2280         (gl):
2281         (gl::VertexAttribute::VertexAttribute):
2282         (State):
2283         (VertexDeclarationCache):
2284         (Context):
2285         * src/libGLESv2/Fence.cpp:
2286         (gl::Fence::Fence):
2287         (gl::Fence::~Fence):
2288         (gl::Fence::setFence):
2289         * src/libGLESv2/Fence.h:
2290         (egl):
2291         (Fence):
2292         * src/libGLESv2/Framebuffer.cpp:
2293         (gl::Framebuffer::lookupRenderbuffer):
2294         (gl::Framebuffer::detachTexture):
2295         (gl::Framebuffer::completeness):
2296         * src/libGLESv2/Framebuffer.h:
2297         * src/libGLESv2/IndexDataManager.cpp:
2298         (gl::IndexDataManager::IndexDataManager):
2299         (gl::IndexDataManager::~IndexDataManager):
2300         (gl::computeRange):
2301         (gl::IndexDataManager::prepareIndexData):
2302         (gl::IndexDataManager::getCountingIndices):
2303         (gl):
2304         * src/libGLESv2/IndexDataManager.h:
2305         (IndexDataManager):
2306         * src/libGLESv2/Program.cpp:
2307         (gl::Program::getUniformLocation):
2308         (gl::Program::setUniform1fv):
2309         (gl::Program::setUniform2fv):
2310         (gl::Program::setUniform3fv):
2311         (gl::Program::setUniform4fv):
2312         (gl::Program::setUniform1iv):
2313         (gl::Program::setUniform2iv):
2314         (gl::Program::setUniform3iv):
2315         (gl::Program::setUniform4iv):
2316         (gl::Program::packVaryings):
2317         (gl::Program::linkVaryings):
2318         (gl::Program::defineUniform):
2319         (gl::Program::createUniform):
2320         (gl::Program::applyUniformnbv):
2321         (gl::Program::applyUniform1iv):
2322         (gl::Program::applyUniform2iv):
2323         (gl::Program::applyUniform3iv):
2324         (gl::Program::applyUniform4iv):
2325         (gl::Program::getInfoLog):
2326         * src/libGLESv2/Program.h:
2327         (Program):
2328         * src/libGLESv2/Query.cpp: Added.
2329         (gl):
2330         (gl::Query::Query):
2331         (gl::Query::~Query):
2332         (gl::Query::begin):
2333         (gl::Query::end):
2334         (gl::Query::getResult):
2335         (gl::Query::isResultAvailable):
2336         (gl::Query::getType):
2337         (gl::Query::testQuery):
2338         * src/libGLESv2/Query.h: Added.
2339         (gl):
2340         (Query):
2341         * src/libGLESv2/Renderbuffer.cpp:
2342         (gl):
2343         (gl::RenderbufferInterface::addProxyRef):
2344         (gl::RenderbufferInterface::releaseProxy):
2345         (gl::RenderbufferTexture::RenderbufferTexture):
2346         (gl::RenderbufferTexture::~RenderbufferTexture):
2347         (gl::RenderbufferTexture::addProxyRef):
2348         (gl::RenderbufferTexture::releaseProxy):
2349         (gl::Renderbuffer::addRef):
2350         (gl::Renderbuffer::release):
2351         * src/libGLESv2/Renderbuffer.h:
2352         (gl):
2353         (RenderbufferInterface):
2354         (RenderbufferTexture):
2355         (Renderbuffer):
2356         * src/libGLESv2/Shader.cpp:
2357         (gl::Shader::Shader):
2358         (gl::Shader::getInfoLog):
2359         (gl::Shader::getSourceImpl):
2360         (gl):
2361         (gl::Shader::initializeCompiler):
2362         (gl::Shader::parseVaryings):
2363         (gl::Shader::uncompile):
2364         (gl::Shader::compileToHLSL):
2365         (gl::VertexShader::uncompile):
2366         (gl::VertexShader::compile):
2367         (gl::VertexShader::parseAttributes):
2368         (gl::FragmentShader::compile):
2369         * src/libGLESv2/Shader.h:
2370         (Shader):
2371         (VertexShader):
2372         * src/libGLESv2/Texture.cpp:
2373         (gl::Texture2D::Texture2D):
2374         (gl::Texture2D::~Texture2D):
2375         (gl):
2376         (gl::Texture2D::addProxyRef):
2377         (gl::Texture2D::releaseProxy):
2378         (gl::Texture2D::getRenderbuffer):
2379         (gl::TextureCubeMap::TextureCubeMap):
2380         (gl::TextureCubeMap::~TextureCubeMap):
2381         (gl::TextureCubeMap::addProxyRef):
2382         (gl::TextureCubeMap::releaseProxy):
2383         (gl::TextureCubeMap::isSamplerComplete):
2384         (gl::TextureCubeMap::convertToRenderTarget):
2385         (gl::TextureCubeMap::getRenderbuffer):
2386         * src/libGLESv2/Texture.h:
2387         (Texture):
2388         (Texture2D):
2389         (TextureCubeMap):
2390         * src/libGLESv2/VertexDataManager.cpp:
2391         (gl::VertexDataManager::writeAttributeData):
2392         (gl::VertexDataManager::prepareVertexData):
2393         (gl::VertexDataManager::spaceRequired):
2394         (gl):
2395         * src/libGLESv2/VertexDataManager.h:
2396         (TranslatedAttribute):
2397         (VertexDataManager):
2398         * src/libGLESv2/libGLESv2.cpp:
2399         * src/libGLESv2/libGLESv2.def:
2400         * src/libGLESv2/libGLESv2.vcproj:
2401         * src/libGLESv2/utilities.cpp:
2402         (gl::IsInternalTextureTarget):
2403         * src/libGLESv2/utilities.h:
2404         (gl):
2405
2406 2012-03-09  Ashod Nakashian  <ashodnakashian@yahoo.com>
2407
2408         Bash scripts should support LF endings only
2409         https://bugs.webkit.org/show_bug.cgi?id=79509
2410
2411         Reviewed by David Kilzer.
2412
2413         * src/compiler/generate_parser.sh: Added property svn:eol-style.
2414
2415 2012-02-21  Sam Weinig  <sam@webkit.org>
2416
2417         Attempt to fix the Snow Leopard build.
2418
2419         * Configurations/Base.xcconfig:
2420
2421 2012-02-21  Sam Weinig  <sam@webkit.org>
2422
2423         Use libc++ when building with Clang on Mac
2424         https://bugs.webkit.org/show_bug.cgi?id=78981
2425
2426         Reviewed by Dan Bernstein.
2427
2428         * Configurations/Base.xcconfig:
2429
2430 2012-01-07  Chris Marrin  <cmarrin@apple.com>
2431
2432         Fixed a warning in GTK build of ANGLE
2433
2434         Unreviewed.
2435
2436         * src/compiler/DetectRecursion.cpp:
2437         (DetectRecursion::~DetectRecursion):
2438
2439 2012-01-06  Mark Rowe  <mrowe@apple.com>
2440
2441         Regenerate a few files with a more appropriate version of bison.
2442
2443         Rubber-stamped by Dan Bernstein.
2444
2445         * src/compiler/glslang.l: Tweak the input so that it generates code that compiles without warnings.
2446         * src/compiler/glslang_lex.cpp:
2447         * src/compiler/glslang_tab.cpp:
2448         * src/compiler/glslang_tab.h:
2449
2450 2012-01-06  Chris Marrin  <cmarrin@apple.com>
2451
2452         Update ANGLE in WebKit tree
2453         https://bugs.webkit.org/show_bug.cgi?id=75753
2454
2455         Reviewed by Simon Fraser.
2456
2457         Updated ANGLE to r939. Fixed a compiler error (missing case in switch statement)
2458         and added 5 new files to xcodeproj. Other than that it is a straight copy of
2459         the files from the ANGLE repository.
2460
2461         * ANGLE.xcodeproj/project.pbxproj:
2462         * include/EGL/eglext.h:
2463         * include/EGL/eglplatform.h:
2464         * include/GLES2/gl2ext.h:
2465         * include/GLSLANG/ShaderLang.h:
2466         * src/common/debug.cpp:
2467         (gl::output):
2468         (gl::trace):
2469         (gl::perfActive):
2470         (gl::ScopedPerfEventHelper::ScopedPerfEventHelper):
2471         (gl::ScopedPerfEventHelper::~ScopedPerfEventHelper):
2472         * src/common/version.h:
2473         * src/compiler/BaseTypes.h:
2474         (getBasicString):
2475         * src/compiler/BuiltInFunctionEmulator.cpp: Added.
2476         (BuiltInFunctionEmulator::BuiltInFunctionEmulator):
2477         (BuiltInFunctionEmulator::SetFunctionCalled):
2478         (BuiltInFunctionEmulator::OutputEmulatedFunctionDefinition):
2479         (BuiltInFunctionEmulator::IdentifyFunction):
2480         (BuiltInFunctionEmulator::MarkBuiltInFunctionsForEmulation):
2481         (BuiltInFunctionEmulator::Cleanup):
2482         (BuiltInFunctionEmulator::GetEmulatedFunctionName):
2483         * src/compiler/BuiltInFunctionEmulator.h: Added.
2484         * src/compiler/Compiler.cpp:
2485         (TCompiler::TCompiler):
2486         (TCompiler::compile):
2487         (TCompiler::clearResults):
2488         (TCompiler::detectRecursion):
2489         (TCompiler::getMappedNameMaxLength):
2490         (TCompiler::getBuiltInFunctionEmulator):
2491         * src/compiler/DetectRecursion.cpp: Added.
2492         (DetectRecursion::FunctionNode::FunctionNode):
2493         (DetectRecursion::FunctionNode::getName):
2494         (DetectRecursion::FunctionNode::addCallee):
2495         (DetectRecursion::FunctionNode::detectRecursion):
2496         (DetectRecursion::DetectRecursion):
2497         (DetectRecursion::~DetectRecursion):
2498         (DetectRecursion::visitAggregate):
2499         (DetectRecursion::detectRecursion):
2500         (DetectRecursion::findFunctionByName):
2501         * src/compiler/DetectRecursion.h: Added.
2502         * src/compiler/ExtensionBehavior.h:
2503         * src/compiler/ForLoopUnroll.cpp:
2504         (ForLoopUnroll::MarkForLoopsWithIntegerIndicesForUnrolling):
2505         * src/compiler/ForLoopUnroll.h:
2506         * src/compiler/Initialize.cpp:
2507         (BuiltInFunctionsCommon):
2508         (BuiltInFunctionsVertex):
2509         (BuiltInFunctionsFragment):
2510         (TBuiltIns::initialize):
2511         (IdentifyBuiltIns):
2512         (InitExtensionBehavior):
2513         * src/compiler/MapLongVariableNames.cpp:
2514         (MapLongVariableNames::MapLongVariableNames):
2515         (MapLongVariableNames::visitSymbol):
2516         (MapLongVariableNames::mapVaryingLongName):
2517         * src/compiler/MapLongVariableNames.h:
2518         * src/compiler/OutputGLSLBase.cpp:
2519         (TOutputGLSLBase::visitUnary):
2520         (TOutputGLSLBase::visitAggregate):
2521         * src/compiler/OutputHLSL.cpp:
2522         (sh::OutputHLSL::OutputHLSL):
2523         (sh::OutputHLSL::header):
2524         (sh::OutputHLSL::visitSymbol):
2525         (sh::OutputHLSL::visitAggregate):
2526         (sh::OutputHLSL::visitSelection):
2527         (sh::OutputHLSL::visitLoop):
2528         (sh::OutputHLSL::handleExcessiveLoop):
2529         (sh::OutputHLSL::addConstructor):
2530         (sh::OutputHLSL::decorate):
2531         (sh::OutputHLSL::decorateUniform):
2532         * src/compiler/OutputHLSL.h:
2533         * src/compiler/ParseHelper.cpp:
2534         (TParseContext::recover):
2535         (TParseContext::reservedErrorCheck):
2536         (TParseContext::constructorErrorCheck):
2537         (TParseContext::extensionErrorCheck):
2538         (TParseContext::supportsExtension):
2539         (TParseContext::enterStructDeclaration):
2540         (TParseContext::exitStructDeclaration):
2541         (TParseContext::structNestingErrorCheck):
2542         * src/compiler/ParseHelper.h:
2543         (TParseContext::TParseContext):
2544         * src/compiler/PoolAlloc.h:
2545         (pool_allocator::pool_allocator):
2546         (pool_allocator::operator=):
2547         (pool_allocator::setAllocator):
2548         (pool_allocator::getAllocator):
2549         * src/compiler/ShHandle.h:
2550         * src/compiler/ShaderLang.cpp:
2551         (checkActiveUniformAndAttribMaxLengths):
2552         (checkMappedNameMaxLength):
2553         (getVariableInfo):
2554         (ShInitBuiltInResources):
2555         (ShGetInfo):
2556         * src/compiler/SymbolTable.cpp:
2557         (TType::computeDeepestStructNesting):
2558         * src/compiler/TranslatorESSL.cpp:
2559         (TranslatorESSL::translate):
2560         (TranslatorESSL::writeExtensionBehavior):
2561         * src/compiler/TranslatorGLSL.cpp:
2562         (TranslatorGLSL::translate):
2563         * src/compiler/Types.h:
2564         (TType::TType):
2565         (TType::copyType):
2566         (TType::setStruct):
2567         (TType::getDeepestStructNesting):
2568         * src/compiler/UnfoldSelect.cpp:
2569         (sh::UnfoldSelect::traverse):
2570         (sh::UnfoldSelect::visitSelection):
2571         (sh::UnfoldSelect::visitLoop):
2572         (sh::UnfoldSelect::getNextTemporaryIndex):
2573         * src/compiler/UnfoldSelect.h:
2574         * src/compiler/ValidateLimitations.cpp:
2575         * src/compiler/ValidateLimitations.h:
2576         * src/compiler/VariableInfo.cpp:
2577         (getVariableDataType):
2578         * src/compiler/generate_glslang_lexer.sh: Removed.
2579         * src/compiler/generate_glslang_parser.sh: Removed.
2580         * src/compiler/generate_parser.sh: Added.
2581         * src/compiler/glslang.l:
2582         * src/compiler/glslang.y:
2583         * src/compiler/glslang_lex.cpp:
2584         (yy_get_previous_state):
2585         (yy_try_NUL_trans):
2586         * src/compiler/glslang_tab.cpp:
2587         * src/compiler/glslang_tab.h:
2588         * src/compiler/intermOut.cpp:
2589         (TOutputTraverser::visitAggregate):
2590         * src/compiler/intermediate.h:
2591         (TIntermUnary::TIntermUnary):
2592         (TIntermUnary::setUseEmulatedFunction):
2593         (TIntermUnary::getUseEmulatedFunction):
2594         (TIntermAggregate::TIntermAggregate):
2595         (TIntermAggregate::setUseEmulatedFunction):
2596         (TIntermAggregate::getUseEmulatedFunction):
2597         * src/compiler/osinclude.h:
2598         * src/compiler/ossource_posix.cpp:
2599         (OS_AllocTLSIndex):
2600         (OS_SetTLSValue):
2601         (OS_FreeTLSIndex):
2602         * src/compiler/preprocessor/atom.c:
2603         (GrowAtomTable):
2604         * src/compiler/preprocessor/length_limits.h: Added.
2605         * src/compiler/preprocessor/scanner.h:
2606         * src/libEGL/Display.cpp:
2607         (egl::Display::getDisplay):
2608         (egl::Display::Display):
2609         (egl::Display::~Display):
2610         (egl::Display::initialize):
2611         (egl::Display::terminate):
2612         (egl::Display::startScene):
2613         (egl::Display::endScene):
2614         (egl::Display::createDevice):
2615         (egl::Display::initializeDevice):
2616         (egl::Display::resetDevice):
2617         (egl::Display::createWindowSurface):
2618         (egl::Display::createOffscreenSurface):
2619         (egl::Display::createContext):
2620         (egl::Display::restoreLostDevice):
2621         (egl::Display::notifyDeviceLost):
2622         (egl::Display::isDeviceLost):
2623         (egl::Display::testDeviceLost):
2624         (egl::Display::testDeviceResettable):
2625         (egl::Display::getDXT1TextureSupport):
2626         (egl::Display::getDXT3TextureSupport):
2627         (egl::Display::getDXT5TextureSupport):
2628         (egl::Display::getFloat32TextureSupport):
2629         (egl::Display::getFloat16TextureSupport):
2630         (egl::Display::getTexturePool):
2631         (egl::Display::initExtensionString):
2632         * src/libEGL/Display.h:
2633         * src/libEGL/Surface.cpp:
2634         (egl::Surface::Surface):
2635         (egl::Surface::initialize):
2636         (egl::Surface::resetSwapChain):
2637         (egl::Surface::subclassWindow):
2638         (egl::Surface::unsubclassWindow):
2639         (egl::Surface::swap):
2640         (egl::Surface::postSubBuffer):
2641         (egl::Surface::isPostSubBufferSupported):
2642         * src/libEGL/Surface.h:
2643         * src/libEGL/libEGL.cpp:
2644         * src/libEGL/libEGL.rc:
2645         * src/libEGL/libEGL.vcproj:
2646         * src/libGLESv2/Buffer.cpp:
2647         (gl::Buffer::bufferSubData):
2648         * src/libGLESv2/Context.cpp:
2649         (gl::Context::Context):
2650         (gl::Context::makeCurrent):
2651         (gl::Context::markAllStateDirty):
2652         (gl::Context::markContextLost):
2653         (gl::Context::isContextLost):
2654         (gl::Context::setPackReverseRowOrder):
2655         (gl::Context::getPackReverseRowOrder):
2656         (gl::Context::deleteProgram):
2657         (gl::Context::getDrawFramebuffer):
2658         (gl::Context::bindDrawFramebuffer):
2659         (gl::Context::useProgram):
2660         (gl::Context::setFramebufferZero):
2661         (gl::Context::getCurrentProgram):
2662         (gl::Context::getBooleanv):
2663         (gl::Context::getIntegerv):
2664         (gl::Context::getQueryParameterInfo):
2665         (gl::Context::applyRenderTarget):
2666         (gl::Context::applyState):
2667         (gl::Context::applyVertexBuffer):
2668         (gl::Context::applyIndexBuffer):
2669         (gl::Context::applyShaders):
2670         (gl::Context::applyTextures):
2671         (gl::Context::readPixels):
2672         (gl::Context::clear):
2673         (gl::Context::drawArrays):
2674         (gl::Context::drawElements):
2675         (gl::Context::sync):
2676         (gl::Context::drawClosingLine):
2677         (gl::Context::getResetStatus):
2678         (gl::Context::isResetNotificationEnabled):
2679         (gl::Context::supportsDXT1Textures):
2680         (gl::Context::supportsDXT3Textures):
2681         (gl::Context::supportsDXT5Textures):
2682         (gl::Context::supportsFloat32Textures):
2683         (gl::Context::supportsFloat32LinearFilter):
2684         (gl::Context::supportsFloat32RenderableTextures):
2685         (gl::Context::supportsFloat16Textures):
2686         (gl::Context::supportsFloat16LinearFilter):
2687         (gl::Context::supportsFloat16RenderableTextures):
2688         (gl::Context::initExtensionString):
2689         (gl::Context::initRendererString):
2690         (gl::Context::getRendererString):
2691         (gl::Context::blitFramebuffer):
2692         (gl::VertexDeclarationCache::applyDeclaration):
2693         (gl::VertexDeclarationCache::markStateDirty):
2694         * src/libGLESv2/Context.h:
2695         * src/libGLESv2/Fence.cpp:
2696         (gl::Fence::testFence):
2697         (gl::Fence::getFenceiv):
2698         * src/libGLESv2/Framebuffer.cpp:
2699         (gl::Framebuffer::setColorbuffer):
2700         (gl::Framebuffer::setDepthbuffer):
2701         (gl::Framebuffer::setStencilbuffer):
2702         (gl::Framebuffer::getColorbuffer):
2703         (gl::Framebuffer::getDepthbuffer):
2704         (gl::Framebuffer::getStencilbuffer):
2705         (gl::Framebuffer::hasStencil):
2706         (gl::Framebuffer::completeness):
2707         (gl::DefaultFramebuffer::DefaultFramebuffer):
2708         * src/libGLESv2/Framebuffer.h:
2709         * src/libGLESv2/IndexDataManager.cpp:
2710         (gl::IndexDataManager::prepareIndexData):
2711         (gl::IndexBuffer::IndexBuffer):
2712         (gl::IndexBuffer::getSerial):
2713         (gl::IndexBuffer::issueSerial):
2714         (gl::StreamingIndexBuffer::reserveSpace):
2715         (gl::StaticIndexBuffer::reserveSpace):
2716         (gl::StaticIndexBuffer::lookupRange):
2717         (gl::StaticIndexBuffer::addRange):
2718         * src/libGLESv2/IndexDataManager.h:
2719         (gl::StaticIndexBuffer::IndexRange::operator<):
2720         * src/libGLESv2/Program.cpp:
2721         (gl::Uniform::Uniform):
2722         (gl::Uniform::isArray):
2723         (gl::UniformLocation::UniformLocation):
2724         (gl::Program::Program):
2725         (gl::Program::detachShader):
2726         (gl::Program::getUsedSamplerRange):
2727         (gl::Program::getSamplerMapping):
2728         (gl::Program::getUniformLocation):
2729         (gl::Program::setUniform1fv):
2730         (gl::Program::setUniform2fv):
2731         (gl::Program::setUniform3fv):
2732         (gl::transposeMatrix):
2733         (gl::Program::setUniformMatrix2fv):
2734         (gl::Program::setUniformMatrix3fv):
2735         (gl::Program::setUniformMatrix4fv):
2736         (gl::Program::getUniformfv):
2737         (gl::Program::getUniformiv):
2738         (gl::Program::applyUniforms):
2739         (gl::Program::compileToBinary):
2740         (gl::Program::linkVaryings):
2741         (gl::Program::link):
2742         (gl::Program::defineUniform):
2743         (gl::Program::createUniform):
2744         (gl::Program::decorateAttribute):
2745         (gl::Program::undecorateUniform):
2746         (gl::Program::applyUniformnbv):
2747         (gl::Program::applyUniformnfv):
2748         (gl::Program::applyUniform1iv):
2749         (gl::Program::applyUniform2iv):
2750         (gl::Program::applyUniform3iv):
2751         (gl::Program::applyUniform4iv):
2752         (gl::Program::applyUniformniv):
2753         (gl::Program::appendToInfoLogSanitized):
2754         (gl::Program::unlink):
2755         (gl::Program::getActiveUniform):
2756         (gl::Program::getActiveUniformCount):
2757         (gl::Program::getActiveUniformMaxLength):
2758         (gl::Program::validateSamplers):
2759         (gl::Program::initializeConstantHandles):
2760         (gl::Program::getDxCoordLocation):
2761         * src/libGLESv2/Program.h:
2762         * src/libGLESv2/Renderbuffer.cpp:
2763         (gl::RenderbufferInterface::RenderbufferInterface):
2764         (gl::RenderbufferInterface::getRedSize):
2765         (gl::RenderbufferInterface::getGreenSize):
2766         (gl::RenderbufferInterface::getBlueSize):
2767         (gl::RenderbufferInterface::getAlphaSize):
2768         (gl::RenderbufferInterface::getDepthSize):
2769         (gl::RenderbufferInterface::getStencilSize):
2770         (gl::RenderbufferTexture::RenderbufferTexture):
2771         (gl::RenderbufferTexture::~RenderbufferTexture):
2772         (gl::RenderbufferTexture::getRenderTarget):
2773         (gl::RenderbufferTexture::getDepthStencil):
2774         (gl::RenderbufferTexture::getWidth):
2775         (gl::RenderbufferTexture::getHeight):
2776         (gl::RenderbufferTexture::getInternalFormat):
2777         (gl::RenderbufferTexture::getD3DFormat):
2778         (gl::RenderbufferTexture::getSamples):
2779         (gl::RenderbufferTexture::getSerial):
2780         (gl::Renderbuffer::Renderbuffer):
2781         (gl::Renderbuffer::~Renderbuffer):
2782         (gl::Renderbuffer::getRenderTarget):
2783         (gl::Renderbuffer::getDepthStencil):
2784         (gl::Renderbuffer::getWidth):
2785         (gl::Renderbuffer::getHeight):
2786         (gl::Renderbuffer::getInternalFormat):
2787         (gl::Renderbuffer::getD3DFormat):
2788         (gl::Renderbuffer::getRedSize):
2789         (gl::Renderbuffer::getGreenSize):
2790         (gl::Renderbuffer::getBlueSize):
2791         (gl::Renderbuffer::getAlphaSize):
2792         (gl::Renderbuffer::getDepthSize):
2793         (gl::Renderbuffer::getStencilSize):
2794         (gl::Renderbuffer::getSamples):
2795         (gl::Renderbuffer::getSerial):
2796         (gl::Renderbuffer::setStorage):
2797         (gl::RenderbufferStorage::getD3DFormat):
2798         (gl::RenderbufferStorage::issueCubeSerials):
2799         (gl::Colorbuffer::Colorbuffer):
2800         (gl::Colorbuffer::getRenderTarget):
2801         (gl::Depthbuffer::Depthbuffer):
2802         (gl::Stencilbuffer::Stencilbuffer):
2803         * src/libGLESv2/Renderbuffer.h:
2804         (gl::RenderbufferInterface::~RenderbufferInterface):
2805         * src/libGLESv2/Shader.cpp:
2806         (gl::Shader::getTranslatedSourceLength):
2807         (gl::Shader::getSourceImpl):
2808         (gl::Shader::getSource):
2809         (gl::Shader::getTranslatedSource):
2810         * src/libGLESv2/Shader.h:
2811         * src/libGLESv2/Texture.cpp:
2812         (gl::ConvertTextureFormatType):
2813         (gl::IsTextureFormatRenderable):
2814         (gl::Image::Image):
2815         (gl::Image::~Image):
2816         (gl::Image::redefine):
2817         (gl::Image::createSurface):
2818         (gl::Image::lock):
2819         (gl::Image::unlock):
2820         (gl::Image::isRenderableFormat):
2821         (gl::Image::getD3DFormat):
2822         (gl::Image::getSurface):
2823         (gl::Image::setManagedSurface):
2824         (gl::Image::updateSurface):
2825         (gl::Image::loadData):
2826         (gl::Image::loadAlphaData):
2827         (gl::Image::loadAlphaFloatData):
2828         (gl::Image::loadAlphaHalfFloatData):
2829         (gl::Image::loadLuminanceData):
2830         (gl::Image::loadLuminanceFloatData):
2831         (gl::Image::loadLuminanceHalfFloatData):
2832         (gl::Image::loadLuminanceAlphaData):
2833         (gl::Image::loadLuminanceAlphaFloatData):
2834         (gl::Image::loadLuminanceAlphaHalfFloatData):
2835         (gl::Image::loadRGBUByteData):
2836         (gl::Image::loadRGB565Data):
2837         (gl::Image::loadRGBFloatData):
2838         (gl::Image::loadRGBHalfFloatData):
2839         (gl::Image::loadRGBAUByteDataSSE2):
2840         (gl::Image::loadRGBAUByteData):
2841         (gl::Image::loadRGBA4444Data):
2842         (gl::Image::loadRGBA5551Data):
2843         (gl::Image::loadRGBAFloatData):
2844         (gl::Image::loadRGBAHalfFloatData):
2845         (gl::Image::loadBGRAData):
2846         (gl::Image::loadCompressedData):
2847         (gl::FlipCopyDXT1BlockFull):
2848         (gl::FlipCopyDXT1BlockHalf):
2849         (gl::FlipCopyDXT3BlockFull):
2850         (gl::FlipCopyDXT3BlockHalf):
2851         (gl::FlipCopyDXT5BlockFull):
2852         (gl::FlipCopyDXT5BlockHalf):
2853         (gl::Image::loadDXT1Data):
2854         (gl::Image::loadDXT3Data):
2855         (gl::Image::loadDXT5Data):
2856         (gl::Image::copy):
2857         (gl::TextureStorage::TextureStorage):
2858         (gl::TextureStorage::~TextureStorage):
2859         (gl::TextureStorage::isRenderTarget):
2860         (gl::TextureStorage::isManaged):
2861         (gl::TextureStorage::getPool):
2862         (gl::TextureStorage::getTextureSerial):
2863         (gl::TextureStorage::issueTextureSerial):
2864         (gl::Texture::Texture):
2865         (gl::Texture::~Texture):
2866         (gl::Texture::setMinFilter):
2867         (gl::Texture::setMagFilter):
2868         (gl::Texture::setWrapS):
2869         (gl::Texture::setWrapT):
2870         (gl::Texture::setUsage):
2871         (gl::Texture::getMinFilter):
2872         (gl::Texture::getMagFilter):
2873         (gl::Texture::getWrapS):
2874         (gl::Texture::getWrapT):
2875         (gl::Texture::getUsage):
2876         (gl::Texture::setImage):
2877         (gl::Texture::setCompressedImage):
2878         (gl::Texture::subImage):
2879         (gl::Texture::subImageCompressed):
2880         (gl::Texture::getTexture):
2881         (gl::Texture::hasDirtyParameters):
2882         (gl::Texture::hasDirtyImages):
2883         (gl::Texture::resetDirty):
2884         (gl::Texture::getTextureSerial):
2885         (gl::Texture::getRenderTargetSerial):
2886         (gl::Texture::isImmutable):
2887         (gl::Texture::creationLevels):
2888         (gl::Texture::getBlitter):
2889         (gl::Texture::copyToRenderTarget):
2890         (gl::TextureStorage2D::TextureStorage2D):
2891         (gl::TextureStorage2D::~TextureStorage2D):
2892         (gl::TextureStorage2D::getSurfaceLevel):
2893         (gl::TextureStorage2D::getBaseTexture):
2894         (gl::TextureStorage2D::getRenderTargetSerial):
2895         (gl::Texture2D::Texture2D):
2896         (gl::Texture2D::~Texture2D):
2897         (gl::Texture2D::getWidth):
2898         (gl::Texture2D::getHeight):
2899         (gl::Texture2D::getInternalFormat):
2900         (gl::Texture2D::getType):
2901         (gl::Texture2D::redefineImage):
2902         (gl::Texture2D::setImage):
2903         (gl::Texture2D::bindTexImage):
2904         (gl::Texture2D::releaseTexImage):
2905         (gl::Texture2D::setCompressedImage):
2906         (gl::Texture2D::commitRect):
2907         (gl::Texture2D::copyImage):
2908         (gl::Texture2D::copySubImage):
2909         (gl::Texture2D::storage):
2910         (gl::Texture2D::isSamplerComplete):
2911         (gl::Texture2D::isMipmapComplete):
2912         (gl::Texture2D::getBaseTexture):
2913         (gl::Texture2D::createTexture):
2914         (gl::Texture2D::updateTexture):
2915         (gl::Texture2D::convertToRenderTarget):
2916         (gl::Texture2D::generateMipmaps):
2917         (gl::Texture2D::getRenderbuffer):
2918         (gl::Texture2D::getRenderTarget):
2919         (gl::Texture2D::getStorage):
2920         (gl::TextureStorageCubeMap::TextureStorageCubeMap):
2921         (gl::TextureStorageCubeMap::~TextureStorageCubeMap):
2922         (gl::TextureStorageCubeMap::getCubeMapSurface):
2923         (gl::TextureStorageCubeMap::getBaseTexture):
2924         (gl::TextureStorageCubeMap::getRenderTargetSerial):
2925         (gl::TextureCubeMap::TextureCubeMap):
2926         (gl::TextureCubeMap::~TextureCubeMap):
2927         (gl::TextureCubeMap::getWidth):
2928         (gl::TextureCubeMap::getHeight):
2929         (gl::TextureCubeMap::getInternalFormat):
2930         (gl::TextureCubeMap::getType):
2931         (gl::TextureCubeMap::setCompressedImage):
2932         (gl::TextureCubeMap::commitRect):
2933         (gl::TextureCubeMap::subImage):
2934         (gl::TextureCubeMap::subImageCompressed):
2935         (gl::TextureCubeMap::isSamplerComplete):
2936         (gl::TextureCubeMap::isCubeComplete):
2937         (gl::TextureCubeMap::isMipmapCubeComplete):
2938         (gl::TextureCubeMap::getBaseTexture):
2939         (gl::TextureCubeMap::createTexture):
2940         (gl::TextureCubeMap::updateTexture):
2941         (gl::TextureCubeMap::convertToRenderTarget):
2942         (gl::TextureCubeMap::setImage):
2943         (gl::TextureCubeMap::redefineImage):
2944         (gl::TextureCubeMap::copyImage):
2945         (gl::TextureCubeMap::copySubImage):
2946         (gl::TextureCubeMap::storage):
2947         (gl::TextureCubeMap::generateMipmaps):
2948         (gl::TextureCubeMap::getRenderbuffer):
2949         (gl::TextureCubeMap::getRenderTarget):
2950         (gl::TextureCubeMap::getStorage):
2951         * src/libGLESv2/Texture.h:
2952         (gl::Image::markDirty):
2953         (gl::Image::markClean):
2954         (gl::Image::getWidth):
2955         (gl::Image::getHeight):
2956         (gl::Image::getFormat):
2957         (gl::Image::getType):
2958         (gl::Image::isDirty):
2959         * src/libGLESv2/VertexDataManager.cpp:
2960         (gl::elementsInBuffer):
2961         (gl::VertexDataManager::VertexDataManager):
2962         (gl::VertexDataManager::writeAttributeData):
2963         (gl::VertexDataManager::prepareVertexData):
2964         (gl::VertexBuffer::VertexBuffer):
2965         (gl::VertexBuffer::getSerial):
2966         (gl::VertexBuffer::issueSerial):
2967         (gl::StreamingVertexBuffer::reserveRequiredSpace):
2968         (gl::StaticVertexBuffer::map):
2969         (gl::StaticVertexBuffer::reserveRequiredSpace):
2970         (gl::StaticVertexBuffer::lookupAttribute):
2971         * src/libGLESv2/VertexDataManager.h:
2972         (gl::ArrayVertexBuffer::size):
2973         * src/libGLESv2/geometry/IndexDataManager.cpp: Removed.
2974         * src/libGLESv2/geometry/IndexDataManager.h: Removed.
2975         * src/libGLESv2/geometry/VertexDataManager.cpp: Removed.
2976         * src/libGLESv2/geometry/VertexDataManager.h: Removed.
2977         * src/libGLESv2/geometry/vertexconversion.h: Removed.
2978         * src/libGLESv2/libGLESv2.cpp:
2979         (validateSubImageParams):
2980         (validReadFormatType):
2981         (Extension::glBindTexImage):
2982         * src/libGLESv2/libGLESv2.def:
2983         * src/libGLESv2/libGLESv2.rc:
2984         * src/libGLESv2/libGLESv2.vcproj:
2985         * src/libGLESv2/main.cpp:
2986         (gl::getNonLostContext):
2987         (gl::checkDeviceLost):
2988         * src/libGLESv2/main.h:
2989         * src/libGLESv2/utilities.cpp:
2990         (gl::UniformExternalComponentCount):
2991         (gl::UniformInternalComponentCount):
2992         (gl::UniformComponentSize):
2993         (gl::UniformInternalSize):
2994         (gl::UniformExternalSize):
2995         (gl::ComputeCompressedSize):
2996         (gl::IsCompressed):
2997         (gl::ExtractFormat):
2998         (gl::ExtractType):
2999         (dx2es::IsFloat32Format):
3000         (dx2es::IsFloat16Format):
3001         * src/libGLESv2/utilities.h:
3002         (isDeviceLostError):
3003
3004 2011-11-11  Darin Adler  <darin@apple.com>
3005
3006         * ANGLE.xcodeproj/project.pbxproj: Let a newer Xcode update this file.
3007         If an older Xcode downgrades this file and we have a risk of some kind of
3008         oscillating commit situation, please contact me so I know not to do this again.
3009
3010 2011-09-19  Adam Roben  <aroben@apple.com>
3011
3012         Let Xcode 4 do its thang with ANGLE.xcodeproj
3013
3014         * ANGLE.xcodeproj/project.pbxproj:
3015
3016 2011-09-13  Anders Carlsson  <andersca@apple.com>
3017
3018         Disable C++ exceptions when building with clang
3019         https://bugs.webkit.org/show_bug.cgi?id=68031
3020         <rdar://problem/9556880>
3021
3022         Reviewed by Mark Rowe.
3023
3024         * Configurations/Base.xcconfig:
3025
3026 2011-09-08  Andras Becsi  <andras.becsi@nokia.com>
3027
3028         [Qt] Build fails with strict compiler
3029         https://bugs.webkit.org/show_bug.cgi?id=67778
3030
3031         Reviewed by Csaba Osztrogonác.
3032
3033         * src/compiler/glslang_lex.cpp: Regenerate with generate_glslang_lexer.sh using a newer flex
3034         to suppress warning and fix the build when using [-Werror=unused-result]
3035
3036 2011-08-12  Mark Rowe  <mrowe@apple.com>
3037
3038         Be more forward-looking in the choice of compiler.
3039
3040         Rubber-stamped by Jon Honeycutt.
3041
3042         * Configurations/CompilerVersion.xcconfig:
3043
3044 2011-08-11  Renata Hodovan  <reni@webkit.org>
3045
3046         [Qt]Fix warnings after r92805.
3047
3048         Reviewed by Csaba Osztrogonác.
3049
3050         Control reached the end non-void functions.
3051
3052         * src/compiler/ossource_posix.cpp:
3053         (OS_AllocTLSIndex):
3054         (OS_SetTLSValue):
3055
3056 2011-08-11  Renata Hodovan  <reni@webkit.org>
3057
3058         Build fix on Qt Windows 32-bit Release/Debug after r92805.
3059
3060         Unreviewed.
3061
3062         * src/compiler/ossource_posix.cpp:
3063         (OS_FreeTLSIndex):
3064
3065 2011-08-04  Mark Rowe  <mrowe@apple.com>
3066
3067         Future-proof Xcode configuration settings.
3068
3069         * Configurations/Base.xcconfig:
3070         * Configurations/CompilerVersion.xcconfig:
3071         * Configurations/DebugRelease.xcconfig:
3072
3073 2011-06-30  Mark Rowe  <mrowe@apple.com>
3074
3075         Rubber-stamped by Dan Bernstein.
3076
3077         ANGLE shouldn't try to use internal SDKs. It doesn't need them!
3078
3079         * Configurations/Base.xcconfig:
3080
3081 2011-06-20  Zhenyao Mo  <zmo@google.com>
3082
3083         Reviewed by Kenneth Russell.
3084
3085         Update ANGLE to r696
3086         https://bugs.webkit.org/show_bug.cgi?id=56396
3087
3088         * ANGLE.xcodeproj/project.pbxproj:
3089         * include/EGL/eglext.h:
3090         * include/GLSLANG/ShaderLang.h:
3091         * src/build_angle.xcodeproj/project.pbxproj:
3092         * src/common/debug.cpp:
3093         (gl::output):
3094         (gl::trace):
3095         (gl::perfActive):
3096         (gl::ScopedPerfEventHelper::ScopedPerfEventHelper):
3097         (gl::ScopedPerfEventHelper::~ScopedPerfEventHelper):
3098         * src/common/debug.h:
3099         * src/common/version.h: Added.
3100         * src/compiler/CodeGenGLSL.cpp:
3101         (ConstructCompiler):
3102         * src/compiler/CodeGenHLSL.cpp:
3103         (ConstructCompiler):
3104         * src/compiler/Compiler.cpp:
3105         (TCompiler::compile):
3106         (TCompiler::mapLongVariableNames):
3107         (TCompiler::getMappedNameMaxLength):
3108         (TCompiler::getExtensionBehavior):
3109         * src/compiler/ConstantUnion.h:
3110         (ConstantUnion::operator==):
3111         (ConstantUnion::operator>):
3112         (ConstantUnion::operator<):
3113         * src/compiler/ExtensionBehavior.h:
3114         (getBehaviorString):
3115         * src/compiler/ForLoopUnroll.cpp: Added.
3116         (ForLoopUnroll::FillLoopIndexInfo):
3117         (ForLoopUnroll::Step):
3118         (ForLoopUnroll::SatisfiesLoopCondition):
3119         (ForLoopUnroll::NeedsToReplaceSymbolWithValue):
3120         (ForLoopUnroll::GetLoopIndexValue):
3121         (ForLoopUnroll::Push):
3122         (ForLoopUnroll::Pop):
3123         (ForLoopUnroll::getLoopIncrement):
3124         (ForLoopUnroll::evaluateIntConstant):
3125         * src/compiler/ForLoopUnroll.h: Added.
3126         (ForLoopUnroll::ForLoopUnroll):
3127         * src/compiler/Initialize.cpp:
3128         (BuiltInFunctionsVertex):
3129         * src/compiler/MapLongVariableNames.cpp: Added.
3130         (MapLongVariableNames::MapLongVariableNames):
3131         (MapLongVariableNames::visitSymbol):
3132         (MapLongVariableNames::visitConstantUnion):
3133         (MapLongVariableNames::visitBinary):
3134         (MapLongVariableNames::visitUnary):
3135         (MapLongVariableNames::visitSelection):
3136         (MapLongVariableNames::visitAggregate):
3137         (MapLongVariableNames::visitLoop):
3138         (MapLongVariableNames::visitBranch):
3139         (MapLongVariableNames::mapVaryingLongName):
3140         * src/compiler/MapLongVariableNames.h: Added.
3141         * src/compiler/OutputESSL.cpp: Added.
3142         (TOutputESSL::TOutputESSL):
3143         (TOutputESSL::writeVariablePrecision):
3144         * src/compiler/OutputESSL.h: Added.
3145         * src/compiler/OutputGLSL.cpp:
3146         (TOutputGLSL::TOutputGLSL):
3147         (TOutputGLSL::writeVariablePrecision):
3148         * src/compiler/OutputGLSL.h:
3149         * src/compiler/OutputGLSLBase.cpp: Added.
3150         (TOutputGLSLBase::TOutputGLSLBase):
3151         (TOutputGLSLBase::writeTriplet):
3152         (TOutputGLSLBase::writeVariableType):
3153         (TOutputGLSLBase::writeFunctionParameters):
3154         (TOutputGLSLBase::writeConstantUnion):
3155         (TOutputGLSLBase::visitSymbol):
3156         (TOutputGLSLBase::visitConstantUnion):
3157         (TOutputGLSLBase::visitBinary):
3158         (TOutputGLSLBase::visitUnary):
3159         (TOutputGLSLBase::visitSelection):
3160         (TOutputGLSLBase::visitAggregate):
3161         (TOutputGLSLBase::visitLoop):
3162         (TOutputGLSLBase::visitBranch):
3163         (TOutputGLSLBase::visitCodeBlock):
3164         * src/compiler/OutputGLSLBase.h: Added.
3165         (TOutputGLSLBase::objSink):
3166         * src/compiler/OutputHLSL.cpp:
3167         (sh::OutputHLSL::OutputHLSL):
3168         (sh::OutputHLSL::header):
3169         (sh::OutputHLSL::visitUnary):
3170         (sh::OutputHLSL::visitAggregate):
3171         (sh::OutputHLSL::visitSelection):
3172         (sh::OutputHLSL::visitLoop):
3173         (sh::OutputHLSL::visitBranch):
3174         (sh::OutputHLSL::handleExcessiveLoop):
3175         (sh::OutputHLSL::outputLineDirective):
3176         * src/compiler/OutputHLSL.h:
3177         * src/compiler/ParseHelper.cpp:
3178         (TParseContext::precisionErrorCheck):
3179         (TParseContext::constructorErrorCheck):
3180         (TParseContext::nonInitErrorCheck):
3181         * src/compiler/ParseHelper.h:
3182         (TParseContext::TParseContext):
3183         * src/compiler/ShHandle.h:
3184         * src/compiler/ShaderLang.cpp:
3185         (getVariableInfo):
3186         (ShConstructCompiler):
3187         (ShGetInfo):
3188         (ShGetActiveAttrib):
3189         (ShGetActiveUniform):
3190         * src/compiler/TranslatorESSL.cpp: Added.
3191         (TranslatorESSL::TranslatorESSL):
3192         (TranslatorESSL::translate):
3193         (TranslatorESSL::writeExtensionBehavior):
3194         * src/compiler/TranslatorESSL.h: Added.
3195         * src/compiler/ValidateLimitations.cpp:
3196         (ValidateLimitations::visitBinary):
3197         (ValidateLimitations::visitLoop):
3198         * src/compiler/ValidateLimitations.h:
3199         * src/compiler/VariableInfo.cpp:
3200         (getVariableInfo):
3201         (getBuiltInVariableInfo):
3202         (getUserDefinedVariableInfo):
3203         (CollectAttribsUniforms::visitAggregate):
3204         * src/compiler/VariableInfo.h:
3205         * src/compiler/VersionGLSL.cpp:
3206         (TVersionGLSL::visitSymbol):
3207         (TVersionGLSL::visitConstantUnion):
3208         (TVersionGLSL::visitBinary):
3209         (TVersionGLSL::visitUnary):
3210         (TVersionGLSL::visitSelection):
3211         (TVersionGLSL::visitAggregate):
3212         (TVersionGLSL::visitLoop):
3213         (TVersionGLSL::visitBranch):
3214         * src/compiler/VersionGLSL.h:
3215         * src/compiler/glslang.y:
3216         * src/compiler/glslang_tab.cpp:
3217         * src/compiler/glslang_tab.h:
3218         * src/compiler/intermediate.h:
3219         (TIntermLoop::TIntermLoop):
3220         (TIntermLoop::setUnrollFlag):
3221         (TIntermLoop::getUnrollFlag):
3222         (TIntermSymbol::TIntermSymbol):
3223         (TIntermSymbol::setId):
3224         (TIntermSymbol::setSymbol):
3225         (TIntermSymbol::getOriginalSymbol):
3226         (TIntermAggregate::TIntermAggregate):
3227         (TIntermAggregate::setEndLine):
3228         (TIntermAggregate::getEndLine):
3229         * src/compiler/preprocessor/atom.c:
3230         (AddString):
3231         * src/compiler/preprocessor/compile.h:
3232         * src/compiler/preprocessor/cpp.c:
3233         (CPPelse):
3234         (eval):
3235         (CPPif):
3236         (CPPifdef):
3237         (readCPPline):
3238         (ChkCorrectElseNesting):
3239         * src/compiler/preprocessor/cppstruct.c:
3240         (ResetPreprocessor):
3241         * src/compiler/preprocessor/scanner.c:
3242         (byte_scan):
3243         (yylex_CPP):
3244         * src/compiler/preprocessor/scanner.h:
3245         * src/libEGL/Config.cpp:
3246         (egl::Config::Config):
3247         (egl::Config::set):
3248         (egl::ConfigSet::add):
3249         (egl::ConfigSet::getConfigs):
3250         * src/libEGL/Config.h:
3251         * src/libEGL/Display.cpp:
3252         (egl::Display::Display):
3253         (egl::Display::initialize):
3254         (egl::Display::terminate):
3255         (egl::Display::getConfigAttrib):
3256         (egl::Display::createDevice):
3257         (egl::Display::createWindowSurface):
3258         (egl::Display::createOffscreenSurface):
3259         (egl::Display::createContext):
3260         (egl::Display::destroyContext):
3261         (egl::Display::isInitialized):
3262         (egl::Display::getAdapterIdentifier):
3263         (egl::Display::isDeviceLost):
3264         (egl::Display::getBufferPool):
3265         (egl::Display::initExtensionString):
3266         (egl::Display::getExtensionString):
3267         (egl::Display::getVertexTextureSupport):
3268         (egl::Display::getNonPower2TextureSupport):
3269         * src/libEGL/Display.h:
3270         (egl::Display::isD3d9ExDevice):
3271         * src/libEGL/Surface.cpp:
3272         (egl::Surface::Surface):
3273         (egl::Surface::initialize):
3274         (egl::Surface::release):
3275         (egl::Surface::resetSwapChain):
3276         (egl::SurfaceWindowProc):
3277         (egl::Surface::subclassWindow):
3278         (egl::Surface::unsubclassWindow):
3279         (egl::Surface::swap):
3280         (egl::Surface::getRenderTarget):
3281         (egl::Surface::getOffscreenTexture):
3282         (egl::Surface::getTextureFormat):
3283         (egl::Surface::getTextureTarget):
3284         (egl::Surface::setBoundTexture):
3285         (egl::Surface::getBoundTexture):
3286         (egl::Surface::getFormat):
3287         * src/libEGL/Surface.h:
3288         (egl::Surface::getShareHandle):
3289         * src/libEGL/libEGL.cpp:
3290         (validateDisplay):
3291         (validateConfig):
3292         (validateContext):
3293         (validateSurface):
3294         * src/libEGL/libEGL.rc: Added.
3295         * src/libEGL/libEGL.vcproj:
3296         * src/libEGL/main.cpp:
3297         (DllMain):
3298         * src/libEGL/main.h:
3299         * src/libEGL/resource.h: Added.
3300         * src/libGLESv2/Blit.cpp:
3301         (gl::Blit::initGeometry):
3302         (gl::Blit::copy):
3303         * src/libGLESv2/Blit.h:
3304         * src/libGLESv2/Buffer.cpp:
3305         (gl::Buffer::Buffer):
3306         (gl::Buffer::~Buffer):
3307         (gl::Buffer::bufferData):
3308         (gl::Buffer::bufferSubData):
3309         (gl::Buffer::getStaticVertexBuffer):
3310         (gl::Buffer::getStaticIndexBuffer):
3311         (gl::Buffer::invalidateStaticData):
3312         (gl::Buffer::promoteStaticUsage):
3313         * src/libGLESv2/Buffer.h:
3314         * src/libGLESv2/Context.cpp:
3315         (gl::Context::Context):
3316         (gl::Context::~Context):
3317         (gl::Context::makeCurrent):
3318         (gl::Context::markAllStateDirty):
3319         (gl::Context::setActiveSampler):
3320         (gl::Context::createFramebuffer):
3321         (gl::Context::createFence):
3322         (gl::Context::deleteFramebuffer):
3323         (gl::Context::deleteFence):
3324         (gl::Context::bindTexture2D):
3325         (gl::Context::bindTextureCubeMap):
3326         (gl::Context::getTexture2D):
3327         (gl::Context::getTextureCubeMap):
3328         (gl::Context::getSamplerTexture):
3329         (gl::Context::getIntegerv):
3330         (gl::Context::applyRenderTarget):
3331         (gl::Context::applyState):
3332         (gl::Context::applyVertexBuffer):
3333         (gl::Context::applyShaders):
3334         (gl::Context::applyTextures):
3335         (gl::Context::readPixels):
3336         (gl::Context::clear):
3337         (gl::Context::drawArrays):
3338         (gl::Context::drawElements):
3339         (gl::Context::finish):
3340         (gl::Context::flush):
3341         (gl::Context::drawClosingLine):
3342         (gl::Context::getMaximumVertexTextureImageUnits):
3343         (gl::Context::getMaximumCombinedTextureImageUnits):
3344         (gl::Context::supportsNonPower2Texture):
3345         (gl::Context::detachTexture):
3346         (gl::Context::getIncompleteTexture):
3347         (gl::Context::initExtensionString):
3348         (gl::Context::blitFramebuffer):
3349         (gl::VertexDeclarationCache::VertexDeclarationCache):
3350         (gl::VertexDeclarationCache::~VertexDeclarationCache):
3351         (gl::VertexDeclarationCache::applyDeclaration):
3352         * src/libGLESv2/Context.h:
3353         * src/libGLESv2/Framebuffer.cpp:
3354         (gl::Framebuffer::lookupRenderbuffer):
3355         (gl::Framebuffer::completeness):
3356         * src/libGLESv2/Framebuffer.h:
3357         * src/libGLESv2/HandleAllocator.cpp: Added.
3358         (gl::HandleAllocator::HandleAllocator):
3359         (gl::HandleAllocator::~HandleAllocator):
3360         (gl::HandleAllocator::setBaseHandle):
3361         (gl::HandleAllocator::allocate):
3362         (gl::HandleAllocator::release):
3363         * src/libGLESv2/HandleAllocator.h: Added.
3364         * src/libGLESv2/IndexDataManager.cpp: Added.
3365         (gl::IndexDataManager::IndexDataManager):
3366         (gl::IndexDataManager::~IndexDataManager):
3367         (gl::convertIndices):
3368         (gl::computeRange):
3369         (gl::IndexDataManager::prepareIndexData):
3370         (gl::IndexDataManager::indexSize):
3371         (gl::IndexDataManager::typeSize):
3372         (gl::IndexBuffer::IndexBuffer):
3373         (gl::IndexBuffer::~IndexBuffer):
3374         (gl::IndexBuffer::getBuffer):
3375         (gl::IndexBuffer::unmap):
3376         (gl::StreamingIndexBuffer::StreamingIndexBuffer):
3377         (gl::StreamingIndexBuffer::~StreamingIndexBuffer):
3378         (gl::StreamingIndexBuffer::map):
3379         (gl::StreamingIndexBuffer::reserveSpace):
3380         (gl::StaticIndexBuffer::StaticIndexBuffer):
3381         (gl::StaticIndexBuffer::~StaticIndexBuffer):
3382         (gl::StaticIndexBuffer::map):
3383         (gl::StaticIndexBuffer::reserveSpace):
3384         (gl::StaticIndexBuffer::lookupType):
3385         (gl::StaticIndexBuffer::lookupRange):
3386         (gl::StaticIndexBuffer::addRange):
3387         * src/libGLESv2/IndexDataManager.h: Added.
3388         (gl::IndexBuffer::size):
3389         * src/libGLESv2/Program.cpp:
3390         (gl::Program::getSemanticIndex):
3391         (gl::Program::getSamplerMapping):
3392         (gl::Program::getSamplerTextureType):
3393         (gl::Program::compileToBinary):
3394         (gl::Program::packVaryings):
3395         (gl::Program::linkVaryings):
3396         (gl::Program::link):
3397         (gl::Program::linkUniforms):
3398         (gl::Program::defineUniform):
3399         (gl::Program::applyUniform1iv):
3400         (gl::Program::appendToInfoLogSanitized):
3401         (gl::Program::unlink):
3402         (gl::Program::getActiveUniformMaxLength):
3403         (gl::Program::validate):
3404         (gl::Program::validateSamplers):
3405         * src/libGLESv2/Program.h:
3406         * src/libGLESv2/Renderbuffer.cpp:
3407         (gl::Renderbuffer::getWidth):
3408         (gl::Renderbuffer::getHeight):
3409         (gl::Renderbuffer::getInternalFormat):
3410         (gl::Renderbuffer::getRedSize):
3411         (gl::Renderbuffer::getGreenSize):
3412         (gl::Renderbuffer::getBlueSize):
3413         (gl::Renderbuffer::getAlphaSize):
3414         (gl::Renderbuffer::getDepthSize):
3415         (gl::Renderbuffer::getStencilSize):
3416         (gl::Renderbuffer::getSamples):
3417         (gl::RenderbufferStorage::RenderbufferStorage):
3418         (gl::RenderbufferStorage::getWidth):
3419         (gl::RenderbufferStorage::getHeight):
3420         (gl::RenderbufferStorage::getInternalFormat):
3421         (gl::RenderbufferStorage::getRedSize):