|
c8716df9
|
2015-02-26T17:17:22
|
|
Fix an issue with handling an error case inside ValidateSwitch
In case a condition with a wrong type is given to a case statement, it
generates an error but the compiler recovers. This caused ValidateSwitch
to assert. Fix this.
BUG=angle:921
Change-Id: I7949798cab923c2b168817471896470c6c611878
Reviewed-on: https://chromium-review.googlesource.com/254080
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
eea095e1
|
2015-01-23T14:06:50
|
|
Fix and reenable MipmapTests in release mode
Change-Id: Ia702abedc261d717c24152cb207ac80393ac864f
Reviewed-on: https://chromium-review.googlesource.com/242980
Reviewed-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
482907eb
|
2015-02-23T16:56:33
|
|
Set symbol operations at insertion.
BUG=angle:926
Change-Id: Ifc8f62ebe1277214a4d3fbd5c56eb5faeff8e389
Reviewed-on: https://chromium-review.googlesource.com/251650
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
58646526
|
2015-02-26T16:04:28
|
|
Pipe the ProgramBinary functions to the OES implementations.
BUG:462020
Change-Id: Ic567bf3d56d551716f1915a208003a7699abe6e6
Reviewed-on: https://chromium-review.googlesource.com/254300
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6036a1fe
|
2015-02-26T10:18:26
|
|
Update failing WebGL tests list.
Change-Id: Ib141eaebe14a6bf80efa2bcdfec3371ac1a59b09
Reviewed-on: https://chromium-review.googlesource.com/254062
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
791a11e9
|
2015-02-26T12:31:24
|
|
Temporarily disable OpenGL tests.
Change-Id: I3281b77e9876fc9a336b585af422e790bd73e11f
Reviewed-on: https://chromium-review.googlesource.com/254130
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
91a080d8
|
2015-02-26T11:07:31
|
|
Fix GL typedef conflicts.
Moved typedefs to the global namespace to avoid future name conflicts.
Change-Id: I70bd47d2516964cd040df48c0b2ca50bc32ba851
Reviewed-on: https://chromium-review.googlesource.com/254090
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e9cc469f
|
2015-02-19T16:00:13
|
|
Accept mismatching auxiliary interpolations.
The ES3.1 spec, and discussion on Khronos.org, confirm that dEQP is
correct in accepting mismatching centroid specifiers in shader
linkage. Mismatching flat/smooth is still a link error.
Fixes:
shaders.linkage.varying.rules.differing_interpolation_2
Change-Id: I3016f4147e7c1b16b02371ee95866c8daf826212
Reviewed-on: https://chromium-review.googlesource.com/251205
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a2643b64
|
2015-02-19T11:07:56
|
|
Add UMA histogram for D3D9 init results.
Similar to D3D11 results, this can add statistics for the result of
initializing the D3D9 Renderer.
BUG=436191
Change-Id: I746c95a8dbb27456613844fde816e17352dc4b8d
Reviewed-on: https://chromium-review.googlesource.com/248660
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b9293977
|
2015-02-19T11:07:54
|
|
Add UMA histogram for D3D11 init failures.
This will give ANGLE in Chrome a sense of device init calls fails in
D3D11, and why.
BUG=436191
Change-Id: Ia7b1bfa334cec595b6f0265357385d0dcc2d6cbf
Reviewed-on: https://chromium-review.googlesource.com/248632
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5cc9ac85
|
2015-02-20T11:27:56
|
|
Fix shadow samplers with textureProj and vertex shaders.
Fixes:
dEQP-GLES3.functional.shaders.texture_functions.textureproj.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureproj.sampler2dshadow_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_bias_fragment
and some of:
dEQP-GLES3.functional.shaders.texture_functions.texture*.sampler2dshadow_vertex
BUG=angle:925
Change-Id: I080e379ded95469f0486ae9c8bb1756842118a2d
Reviewed-on: https://chromium-review.googlesource.com/251530
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
36c79011
|
2015-02-24T11:47:20
|
|
Implement basic functionality in BufferGL.
BUG=angle:881
Change-Id: I8d761741d204d26cea1c87eec725bc8ebaaaa584
Reviewed-on: https://chromium-review.googlesource.com/252800
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
63cbace6
|
2015-02-26T10:03:12
|
|
Rename StateManagerGL::setProgram to useProgram.
BUG=angle:882
Change-Id: I4046e23bf720690869558fa6a5528d40c4b3bfa3
Reviewed-on: https://chromium-review.googlesource.com/254070
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ab249d18
|
2015-02-26T09:56:23
|
|
Temporarily disable WGL debug contexts.
Change-Id: I62f29b8012386cd57181621e0854aa5a8ce534dd
Reviewed-on: https://chromium-review.googlesource.com/254061
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ac5274df
|
2015-02-20T10:19:08
|
|
Add validation for the structure of switch statements
Implement a traverser to check for the following errors:
-More than one default or replicated constant expression
-No statement between a label and the end of a switch statement
-Statements in a switch statement before the first case statement
-Mismatch between the type of init-expression and type of a case label
-Case or default label nested inside other control flow nested within the
corresponding switch
Tested by manually disabling shading language version checks for switch
and by manually enabling case statements in a Chromium build and checking
that the expected errors are generated.
BUG=angle:921
Change-Id: I99c49c17c8b520849adbe4d8521e46cb10e20e41
Reviewed-on: https://chromium-review.googlesource.com/251524
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
3c1dfb5a
|
2015-02-20T11:34:03
|
|
Add stubs for switch and case output
BUG=angle:921
Change-Id: I58bd645a8d53ef5bad9b680e54c8948d50932fca
Reviewed-on: https://chromium-review.googlesource.com/251525
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b1f435e4
|
2015-02-20T10:01:01
|
|
Implement basic functionality of ProgramGL.
BUG=angle:882
Change-Id: I1d859197011081729c4c5733b78ac10491fe926c
Reviewed-on: https://chromium-review.googlesource.com/251542
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f1e85927
|
2015-02-23T14:40:04
|
|
Add test for very basic operations to enable as GL functionality is added.
Add OpenGL and OpenGLES platform types for the ANGLE tests.
Comment out some UNIMPLEMENTEDs that tests using OpenGL trigger.
BUG=angle:882
Change-Id: I7f85eed184f7cebd25e2521d793fc9c394b704ce
Reviewed-on: https://chromium-review.googlesource.com/252252
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
86803677
|
2015-02-23T14:35:20
|
|
Update Display to allow for changing implementation objects.
Previously it was possible to change from a D3D9 to D3D11 display because
both were implemented with a DisplayD3D. Now that there is a DisplayGL,
the DisplayImpl must be updated while maintaining the same EGLDisplay
value.
Allow the value of Display::mImplementation to be updated when the display
is not already initialized.
BUG=angle:890
Change-Id: Ic18a8a120218cd130a71b9aa044b6ec00006d6a0
Reviewed-on: https://chromium-review.googlesource.com/252250
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
99a3a9b2
|
2015-02-24T15:55:19
|
|
Hide gtest and gmock internal standalone targets.
Don't expose these on the Chromium (non-standalone) build. This fixes
some missing file warnings for the msvs-ninja build.
BUG=angle:928
BUG=459058
Change-Id: I8932c31223347358070955b33995a3e973c359b7
Reviewed-on: https://chromium-review.googlesource.com/253001
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: bratell at Opera <bratell@opera.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
73941deb
|
2015-02-25T14:34:49
|
|
Disable the HLSL code in Angle if it is not being used.
We're only using the HLSL code in Windows so
it's not necessary to compile and distribute it on other platforms.
This adds a defined ANGLE_ENABLE_HLSL that can be checked in files that
are used by non-HLSL code as well. Mostly the HLSL code is just not
include by the build system.
Details of the space savings (heavily truncated)
Total change: -165717 bytes
===========================
-606 - Source: angle/src/common/utilities.cpp
-627 - Source: angle/src/compiler/translator/FlagStd140Structs.cpp
-695 - Source: /usr/include/c++/4.8/bits/stl_algo.h
-710 - Source: angle/src/compiler/translator/TranslatorHLSL.cpp
-713 - Source: angle/src/compiler/translator/IntermNode.h
-863 - Source: /usr/include/c++/4.8/bits/stl_map.h
-935 - Source: angle/src/compiler/translator/blocklayout.cpp
-1515 - Source: angle/src/compiler/translator/BuiltInFunctionEmulator.cpp
-1655 - Source: angle/src/compiler/translator/UnfoldShortCircuit.cpp
-2375 - Source: /usr/include/c++/4.8/bits/vector.tcc
-3135 - Source: angle/src/compiler/translator/RewriteElseBlocks.cpp
-4656 - Source: angle/src/compiler/translator/UtilsHLSL.cpp
-5265 - Source: angle/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp
-6505 - Source: /usr/include/c++/4.8/bits/stl_tree.h
-11480 - Source: angle/src/compiler/translator/UniformHLSL.cpp
-13580 - Source: angle/src/compiler/translator/StructureHLSL.cpp
-18964 - Source: ??
(constant strings and a few vtbls)
-89332 - Source: angle/src/compiler/translator/OutputHLSL.cpp
Change-Id: I23ccc98abd0a21f847dd34f9482800b3ba679d56
Reviewed-on: https://chromium-review.googlesource.com/251528
Tested-by: bratell at Opera <bratell@opera.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
53f076fa
|
2015-02-20T10:55:14
|
|
Add basic error checks for switch and case
Check that the case labels have constant scalar integers, and that switch
statements are initialized with scalar integers. Also check that case and
default labels do not exist outside switch statements. Allow break
statements inside switch statements.
Tested by manually disabling shading language version checks for switch
in a Chromium build and checking that the expected errors are generated.
BUG=angle:921
Change-Id: Ibe83d0db52958c493ded5640d4babf670dc02d55
Reviewed-on: https://chromium-review.googlesource.com/251523
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
a3a36664
|
2015-02-17T13:46:51
|
|
Implement parsing switch statements
Put in some groundwork for parsing switch statements and case labels in
the parser, including definitions for IntermNode classes. Intermediate
functions for adding the statements are stubbed to only generate errors
for now.
Tested by manually disabling shading language version checks for switch
in a Chromium build and checking that the expected errors are generated.
BUG=angle:921
Change-Id: I064b3e0c4c1b724a083cf5bc78eebfdd3794eb1b
Reviewed-on: https://chromium-review.googlesource.com/250380
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
a6d110e2
|
2015-02-24T16:15:03
|
|
Attempt shader compilation without unroll and flatten with error X4014.
BUG=angle:917
Change-Id: Ie5b9a673f4af7241576cbe73ac96a7fb518af798
Reviewed-on: https://chromium-review.googlesource.com/252986
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
9ddd5150
|
2015-02-23T13:45:28
|
|
Embed rapidjson sources.
This makes integration with Chrome much easier: Chrome won't
have to pull sources from github or an internal mirror, and
it won't duplicate the base json library.
This should also fix warnings about missing headers with
building Chromium gyp with the ninja msvs generator.
BUG=459058
Change-Id: Ie97cfde9b848a9099da696e027887bcc07b55e08
Reviewed-on: https://chromium-review.googlesource.com/252073
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
49300865
|
2015-02-20T14:54:49
|
|
Refactor validating jump statements out of glslang.y
Move the logic to ParseContext. This will simplify changing the logic for
the break statement that is needed to implement switch.
BUG=angle:921, angle:911
TEST=WebGL conformance tests
Change-Id: Ib8bbc7075c05d345e90377202b5446fb3307f94c
Reviewed-on: https://chromium-review.googlesource.com/251522
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
f3cc4aef
|
2015-02-23T13:51:25
|
|
Use generic types to compact the symbol table initialization.
Just like in the spec text, use symbolic types that represent multiple
concrete types. The few signatures that get generated more than once
are only added to the symbol table once because it ignores duplicates.
BUG=angle:926
Change-Id: I216f03d22502b724dbefc87c5a021d6021c3a434
Reviewed-on: https://chromium-review.googlesource.com/251620
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nicolas Capens <capn@chromium.org>
|
|
e6d14cc3
|
2015-02-20T12:32:58
|
|
Updated instanced pointsprite emulation to be more resilient to driver differences.
Change-Id: I89e5b5a2d2c0363ae07d5ba918187cb0d7056ac5
Reviewed-on: https://chromium-review.googlesource.com/251680
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
94463d58
|
2015-02-18T13:09:37
|
|
Add a state manager for the currently applied GL state.
BUG=angle:883
Change-Id: Ie69c883c5ee539f911480fdcd9e73c46a3001b33
Reviewed-on: https://chromium-review.googlesource.com/250930
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
295ed4c4
|
2015-02-20T09:58:25
|
|
Implement ShaderGL.
BUG=angle:882
Change-Id: I1a8c7b551b308c9362e56ce564ebde7d579c05a3
Reviewed-on: https://chromium-review.googlesource.com/251541
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
7825f619
|
2014-11-26T16:19:41
|
|
Update ANGLE_platform_angle_d3d to use a device type enum instead of WARP bool.
BUG=angle:490
Change-Id: I1555e7f09b23138753e52ddf720d088587f7cadb
Reviewed-on: https://chromium-review.googlesource.com/232104
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2fa660ba
|
2015-02-20T13:01:34
|
|
Add missing Display::getImplementation.
Change-Id: I220ffefcbf9bc988d986e729961c9a893d6b5159
Reviewed-on: https://chromium-review.googlesource.com/251580
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6b19d765
|
2015-02-19T09:40:39
|
|
Implement missing variants of abs/sign
This change adds ANGLE support for abs/sign variants introduced
in ESSL3.
BUG=angle:923
TEST=Unit tests, dEQP tests
Unit Tests:
TypeTrackingTest.BuiltInAbsSignFunctionFloatResultTypeAndPrecision
TypeTrackingTest.BuiltInAbsSignFunctionIntResultTypeAndPrecision
dEQP tests passing 100% because of this change:
dEQP-GLES3.functional.shaders.builtin_functions.common.abs
dEQP-GLES3.functional.shaders.builtin_functions.common.sign
Change-Id: I2a3b028611f0eaaac3c031f8926d34a0e146663d
Reviewed-on: https://chromium-review.googlesource.com/251491
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
4ebb82e5
|
2015-02-20T16:51:49
|
|
Disable warning 4251 for ShaderVars.h.
Exporting STL classes from a DLL produces a warning on MSVS.
This warning would only show up for component builds.
Change-Id: I1bd9b820a45c04f92b0278d7018507d6a2bc7936
Reviewed-on: https://chromium-review.googlesource.com/251704
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0d300ca7
|
2015-02-18T13:44:15
|
|
Enable some more MSVS compiler warnings.
Also add comments explaining why the one that are still around are still
around.
Change-Id: Id8ce1fa3fe2a3bc97a179018737cc8d027b1068a
Reviewed-on: https://chromium-review.googlesource.com/250878
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
|
|
c415283b
|
2015-02-20T09:57:29
|
|
Implement CompilerGL.
BUG=angle:882
Change-Id: I6fd426b19677b51f4df74d495acc9a6fde9822e8
Reviewed-on: https://chromium-review.googlesource.com/251540
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
29190088
|
2015-02-20T16:42:54
|
|
Make Angle code 40 KB smaller by using string literals directly.
The implicit conversion of hundreds of string literals
to TString generated a lot of machine code. By keeping them
as string literals all the way the code will be smaller and faster.
This is the change with clang for x64 (note VisitUnary in particular):
Total change: -41392 bytes
==========================
2 added, totalling +469 bytes across 1 sources
2 removed, totalling -472 bytes across 1 sources
5 shrunk, for a net change of -41389 bytes (54126 bytes before, 12737 bytes after) across 1 sources
279692 unchanged, totalling 51433327 bytes
------------------------------------------------------------------------------------------------------------------------------------
-41392 - Source: /home/bratell/src/chromium/src/third_party/angle/src/compiler/translator/OutputHLSL.cpp - (gained 469, lost 41861)
------------------------------------------------------------------------------------------------------------------------------------
New symbols:
+328: sh::OutputHLSL::outputConstructor(Visit, TType const&, char const*, TVector<TIntermNode*> const*) type=t, size=328 bytes
+141: sh::OutputHLSL::outputTriplet(Visit, char const*, char const*, char const*) type=t, size=141 bytes
Removed symbols:
-133: sh::OutputHLSL::outputTriplet(Visit, std::basic_string<char, std::char_traits<char>, pool_allocator<char> > const&, std::basic_string<char, std::char_traits<char>, pool_allocator<char> > const&, std::basic_string<char, std::char_traits<char>, pool_allocator<char> > const&) type=t, size=133 bytes
-339: sh::OutputHLSL::outputConstructor(Visit, TType const&, std::basic_string<char, std::char_traits<char>, pool_allocator<char> > const&, TVector<TIntermNode*> const*) type=t, size=339 bytes
Shrunk symbols:
-388: sh::OutputHLSL::writeEmulatedFunctionTriplet(Visit, char const*) type=t, (was 628 bytes, now 240 bytes)
-714: sh::OutputHLSL::visitBranch(Visit, TIntermBranch*) type=t, (was 1017 bytes, now 303 bytes)
-9738: sh::OutputHLSL::visitAggregate(Visit, TIntermAggregate*) type=t, (was 17609 bytes, now 7871 bytes)
-14132: sh::OutputHLSL::visitBinary(Visit, TIntermBinary*) type=t, (was 17627 bytes, now 3495 bytes)
-16417: sh::OutputHLSL::visitUnary(Visit, TIntermUnary*) type=t, (was 17245 bytes, now 828 bytes)
Change-Id: Id0f87d72f6d7f1ab7b543f0d28d5a8b7c7db9ec7
Reviewed-on: https://chromium-review.googlesource.com/251090
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: bratell at Opera <bratell@opera.com>
|
|
aff43af9
|
2015-02-19T16:23:19
|
|
Load all core WGL functions.
BUG=angle:879
Change-Id: If204156e69480cd7e1e7c43db8496dd150ac9e15
Reviewed-on: https://chromium-review.googlesource.com/251241
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ea8ae897
|
2015-02-19T15:09:30
|
|
Expose FunctionsWGL::getProcAddress.
Change-Id: I263f00e67eb3243c661de8f949933ea56e34d4b5
Reviewed-on: https://chromium-review.googlesource.com/251220
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
80d934bb
|
2015-02-19T10:16:12
|
|
Enable MSVS warning 4512.
Fix up the missing DISALLOW_COPY_AND_ASSIGN macros and various small
problems preventing us from turning on this warning. This should
ensure we more often use the DISALLOW macro going forward.
Change-Id: I2e1a9d23a31a51279a577fad8dffb8c1530e2ee8
Reviewed-on: https://chromium-review.googlesource.com/251100
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
7c1f6f19
|
2015-02-19T18:56:09
|
|
Revert "Implement missing variants of abs/sign"
This for some reason is failing angle_unittests:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28NVIDIA%29/builds/13296
Happens across platforms.
This reverts commit 3e142e47cc5b40564bcdba4252fd326bc28ca343.
Change-Id: Ideb20457546c0dec10c9584182cc8d5ead42309d
Reviewed-on: https://chromium-review.googlesource.com/251160
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
32334afe
|
2015-01-30T11:38:21
|
|
Implement the copy from a 3D texture to Image11.
Fixes the generation of 3D texture mipmaps.
BUG=angle:915
Change-Id: Icc0c91099f60713d511ebe1a2248a21b63efddaa
Reviewed-on: https://chromium-review.googlesource.com/244720
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
|
|
b6e07a6a
|
2015-02-16T12:22:10
|
|
Implement ESSL3 modf
This is the first built-in function that has an out parameter, so l-value
checks are added for built-ins.
BUG=angle:918
Change-Id: Ifd5befe955224f706f864e25107879c9cdce9e9f
Reviewed-on: https://chromium-review.googlesource.com/250780
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
481373d8
|
2015-02-16T16:54:12
|
|
Fix GetShaderPrecisionFormat to return correct values on DX11
The integer precision is different on DirectX 9 and 11 backends. DirectX
11 guarantees native 32-bit integers.
BUG=angle:919
Change-Id: I7619e66f8aaa1177c32b6da185fe805ce8a19b71
Reviewed-on: https://chromium-review.googlesource.com/250280
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
3e142e47
|
2015-02-19T09:40:39
|
|
Implement missing variants of abs/sign
This change adds ANGLE support for abs/sign variants introduced
in ESSL3.
BUG=angle:923
TEST=dEQP tests
Tests passing 100% because of this change:
dEQP-GLES3.functional.shaders.builtin_functions.common.abs
dEQP-GLES3.functional.shaders.builtin_functions.common.sign
Change-Id: If22032be2c1ed08451275262e311ef5ac613d45e
Reviewed-on: https://chromium-review.googlesource.com/251060
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ed6be7e6
|
2015-02-18T16:28:57
|
|
Enable MSVS warning 4530.
This forces us to not use exceptions when they aren't enabled.
Change-Id: I6abaf08ca4c275bd2fa0625905fd1de3448237ce
Reviewed-on: https://chromium-review.googlesource.com/250901
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
|
|
6df9b37d
|
2015-02-18T21:28:19
|
|
Revert "Re-resubmit "Compile the D3D11 VS and PS on separate threads at GL link time""
Fails clang-win again. Apparently Clang mimics MSVS.
This reverts commit af1bdff62ec4cc80b47fbac7e5d973f6f7225036.
Change-Id: I48a503889a9e905fcdc9f101dbf98f7cb7912279
Reviewed-on: https://chromium-review.googlesource.com/250882
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5feea562
|
2015-02-17T16:03:16
|
|
Add ANGLE platform implementation template.
The platform implementation allows the app layer to pass in an
object, on which ANGLE can call virtual methods. Our current
platform will handle trace events, for app profiling, and
histogram records for statistics. The platform approach gives
a much more robust approach than using entry points for every
piece of functionality, and is based on the interop with Blink.
The default platform implementation does a no-op on every call.
The destructor is also private, to ensure we do not call the
destructor of the passed-in class.
BUG=436191
Change-Id: I05641b89a48a9cff81ced059518fceb5aa6c883b
Reviewed-on: https://chromium-review.googlesource.com/248631
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
32b5b147
|
2015-02-18T12:54:39
|
|
Fix loaded GL entry points using the wrong call type.
BUG=angle:879
Change-Id: Ida65d67d2935480dfe584026d37fb68cd2ab39d6
Reviewed-on: https://chromium-review.googlesource.com/250823
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
3eab00a0
|
2015-02-12T16:02:39
|
|
Fix constant folding integer modulus
Constant folding % used to generate results from division instead of
results from modulus. Fix this and introduce a test for this and other
integer constant folding, that checks that the right constant values are
found in the IntermNode tree.
BUG=angle:916
TEST=angle_unittests
Change-Id: I75e59b7734eb206378a1b2957af0a5437a90097c
Reviewed-on: https://chromium-review.googlesource.com/249691
Reviewed-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
0c1726e6
|
2015-02-18T14:35:02
|
|
Implement isnan/isinf
This change adds ANGLE support for isnan/isinf.
BUG=angle:922
TEST=dEQP tests:
dEQP-GLES3.functional.shaders.builtin_functions.common.isnan.*
(high precision tests still fail)
Tests passing 100% because of this change:
dEQP-GLES3.functional.shaders.builtin_functions.common.isinf.*
Reduced number of errors in tests:
EQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan.*
dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_*
Change-Id: I52bf18b59365ea7031746ae840550162d7e6b96e
Reviewed-on: https://chromium-review.googlesource.com/250761
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
2b45573b
|
2015-02-17T20:24:59
|
|
Implement missing vector relational functions
This change adds ANGLE support for following vector relational
function variants introduced in GLES3:
bvec lessThan(uvec x, uvec y)
bvec lessThanEqual(uvec x, uvec y)
bvec greaterThan(uvec x, uvec y)
bvec greaterThanEqual(uvec x, uvec y)
bvec equal(uvec x, uvec y)
bvec notEqual(uvec x, uvec y)
BUG=angle:920
TEST=dEQP tests
Reduced number of errors in tests:
dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.*
Change-Id: Id45ce77b35f39403e587a577622271d8e9815225
Reviewed-on: https://chromium-review.googlesource.com/250377
Reviewed-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
a3a5cc6a
|
2015-02-13T13:12:22
|
|
Expose the IntermNode tree generated in the compiler for testing
This refactoring makes it possible for tests to access the IntermNode
tree produced by compilation by calling compileTree(). Removing
ParseContext usage from OutputHLSL has the additional benefit of better
separation between parsing and output.
BUG=angle:916
Change-Id: Ib40954832316328772a5c1dcbbe6b46b238e4e65
Reviewed-on: https://chromium-review.googlesource.com/249723
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
73edef0a
|
2015-02-17T18:58:21
|
|
Do not use std::set::at in Config.cpp.
This is C++11 STL.
BUG=459399
Change-Id: I2e994e6b47535bcb38c193db2aaecc304e388772
Reviewed-on: https://chromium-review.googlesource.com/250581
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f25eb1d6
|
2015-02-17T14:42:32
|
|
D3D11: Use system memory for dynamic buffer updates.
In our current code, we would use a staging texture as the working
copy for buffer updates. This would trigger very large memcpy calls
in some cases for large buffers with small updates. Instead, use
a CPU memory buffer storage, and work with this storage when the
user updates data. This plays much nicer with the VertexDataManager.
BUG=angle:912
Change-Id: I8c32d3d9bb321a06534556ce05b4b99dc3d1e961
Reviewed-on: https://chromium-review.googlesource.com/249183
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
af1bdff6
|
2015-02-17T11:07:46
|
|
Re-resubmit "Compile the D3D11 VS and PS on separate threads at GL link time"
The latest version of this change disables multithreaded D3D shader
compilation with any C++ compiler other than VC (e.g. Clang).
Change-Id: If3ef5fd650055ae66397ea2c9121bfcf1792892a
Reviewed-on: https://chromium-review.googlesource.com/250328
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
56cf9af2
|
2015-02-17T10:16:49
|
|
Add a FunctionsGL class for loading GL entry points.
BUG=angle:879
Change-Id: I35384f078d2ed86a6c72cc243753b56bc58617b0
Reviewed-on: https://chromium-review.googlesource.com/250390
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
5b8b1087
|
2015-02-13T11:17:34
|
|
D3D: Re-init static buffer after invalidate.
This allows the Buffer class to always know if it's intended to
use static data vs dynamic. In some cases we would end up with
NULL pointers and not know if we started with static or dynamic
usage.
BUG=angle:912
Change-Id: I79ca62674543e0cf4b2ba9b31b6d8918723b31ce
Reviewed-on: https://chromium-review.googlesource.com/249460
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
026b4188
|
2015-02-13T11:17:33
|
|
Generalize NativeBuffer11::setData.
We can replace this method with a base class method which uses our
implementation of "map". This allows us to reuse setData in other
mappable buffer storage types.
BUG=angle:912
Change-Id: I7848cb9440b806364d9b2a6e2251323e53206921
Reviewed-on: https://chromium-review.googlesource.com/249182
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d2d21dca
|
2015-02-17T18:07:01
|
|
Revert "Resubmit "Compile the D3D11 VS and PS on separate threads at GL link time""
Causes errors in Clang-Win. We can fix the error and then resubmit, but need to do a roll now.
This reverts commit 310184861bab5e95139e0f34b1f8e88fe8c677b8.
Change-Id: I1c91b0a97031df33c2261089f6b54ccd3270306b
Reviewed-on: https://chromium-review.googlesource.com/250430
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
42077bb1
|
2015-02-16T15:32:37
|
|
Implement missing variants of min, max and clamp
BUG=angle:914
TEST=dEQP tests
Tests passing 100% because of this change:
dEQP-GLES3.functional.shaders.operator.common_functions.min.*
dEQP-GLES3.functional.shaders.operator.common_functions.max.*
dEQP-GLES3.functional.shaders.operator.common_functions.clamp.*
Reduced number of errors in tests:
EQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.*
These tests are not yet passing because of constant expressions
bug (angle bug:913)
Change-Id: Ibccee47ed78e994e40a0effe9afa9cf9692492b0
Reviewed-on: https://chromium-review.googlesource.com/250330
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f7b10164
|
2015-02-12T14:56:07
|
|
Fixed variable shadowing warnings
Change-Id: I7cf9e09f4003991e44195bedfe58891288541f81
Reviewed-on: https://chromium-review.googlesource.com/249432
Reviewed-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d8d58301
|
2015-02-13T15:46:04
|
|
Make Buffer11.cpp build with clang.
Change-Id: If72bc38dbb484e56a0a26c3aa7ac38bbc319653a
Reviewed-on: https://chromium-review.googlesource.com/249921
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
ff805cc3
|
2015-02-13T10:59:34
|
|
Separate integer and float modulus
Integer and float modulus are separated into Mod and IMod operator types
to make the code clearer and to make GetOperatorString return the correct
value for both.
Change-Id: Ibfbca2c558bf919b0eab6404d7349f87fe47a18c
Reviewed-on: https://chromium-review.googlesource.com/249692
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
23dcabad
|
2015-02-13T10:13:24
|
|
Enable the OpenGL/WGL backend on Windows.
BUG=angle:890
Change-Id: Ida58ecb9f3bcfd7ee9ae5c7cdbdff4aab9cca869
Reviewed-on: https://chromium-review.googlesource.com/249741
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c588ac73
|
2015-02-13T15:41:41
|
|
Add the OpenGL renderer to the GN build.
BUG=angle:890
Change-Id: I097296c7125e203ba04eab1c179dc8c183ed4789
Reviewed-on: https://chromium-review.googlesource.com/249842
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d28f6113
|
2015-02-12T16:11:00
|
|
Fixed compressed texture support reporting for feature level 9_3
Change-Id: If6e27db912711532e184a3a716728a19653c0471
Reviewed-on: https://chromium-review.googlesource.com/249550
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
12892c91
|
2015-02-13T11:13:13
|
|
Remove the dependency on OpenGL32.lib by loading all WGL functions.
BUG=angle:879
Change-Id: I1a10a86b710cb0c76be1907136345bcac078da4d
Reviewed-on: https://chromium-review.googlesource.com/249740
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d12971af
|
2015-02-12T13:29:15
|
|
Fix Buffer11 staging buffer revision update.
This bug could trigger a potential extra copy when drawing with
a pack buffer (or possibly packing vertex/index data).
BUG=angle:912
Change-Id: Ifead6524322aac5bc0be79a05f4db08c8f5a3225
Reviewed-on: https://chromium-review.googlesource.com/249181
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
398d8e6e
|
2015-01-22T13:33:56
|
|
Add a basic WGL implementation.
BUG=angle:890
Change-Id: I5202086990b4f4fbf455fd73c3e29e5e3e1f6160
Reviewed-on: https://chromium-review.googlesource.com/240092
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
09b22474
|
2015-02-11T11:47:26
|
|
Add addBinaryMath and addUnaryMath helpers to ParseContext
This refactoring reduces code duplication and moves functionality that is
not immediately related to the language grammar out of glslang.y.
BUG=angle:911
Change-Id: If5e225461890ed542dee01905829df1c9a6f5e27
Reviewed-on: https://chromium-review.googlesource.com/248570
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
40853472
|
2015-02-12T10:39:56
|
|
Disable warning 4530 in the libANGLE GN project
Change-Id: I56b5428f40a294248305dff168b9b0bb7b0a9bcc
Reviewed-on: https://chromium-review.googlesource.com/249240
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f03bcad6
|
2015-02-11T16:46:09
|
|
Clean up the style in Buffer11.cpp.
Fix indentation, and simplify the naming scheme for the storage.
Also add some missing DISALLOW_COPY_AND_ASSIGN macros.
BUG=angle:912
Change-Id: I7ac36d8185ce926999501358cec222154d9a3492
Reviewed-on: https://chromium-review.googlesource.com/249180
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
1033e1d8
|
2015-02-12T12:03:13
|
|
Move operator definitions to their own file
This generalizes GetOperatorString so that it can be used outside
ValidateLimitations.
BUG=angle:911
Change-Id: I43a160b3d7d60388ad529a72f1720d3171f67315
Reviewed-on: https://chromium-review.googlesource.com/249073
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
10617310
|
2015-02-11T16:33:14
|
|
Update WebGL failures list.
Change-Id: I5cf9e873ddcb293f121a11bd620ce97ee718c049
Reviewed-on: https://chromium-review.googlesource.com/247760
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f9a6f084
|
2015-01-22T13:32:49
|
|
Add GL and WGL renderer stubs.
BUG=angle:890
Change-Id: I64f2a72b4a350f95acc2ca7080fea1a308422ca4
Reviewed-on: https://chromium-review.googlesource.com/242573
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ba887d90
|
2015-01-20T13:54:30
|
|
Store mShareHandle in SurfaceD3D.
The type of the share handle depends on the implementation.
BUG=angle:658
Change-Id: Id801f3d0c1e3def7cae5cbd88e7a7032b2f6d8fa
Reviewed-on: https://chromium-review.googlesource.com/242050
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
45b4e74a
|
2015-01-20T13:23:03
|
|
Move surface size information out of SurfaceImpl.
Some implementations need to query size information directly from their
native window instead of listening for size events and storing the result.
Also move mSwapInterval to SurfaceD3D since it doesn't need to be stored
in all cases and there is no query for it. It no longer requires that the
SurfaceImpl's derivation remembers to set mSwapInterval in
setSwapInterval too.
BUG=angle:658
Change-Id: I499c1b8b842254636fc25ff5f2a90107af8fe327
Reviewed-on: https://chromium-review.googlesource.com/242039
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f6bf23fd
|
2015-01-20T11:43:54
|
|
Split up the Display::create*Surface and have them match the API.
BUG=angle:658
Change-Id: Id0054406a5ce6f6ffef28ce84737547c1869efde
Reviewed-on: https://chromium-review.googlesource.com/242038
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
9b82084f
|
2015-02-12T10:40:10
|
|
Fix HLSL varying struct linking.
We would always expand a struct name to always include its symbol
ID. This fixes the workaround to only affect scoped structs.
We can leave global structs, which are by definition uniquely named,
without decorating them with a symbol ID.
This fixes several tests in dEQP's shader.linkage.varying.struct.
Re-land with GLSL translator bug fixed.
BUG=angle:910
Change-Id: I23a932bd1dadea5e9aafabde697e6a2af9a43f2b
Reviewed-on: https://chromium-review.googlesource.com/249134
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b69a0923
|
2015-02-12T10:34:21
|
|
Fix UNREACHABLE being hit in Renderer9::applyTransformFeedbackBuffers.
Since applyTransformFeedbackBuffers is called even if transform feedback
is not active now, remove the UNREACHABLE.
Change-Id: Ibc43cb715f8035437986d1eaa94faf4036581d8f
Reviewed-on: https://chromium-review.googlesource.com/249121
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b960cc4a
|
2015-02-12T15:33:20
|
|
Revert "Allow varying structs to match between stages."
This patch has a bug which breaks the GLSL to GLSL translator.
See broken GPU FYI bot builds on the Chromium waterfall:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28NVIDIA%29/builds/13074
This reverts commit 489ffc4d69656c2dbfdbe07e3fa6e38baeb3e072.
Change-Id: I8241c6d658f4f31af91b89af1141d3d778ff7c70
Reviewed-on: https://chromium-review.googlesource.com/249131
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5274202f
|
2015-02-04T14:55:39
|
|
Unbind unused stream out from the D3D11 pipeline to avoid conflicts.
Also allow points drawing without gl_PointSize if transform feedback is
active.
Change-Id: I172d423e847b35b94ebaea102dd97b695575c828
Reviewed-on: https://chromium-review.googlesource.com/246100
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f4780c1c
|
2015-02-11T16:33:11
|
|
Use correct non-square register count in structs.
For struct varyings with nested structs, we would count registers
incorrectly, and produce D3D link errors.
This fixes tests in the dEQP's shaders.linkage.varying.struct.
BUG=angle:910
Change-Id: I47ea6dba36bf57cf94a7e7f30997c6c9096c2b40
Reviewed-on: https://chromium-review.googlesource.com/247243
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
489ffc4d
|
2015-02-11T16:33:07
|
|
Allow varying structs to match between stages.
We would always expand a struct name to always include its symbol
ID. This workaround fixed scoped structs with the same name. It
would also block any possiblity of linking the structs successfully.
Instead we can use the workaround only on inner-scoped structs, and
leave global structs, which are by definition uniquely named, as
they are.
This fixes several tests in dEQP's shader.linkage.varying.struct.
BUG=angle:910
Change-Id: I81b8dadc7ea493152aff0c44d607114eaaabb142
Reviewed-on: https://chromium-review.googlesource.com/247242
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
2857f489
|
2015-02-09T15:35:29
|
|
Fix struct uniform packing.
Our current code would not adapt properly for members that did
not fit in the previous register. Instead, use the correct adjusted
value as returned from the block layout encoder.
This fixes a dEQP WebGL test: gles2/shaders/linkage.
BUG=angle:910
Change-Id: Id77d0c76ce767665b3db97cb4d14e8008254fd9f
Reviewed-on: https://chromium-review.googlesource.com/247241
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
55e79e09
|
2015-02-09T15:35:00
|
|
Implement equality ops for nested structs.
This fixes the WebGL test glsl_misc_struct_equals as well as
several dEQP tests in functional.shaders.struct.
BUG=391957
BUG=angle:910
Change-Id: I09f3cd3f51bbc3541b64dbcfddfe01884ddba6f5
Reviewed-on: https://chromium-review.googlesource.com/247083
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b2a5e342
|
2015-02-11T13:13:21
|
|
Return egl::Error from Renderer::initialize.
This extra Error info can be useful for passing back additional info.
In the short-term this means we can implement a UMA histogram at some
point with a code that represents a more specific reason why the
init failed.
BUG=436191
Change-Id: If5e099a9ce32e87843754cd4f40d726dd5bad4b8
Reviewed-on: https://chromium-review.googlesource.com/246564
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
0fe40534
|
2015-02-10T12:01:27
|
|
Cache sampler completeness in the Texture class.
BUG=angle:909
Change-Id: I14e06e01d111e9d5eec415f4c2d831b61dcb1e3d
Reviewed-on: https://chromium-review.googlesource.com/248070
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
38832d17
|
2015-02-09T10:01:47
|
|
Add Display getters for native display and attribs.
This simplifies the logic in the Renderer init.
BUG=angle:905
Change-Id: I01bf3701dd85f50e369e2c11e0e2a7cb638ccf00
Reviewed-on: https://chromium-review.googlesource.com/247650
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b0eecdfd
|
2015-02-10T11:09:12
|
|
Reduce the calls to get[Width|Height|InternalFormat] in Texture.cpp.
BUG=angle:909
Change-Id: I8a66c1d317bcb7a01d79f9475390deb292e1ae2e
Reviewed-on: https://chromium-review.googlesource.com/248052
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
866dd2d1
|
2015-02-10T11:08:32
|
|
Store the texture image information in a std::vector instead of a std::map.
BUG=angle:909
Change-Id: Ib595306f6cf0633b16bff6389373c2bb2cc29ec9
Reviewed-on: https://chromium-review.googlesource.com/248051
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
83107970
|
2015-02-05T12:57:44
|
|
Implement eglQueryContext
BUG=angle:895
Change-Id: I5e709f772d6222cdb7b5d7c060830a75eac9f815
Reviewed-on: https://chromium-review.googlesource.com/246490
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
959ad9a8
|
2015-02-09T10:51:39
|
|
Fix cstdint include in MemoryBuffer.h.
This syntax isn't compatible with OSX.
Change-Id: I3ec2bc856843637c4e1e7afb96a93ff6ea8296da
Reviewed-on: https://chromium-review.googlesource.com/247660
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
74ba76c4
|
2015-02-09T10:31:23
|
|
Move rx::MemoryBuffer to common library.
This class is not D3D-specific so can be shared among other
back-ends, or other parts of the ANGLE codebase.
Change-Id: Ie00760eb5dae4db52e465ee7a2f97789bae8c0b0
Reviewed-on: https://chromium-review.googlesource.com/246500
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
811b6352
|
2015-02-09T10:17:09
|
|
Add a script to generate a new Renderer.
Also refactor our current Impl headers slightly to facilitate
parsing by the generation script.
BUG=angle:905
Change-Id: Ib86cff71d18e7f911cf526b27b8a82757bacd738
Reviewed-on: https://chromium-review.googlesource.com/245497
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b0e83f46
|
2015-01-28T17:39:34
|
|
Catch errors in TextureStorage creation in TextureD3D::getNativeTexture.
BUG=450257
Change-Id: Iba75d9f0607177fff0bec7fcd2564a8d2e26da8e
Reviewed-on: https://chromium-review.googlesource.com/243882
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
15dc05fc
|
2015-01-22T13:31:46
|
|
Only request PostSubBuffer support when the extension is available.
BUG=angle:658
Change-Id: I6828290ef89c57e8c794f0fca6e5991c492b67aa
Reviewed-on: https://chromium-review.googlesource.com/242572
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f81b6a15
|
2015-01-19T16:51:55
|
|
Move eglCreatePbuffer* validation into validationEGL.
BUG=angle:658
Change-Id: I25d1be1ef86f82892186b08c9a8ff0133d520ac6
Reviewed-on: https://chromium-review.googlesource.com/242037
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0eef0826
|
2015-01-19T16:22:40
|
|
Move eglCreateWindowSurface validation into validationEGL.
BUG=angle:658
Change-Id: Iaa7e6033fb323c1089907c9ed753746729887061
Reviewed-on: https://chromium-review.googlesource.com/242036
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|