|
588ba833
|
2019-10-03T14:36:21
|
|
Keep state up to date after bindBufferBase/Range
Missing state tracking in StateManagerGL::bindBufferBase and
bindBufferRange.
Bug: angleprojects:3900
Change-Id: Ibaa4731962532f85b3e8a34d974c308d72b20a7f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1838452
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
c847a75f
|
2019-09-20T14:08:32
|
|
Fix redundant draw in DrawBaseVertexBaseInstanceTest
Discovered this redundant draw issue when writing javascript
webgl conformance test.
Together fix some broken formatting.
TBR=geofflang@chromium.org
Bug: 3402
Change-Id: I29dbcd04da7e47d9e0bc79074ff69202378c1214
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1816822
Reviewed-by: Shrek Shao <shrekshao@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
1850492e
|
2019-10-02T08:23:03
|
|
Vulkan: Disable OES_vertex_type_10_10_10_2 on GLES 2.0
- Because of the difference in the SNORM to FLOAT conversion formula
between GLES 2.0 and 3.0, OES_vertex_type_10_10_10_2 is disabled
when the context version is lower than 3.0.
- Modify test conversion formula to be compliant with GLES 3.0 equation
Bug: angleproject:3868
Test: angle_end2end_tests --gtest_filter=VertexAttributeTest*Packed*Vulkan
Change-Id: I8b85d8146ee05353bc40fa0022f05d6634c33110
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1792197
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2328d65a
|
2019-10-03T02:27:07
|
|
Revert "GN: Componentize vulkan back-end build."
This reverts commit d46e2fb1e341a7ba7da56072658d3b4b1a540077.
Reason for revert: Broke Vulkan angle_end2end_tests.
Bug: angleproject:3954
Original change's description:
> GN: Componentize vulkan back-end build.
>
> This moves the build configuration into the Vulkan back-end dir.
> This should be a little easier to maintain as all Vulkan-related
> config is in one place.
>
> Note that this should not interfere with Skia's build as they do
> not import the Vulkan back-end sources.
>
> One additional possiblity that this enables is testing other
> compile-time permutations of the Vulkan back-end more easily. For
> example we could make a simple change to enable compile testing
> of the Vulkan back-end with custom command buffers disabled.
>
> Also fixes a few errors affecting less tested configs.
>
> Bug: angleproject:3943
> Change-Id: Iaf819936896e4f5d3e6415ed16ab0c940e46cdb6
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1829662
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Tobin Ehlis <tobine@google.com>
TBR=tobine@google.com,jonahr@google.com,jmadill@chromium.org
Change-Id: I7cf3db4f6b7d8b779625ea2491172bb429b498a9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3943
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1837233
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fd092e85
|
2019-10-02T13:19:00
|
|
Vulkan: Point end2end failure at correct bug
The ComputeShaderTest.BindImageTextureWithOneLayerTexture3D/ES3_1_Vulkan test
is failing because of the previously-reported angleproject:3886.
Switching the comment to so indicate.
Bug: angleproject:3188
Bug: angleproject:3886
Change-Id: Ib62316dcf3935f96bdcab701e8fdb6042a1ab859
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834837
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
bc49abad
|
2019-10-02T11:14:48
|
|
Vulkan: Expect additional GLES 3.0 KHR tests to pass
Another change (for angleproject:3939) also fixes angleproject:3695. One of
those tests now fails for another/known reason (angleproject:3836).
Bug: angleproject:3695
Bug: angleproject:3836
Change-Id: I46e77fe15df84e3145933fca5cea6da47bc390f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834834
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
d46e2fb1
|
2019-09-27T16:22:35
|
|
GN: Componentize vulkan back-end build.
This moves the build configuration into the Vulkan back-end dir.
This should be a little easier to maintain as all Vulkan-related
config is in one place.
Note that this should not interfere with Skia's build as they do
not import the Vulkan back-end sources.
One additional possiblity that this enables is testing other
compile-time permutations of the Vulkan back-end more easily. For
example we could make a simple change to enable compile testing
of the Vulkan back-end with custom command buffers disabled.
Also fixes a few errors affecting less tested configs.
Bug: angleproject:3943
Change-Id: Iaf819936896e4f5d3e6415ed16ab0c940e46cdb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1829662
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
24e7ecfc
|
2019-10-01T10:52:35
|
|
GL: Temporarily disable GPU copy paths for rectangle texture sources.
Sampling from rectangle textures produces incorrect results for glCopyTextureCHROMIUM.
Temporarily disable this path while the underlying issues are investigated.
BUG=990368
Change-Id: I690252ed4d09cdb6a7fd94f6f24d1300c53afc1b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832496
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
7dd03446
|
2019-09-30T13:50:12
|
|
Ensure Features* descriptions stay up to date
Created a macro to help keep Features' descriptions up to date. This
will avoid confusion in the future when conditions change. Also update
all descriptions to match current state.
Bug: angleproject:3947
Change-Id: Ifc65e7789c916fab79f1323798dfb59d7a4efad2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1829584
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
514d5e28
|
2019-09-25T14:37:44
|
|
Vulkan: Remove global finish in ContextVk::onDestroy.
Should be no longer necessary with shared garbage collection in
RendererVk.
Bug: angleproject:2464
Change-Id: I8ebd910cf36dd0b18d83d32981db28599d443ec3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1825445
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
4671fee9
|
2019-10-01T12:28:25
|
|
Don't expose CHROMIUM_color_buffer_float_rgb[a] in ES3.0+
These extensions are superseded by EXT_color_buffer_float and not needed to support
WebGL2. Allowing them to expose rendering to RGB[A]32F when EXT_color_buffer_float
is not supported causes dEQP failures.
BUG=angleproject:3939
Change-Id: Ib50a061526f29fc0628e732123c04a22800345dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832525
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
f03259ad
|
2019-09-19T11:31:40
|
|
Vulkan: lineloop support for DrawElementsIndirect
Add support for lineloops.
Includes a compute shader for converting lineloop index
buffer with optional restart into linestrip.
Test:
dEQP.GLES31/functional_draw_indirect_*
angle_end2end_tests --gtest_filter=LineLoopIndirectTest.*/*
Bug: angleproject:3564
Change-Id: I12d08db1c8d99867f0611e53be50193647695260
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1797106
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
e5009be8
|
2019-10-01T16:27:37
|
|
Vulkan: Divide 3188 KHR failures into 2 known root causes + cleanup.
The two root causes are angleproject:3695 and angleproject:3836. Some tests
failing from angleproject:3836 were still labeled for angleproject:3458. This
CL does some cleanup of that, and improves the comments for the two
root-causes.
Bug: angleproject:3188
Bug: angleproject:3458
Bug: angleproject:3695
Bug: angleproject:3836
Change-Id: I4c9be0b3078c1fc21064fb88b58e28ea92c3a73c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834275
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
f22f16d3
|
2019-07-18T15:10:49
|
|
Reland "Vulkan: Use VK repos' internal BUILD.gn files"
This is a reland of 552f5fcb0d8fcc615856ce3b678190e1cbdd38e6
There was a missing build dependence causing a build no-op
issue which has now been fixed in the upstream Vulkan Validation
Layer repo.
Primary workaround that need to be re-visted and fixed are:
1. Disabled validation layers on 32-bit Windows
2. Disabled validation layers on 32-bit Android
3. Disabled DebugUtils on Android, using DebugReport instead
4. Using custom VK Loader branch to avoid WDK dependence
Original change's description:
> Vulkan: Use VK repos' internal BUILD.gn files
>
> This retires custom BUILD.gn files for the Vulkan Headers, Tools,
> Validation-Layers, and Loader repos. They now have integrated BUILD.gn
> files so switched ANGLE to use those by default.
> Also Validation Layer, Loader, and Tools repos no longer uses codegen
> so this speeds up the build overall.
> Switched over from old VK_LAYER_LUNARG_standard_validation meta-layer
> to VK_LAYER_KHRONOS_validation unified layer.
>
> This changes includes a temporary workaround to the Vulkan-Loader repo
> to remove its Window's build dependence on WDK. There are plans to
> remove that depenedence in Loader master, but until then we can use
> our custom branch workaround.
> It also includes a custom branch for validation layers that includes
> some build fixes for ANGLE.
> Finally, the layers were crashing on Android when attempting to use
> DebugUtils extension so forcing DebugReport on Android for now.
>
> Bug: angleproject:2449
> Bug: angleproject:3320
> Bug: angleproject:3852
> Bug: angleproject:3924
> Bug: angleproject:3925
> Bug: angleproject:3946
> Bug: chromium:997009
> Bug: chromium:997016
> Change-Id: I48b36acefcc7f2bc930eb72d6fdbc87bca24f833
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1610438
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Tobin Ehlis <tobine@google.com>
Bug: angleproject:2449, angleproject:3320, angleproject:3852
Change-Id: I373ada091a1329db5e304874079428d01ba21d52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1778302
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
377b1679
|
2019-09-24T14:12:37
|
|
Vulkan: Enable dEQP-GLES31.functional.shaders.*
The dEQP-GLES31.functional.shaders.* tests are currently passing for
GLES 3.1, so I'm removing them from the expectations file. We don't have
GLES 3.2 testing for ANGLE-Vk yet, so those may need to be revisited.
Bug: angleproject:3569
Test: dEQP-GLES31.functional.shaders.*
Change-Id: Iff1fcfae7d82444432468b64d5bfa046beb9bf45
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1822740
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
616a4dc0
|
2019-09-12T16:10:47
|
|
Vulkan: Full support for program interface queries
Program interface queries are a generic way to query attributes of
the program like uniforms, samplers, attributes, etc. This change
supports those queries for program outputs.
Bug: angleproject:3596
Test: dEQP-GLES31.functional.program_interface_query.*
Test: ProgramInterfaceTest.cpp
Change-Id: I0f13692949073b45988b6f930eee9eaa6411bbe2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1801998
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f10bf6bf
|
2019-09-26T10:27:18
|
|
Vulkan: Implement multi-threaded GL.
The main component of this change is to make vk::BufferHelper,
vk::ImageHelper and vk::SyncHelper use a common path. We introduce a
new "vk::SharedGarbage" helper class that stores small lists of garbage
from individual objects like an ImageHelper or BufferHelper. The
SharedGarbage is stored in the RendererVk with the ResourceUse of the
helper object. The ResourceUse tells RendererVk when it is safe to
destroy the GarbageObjects.
New "onGraphAccess" commands are added in a few places to enable the
common garbage collection path. A couple Context-only resources like
default attributes now are referenced where they were not before.
Also reorganizes some functions so we can add a few helpful ASSERTs
to our graph dependencies. Added "updateCurrentAccessNodes" for this.
Also adds a "RendererScoped" helper to replace many uses of
"ContextScoped".
The multithreading EGL tests mostly pass but have some remaining
flakiness so cannot yet be enabled.
Bug: angleproject:2464
Change-Id: Ia3e3ae8848d731abf3f21ebe04c33e381e130be0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1808444
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
988f7170
|
2019-09-30T15:52:37
|
|
Vulkan: Base/max level fixes and cleanup
This CL cleans up references to base/max level bug and fixes
one lingering issue regarding special handling of depth/z for
arrayed surfaces.
Bug: angleproject:3148
Bug: angleproject:3184
Bug: angleproject:3948
Bug: angleproject:3949
Bug: angleproject:3950
Test: dEQP-GLES3.functional.texture.mipmap.*base_level*
Test: dEQP-GLES3.functional.texture.mipmap.*max_level*
Test: Texture2DArrayTestES3.DrawWithLevelsOutsideRangeWithInconsistentDimensions
Change-Id: Iad72005a111507c50b8be9726adc32285bbae52b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832757
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
755417dd
|
2019-09-30T17:53:56
|
|
GLES2: Use require_constant_initialization for g_Mutex
A static assert to verify that the global mutex g_Mutex is trivially
constructed fails to compile with clang when using the STL shipped
with Visual Studio 2019.
Use __attribute__((require_constant_initialization)) instead to verify
for constant initialization.
BUG=angleproject:3936
Change-Id: I5969762ad5a99033143513d7c4992344da276b1a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832164
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
4a276034
|
2019-09-30T16:31:00
|
|
Vulkan: Narrow skip lists for 3D and 2DArray tests to Compute
Narrow these skips to just compute shader failures, which
we will tackle as part of the next sprint.
Bug: 3188
Bug: 3189
Bug: 3810
Test: CopyTexImageTestES3.2DArraySubImage
Change-Id: I74c259712e5f3c9296bd3a6241d1da8f1668ca36
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832881
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e49df747
|
2019-09-30T16:09:28
|
|
Update expectations for deqp failure
KHR-GLES3.packed_depth_stencil.clear_buffer.depth24_stencil8
KHR-GLES3.packed_depth_stencil.verify_read_pixels.depth24_stencil8
Appear to be failing due to a driver issue on Pixel devices, update
expectations to call out that bug.
Bug: angleproject:3683
Change-Id: Ibb226078e561610351be8223d04f27a5ff69bf9e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832759
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
087f1384
|
2019-09-26T10:19:36
|
|
Vulkan: Introduce CommandQueue helper class.
Wraps the functionality of managing monitoring workloads of commands
being sent to the VkQueue. In the future this will likely move to the
RendererVk class. This refactor allows the move to be easier to manage
and will let us more easily change ownership in the future if we have
to again.
Bug: angleproject:2464
Change-Id: I061bc2ba939d7004d74d00b976a753a53c96445c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1804884
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2e80cf9d
|
2019-08-08T22:05:42
|
|
Vulkan: Refactor render target initialization for texture arrays
Bug: angleproject:3188
Bug: angleproject:3189
Test: dEQP-GLES3.functional.texture.*.3d.*
Test: dEQP-GLES3.functional.texture.*.2darray.*
Test: Texture3DTestES3
Test: CopyTexImageTestES3
Test: DrawBuffersTestES3
Change-Id: Ia48766170c02fadb56cddcd415144a00123b02c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1745722
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
71c1138d
|
2019-08-16T12:23:04
|
|
Vulkan: Emulate instanced attrib divisor
This sets instancedArrays[ANGLE|EXT] extenstions as always
supported regardless of underlying Vulkan HW's max vertex attrib
divisor.
Then detect instances where app sets a divisor that isn't supported
by hardware and emulate those cases. Emulations is accomplished by
copying the instanced attribs to a new buffer where each attrib is
present once per instance, using the attrib divisor value as a
factor to replicate the attribs, and then setting the actual divisor
value for the draw to "1".
Also, we only store 8 bits for the divisor used in the PSO, so this
code also handles emulation of the case where divisor is > 255.
This is passing all of the drawInstanced/Elements dEQP tests
where divisor has to be emulated.
Also enabled end2end InstancingTestES3 for Vulkan backend.
Bug: angleproject:2672
Change-Id: I9932f9eab49b16a19e8bbd35dacaf3b5a27a213f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1758689
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
cb16fb5f
|
2019-08-29T16:53:55
|
|
Vulkan: Support texture base and max levels
The Vulkan backend uses a vkImage that matches the number
of effective levels in the GL texture. This is due to the fact
that GL textures can have really strange layouts that only make
sense when base level and max level are applied.
For instance, take the following layout with disjoint mip levels:
Level 0: 4x4 RGBA
Level 1: 2x2 RGBA
Level 2: 10x10 RGB
If base level is set to zero and max level is set to 1, the image is
still considered mip-complete:
Level 0: 4x4 RGBA ==> Base Level 0 ==> Level 0: 4x4 RGBA
Level 1: 2x2 RGBA ==> Max Level 1 ==> Level 1: 2x2 RGBA
Level 2: 10x10 RGB
If base and max level are then both set to 2, the texture is still
considered complete, but of a different size and format:
Level 0: 4x4 RGBA
Level 1: 2x2 RGBA
Level 2: 10x10 RGB ==> Base/Max Level 2 ==> Level 2: 10x10 RGB
When the base or max level is changed, we must recreate the vkImage to
match the new level count.
To support that, we:
- Stage updates from the current image to the new image
- Only stage updates if there aren't already staged updates for a level
- Free the current image and so it can be recreated at the next draw
This CL does the following:
- Refactors TextureVk::copyImageDataToBuffer to support staging updates
without flush
- Adds TextureVk::copyImageDataToBufferAndGetData to support previous
use model
- Adds TextureVk::changeLevels, triggered during syncState, which stages
updates and releases the current image.
- Updates ImageHelper::flushStagedUpdates to understand base/max levels
- Updates TextureVk::ensureImageInitialized and TextureVk::generateMipmap
to account for base/max level
- Tracks base and max levels in ImageHelper
- Adds ImageHelper::stageSubresourceUpdateFromBuffer to support
this use case
- Adds ImageHelper::isUpdateStaged to determine if changeLevels
should propagate data
- Makes gl::TextureTypeToTarget available for use outside of ImageIndex
- Enables several deqp and end2end tests
Bug: angleproject:3148
Test: dEQP-GLES3.functional.texture.mipmap.*base_level*
Test: dEQP-GLES3.functional.texture.mipmap.*max_level*
Change-Id: I14ca071c9c62eb310dfed7ef9290dc65fc3ff696
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1776933
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
57b37b6b
|
2019-09-25T18:29:28
|
|
Rename util/system_utils to util/test_utils.
This removes a GN naming conflict between util/system_utils and
common/system_utils. This conflict was preventing us from adding
unit tests to utils' version of system_utils. Since these functions are
only useful to tests and samples rename them test_utils for simplicity.
Will enable further development of ANGLE's standalone testing harness.
Bug: angleproject:3162
Change-Id: I9e34fb69f96c5de6dc2453fce4148a0f285e15ed
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1825268
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d627d154
|
2019-09-26T10:19:38
|
|
GLES1: Correct 'active' attributes mask.
The active attributes are those consumed by the Program. Previously
we were returning those enabled as client arrays. But this excluded
default attributes.
Uncovered when changing how resource usage was tracked for Vulkan
multithreading.
Bug: angleproject:2464
Change-Id: I48996be9e4470bb1432e042f98046c95ea8adbfe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1808718
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a0159c03
|
2019-09-02T14:49:07
|
|
Vulkan: Implement basic geometry shader feature
Enable the default behavior of the geometry shader
Bug: angleproject:3571
Test: dEQP-GLES31.functional.geometry_shading.input.basic_primitive.points
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.lines
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.line_loop
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.line_strip
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.triangles
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.triangle_strip
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.triangle_fan
Change-Id: I65708d19bbfe6a0ad8ca392a1d6b3609b1410ef4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1793753
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3c2a5230
|
2019-09-23T11:07:18
|
|
Vulkan: 8bit index support for DrawElementsIndirect
Add partial support for DrawElementsIndirect.
This supports all primitives types except lineloop.
Includes a compute shader for converting 8bit index
buffers to 16bit index buffers where the index buffer range
is defined in a GPU buffer.
Test:
dEQP.GLES31/functional_draw_indirect_*
Bug: angleproject:3564
Change-Id: Ibe9c55323e46a398f0b703cd8597a72ba6790570
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1792948
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7c8e276c
|
2019-09-23T11:06:39
|
|
Vulkan: Add support for DrawArraysIndirect
Add partial support for DrawArraysIndirect.
This supports all primitives types except lineloop.
Test:
dEQP.GLES31/functional_draw_indirect_*
Bug: angleproject:3564
Change-Id: I065417a848390070c9f116db6fd3f90c12fb3886
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811873
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
70d79b76
|
2019-09-11T11:43:55
|
|
GL: Add state validation functions to GL backend
These functions validate that the driver's reported state matches
ANGLE's internal state. Can be useful for debugging
Bug: angleproject:3900
Change-Id: I35d15e991986dcab114939c551a88549f09bd263
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1797254
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
33ffed01
|
2019-09-26T10:19:35
|
|
Vulkan: Clean up garbage APIs.
Instead of dumping resources to a context, we use the release APIs
consistently. Refactoring/cleanup change only. Should have very litte
impact on runtime behaviour.
Bug: angleproject:2464
Change-Id: I2dc7f8316c466f7ccfad50a7b792ba0ee7bc2e49
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1804883
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2bdefbf8
|
2019-09-26T10:19:34
|
|
Vulkan: Remove some redundant "vk" prefixes.
Refactoring change only. Found when working on multithreading CLs.
Bug: angleproject:2464
Change-Id: Ide91c7134b5f565e2f122a50cf92a4938189704a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1825444
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f703443b
|
2019-09-21T14:10:35
|
|
Use Resource IDs in RefCountObject.
This lets us use strongly typed IDs pretty much everywhere. Only one or
two additional places still use GLuint IDs. Mostly for external queries
and for Framebuffer Attachments.
With some clever type reflection helpers lets us define a single
template function for handling operator== and != for resource IDs.
Refactor in preparation for more Capture/Replay work.
Bug: angleproject:3611
Change-Id: I1c0c848e89eb8a4b769714d57686f816daf01634
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1815550
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
29f7916f
|
2019-09-25T14:37:35
|
|
Vulkan: Store current Serial in RendererVk.
This gives a stronger ordering on serials than if they're acquired by
the ContextVk. Part of the steps of implementing multithreaded GL on
Vulkan.
Implements a "globalFinish" method in RendererVk that is triggered on
ContextVk destruction. This helped fixed some racy object deletion
situations where the ContextVk could have queued work that uses deleted
objects. Flush all the Contexts before destruction to avoid these
hanging deleted objects.
Bug: angleproject:2464
Change-Id: I244e9bbf6cd47b272c7cbca45b0fb1eb46d626fc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1791268
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
babe59ff
|
2019-09-25T15:53:20
|
|
Temporarily disable SwiftShader everywhere.
Times out not only on Windows 7 but also Win10 Debug.
Bug: angleproject:3876, chromium:1008100
Change-Id: I3c82d430fae09067a8247e3c4b03ff9c9b685c06
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1825538
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8007ca02
|
2019-09-25T11:06:33
|
|
GLX: Forward XExposeEvents to parent window
ANGLE creates a child window on X11, but Expose events need to be
forwarded to the parent window. Caused an issue on Chrome Linux with a
non-compositing window manager.
Bug: 991577
Change-Id: Ia240d83403ed28e8e9a6e87164327d6d683dd9ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1824036
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
d4c75347
|
2019-09-18T10:49:34
|
|
Vulkan: Enable GPU conversion from RGB16F to RGBA16F
- Add proper GPU conversion routine when the source and destination
format of vertex attribute is half float data type.
- Add an end2end test which utilizes half float GPU conversion path.
Bug: angleproject:3802
Test: angle_end2end_tests --gtest_filter=*VertexAttributeTest.HalfFloatBuffer*
Change-Id: Ia88a4984156f8967796bea3852c3cde714f2acab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1824799
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
ba04be8c
|
2019-09-24T08:55:34
|
|
GN: Refactor angle_test and remove angle_test_main.
This cleans up the GN files and prepares them for eventually using a
custom test harness.
Bug: anglerproject:3162
Change-Id: I3d8568628a9465093adec9e838617a002192beef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821939
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
273175cd
|
2019-09-24T08:44:09
|
|
Fix Regex in DebugShaderPrecisionTest.
One regex had an extra parenthesis. Also confirms that we can use raw
string literals to produce more readable regexes.
Bug: angleproject:3162
Change-Id: I82e6bc622a8fa3d9f6424c53cb7dcb4dddde368a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821938
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a3f1981d
|
2019-09-23T17:04:03
|
|
Add SwiftShader to command line arguments.
Also adds parsing SwiftShader to the test expectations code.
Bug: angleproject:3876
Change-Id: I70e1475b62f86160d5a150218e792801fb0259bc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817109
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
35f01546
|
2019-09-24T10:02:36
|
|
Vulkan: Enable many GLES 3.1 Debug API tests to run/pass.
Bug: angleproject:3590
Bug: angleproject:1442
Bug: angleproject:2324
Change-Id: Iad0abd7b9566d488a655dfe5061db18cdfe74326
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821450
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
db08edce
|
2019-09-24T08:42:39
|
|
Reduce logging in feature_support_util.
The very verbose logging was making the unit test output too much.
Disable verbose logging by default.
Bug: angleproject:3162
Change-Id: I1b675877c314573749c9808684bab0c60f7d6127
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821937
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1057aaef
|
2019-09-23T15:36:03
|
|
Update GL state tracking on VertexArrayGL::streamAttributes
When emulating streamed attributes, the internal state is not
being correctly updated in the GL backend.
This fixes this issue for the particular edge-case.
Bug: angleproject:3933
Change-Id: I4b785d76ccfc475d80e431977e4d482c7f2d1389
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817103
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
b540da89
|
2019-09-19T14:19:12
|
|
Vulkan: Use ResourceUse to track object lifetime.
With the new resource tracking scheme the CommandGraph, tracking a
"Context serial" aka "current" serial is no longer necessary for
CommandGraphResources. Serial tracking has been moved to the shared
ResourceUse struct that gets updated on a command submission. Thus
we don't need to store the serial as a current separate piece of info
in BufferHelper/ImageHelper.
Will lead to further redesign for the multi-threading support for
Vulkan.
Bug: angleproject:2464
Change-Id: I1ae4bcc27fcfb93422b4ab4c9682a458e482f295
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1785990
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
01f7e545
|
2019-09-23T13:40:59
|
|
Vulkan: Make SharedResourceUse a custom type.
Gives us better performance when using the command graph. Performance
regressed significantly in "Vulkan: Track resource usage via counter."
Perf test scores:
before CL: 1060
after CL: 1245
this CL: 1085
The small remaining regression can be investigated more fully in the
future. It's possible there is some small acceptable regression when
switching the command graph design for multithreading.
Test: angle_perftests (DrawCall*vulkan_null*manyvbos*)
Bug: angleproject:2464
Change-Id: I5e625999a8e8b3e1a045908c51e549f472cd4209
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817102
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6d625bfe
|
2019-09-23T20:05:29
|
|
Skip ComputeShaderTest.UniformDirty on Linux Intel Vulkan
Flaky on Linux FYI Release (Intel HD 630) bot.
Bug: angleproject:3934
Change-Id: Ia3092e9c740d0052e106d464c59ceac63d4e434e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1820085
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
84a32193
|
2019-09-18T16:51:38
|
|
Vulkan: Disable Line Rasterization Emulation for Android
The latest Pixel drivers require that the GL line raserization emulation
is disabled to rasterize the lines correctly.
Bug: angleproject:2830
Test: dEQP-GLES2.functional.rasterization.primitives.line*
Test: dEQP-GLES2.functional.clipping.line.long_line_clip
Change-Id: I126715e61f44500c00efc7e81044c0a09001d3bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1812177
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
ce24932d
|
2019-09-17T18:40:08
|
|
Capture/Replay: Force capture on Context teardown.
Bug: angleproject:3611
Change-Id: Ia674d72d5142c81f2ebd9d8480267789781277d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1813159
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a905cbcd
|
2019-09-19T23:05:39
|
|
Compact built-in symbol table.
Should reduce the binary size bloat from the perfect hashing. Local
testing on Windows shows a significant size reduction.
Bug: chromium:998535
Change-Id: I411cc5a917036d2239d15353d760f44e40faa26c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814725
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
ecd3ebe9
|
2019-09-23T09:53:22
|
|
Temporarily disable SwiftShader on Windows 7.
A necesssary change in SwiftShader introduced a bug that was causing
test timeouts. Disable SwiftShader so they can revert the change
without breaking ANGLE.
Bug: angleproject:3876
Change-Id: I4b841a4a28fa13947c24b72d856db38c9e0135cb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1815908
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ee891ce3
|
2019-09-23T10:21:21
|
|
Disable non-portable include path warning.
A prior CL did not apply the warning disable to the right targets.
Bug: chromium:995046
Change-Id: If06b8493d2c1ce3026dfbb1d32a9746e1fd0cddf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1815909
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8be7a4c7
|
2019-09-19T12:48:31
|
|
Re-land "Vulkan: SwiftShader integration."
Re-land fixes Win7 configs and placement of the SwiftShader module for
ASAN/TSAN configs.
Adds a new EGL extension for picking SwiftShader when using the Vulkan
back-end. Also cleans up ICD enabling code RendererVk. Also includes a
change to a buffer size necessary to support SwiftShader's minimum
limits.
Bug: angleproject:3876
Bug: b/140251624
Change-Id: I5e16057ac4de07bbdbbd248542b1b9103133294f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1810065
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
34148207
|
2019-09-16T11:30:39
|
|
Capture/Replay: Encapsulate cpp replay.
This moves the cpp replay logic out of the FrameCapture class into pure
c helper functions. This is a bit cleaner and could help us eventually
move to writing out the cpp replay on a worker thread.
Bug: angleproject:3611
Change-Id: I6a96c1ef1595a6203d44c1d4d9d793205701dd24
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1804879
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
c37d2370
|
2019-09-19T18:54:40
|
|
Reland "Refactor built-in symbol table."
This is a reland of 59d982c0dcad580ccbf4e29f32ffa3ea9a280122
Original change's description:
> Refactor built-in symbol table.
>
> In preparation for reducing binary size. Shortend a bunch of strings
> and symbol prefixes so the autogen file will be more compact.
>
> Bug: chromium:998535
> Change-Id: If1bedaaacc06dce9678d432055ffa0c9215a8dbd
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814724
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Bug: chromium:998535
Change-Id: Iebc5b1b5e1a084257fba3c50026cc62df5a879b3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817499
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
f585c2fb
|
2019-09-21T02:12:37
|
|
Revert "Refactor built-in symbol table."
This reverts commit 59d982c0dcad580ccbf4e29f32ffa3ea9a280122.
Reason for revert: crbug.com/1006501
Original change's description:
> Refactor built-in symbol table.
>
> In preparation for reducing binary size. Shortend a bunch of strings
> and symbol prefixes so the autogen file will be more compact.
>
> Bug: chromium:998535
> Change-Id: If1bedaaacc06dce9678d432055ffa0c9215a8dbd
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814724
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
TBR=timvp@google.com,jonahr@google.com,jmadill@chromium.org
Change-Id: Ie540da8ea4429e075a3284183e5a004cbcf1307b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:998535,chromium:1006501
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817497
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
2249fef2
|
2019-09-16T11:19:23
|
|
Capture/Replay: Move stub implementation to new file.
This lets the MSVC parser work better with FrameCapture.cpp.
Bug: angleproject:3611
Change-Id: I249106dce81a7965684caf1a835f0472b34e8963
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1804878
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
857bb7ff
|
2019-09-20T14:25:44
|
|
Vulkan: Enable most dEQP-GLES31.functional.state_query* tests to run
Bug: angleproject:3600
Bug: angleproject:3520
Bug: angleproject:3189
Change-Id: Ibbb930a9d64845a1e0cf731d2a35bd9d50f6c477
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1816445
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
14f472f2
|
2019-09-20T11:33:18
|
|
GL: Treat unknown AHardwareBuffer formats as RGBA8.
When Android's AImageReader encounters YUV formats, it converts the
hardware buffer's internal format to vendor-specific formats. Since
these sample as RGB using samplerExternal, simply validate them as if
they are RGB8.
BUG=angleproject:3929
Change-Id: I991512c8a584b08a978aacf67ab153ada7e4fd76
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1816300
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
59d982c0
|
2019-09-19T18:54:40
|
|
Refactor built-in symbol table.
In preparation for reducing binary size. Shortend a bunch of strings
and symbol prefixes so the autogen file will be more compact.
Bug: chromium:998535
Change-Id: If1bedaaacc06dce9678d432055ffa0c9215a8dbd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814724
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
11dc1635
|
2019-09-18T14:46:23
|
|
Add support for generating UWP (Windows Store) projects again
Until late 2017, ANGLE supported Windows Store apps on Windows 8.1,
Windows Phone 8.1, and Windows 10 (via the Universal Windows
Platform, aka UWP).
Unfortunately ANGLE deprecated support for Windows Store when it
switched from GYP to GN in 2017. Since then, users have been able
to use Microsoft\angle for their UWP apps but this isn't ideal since
it's based on a 2017 copy of Google\angle.
This PR bring back support for UWPs, so that UWP users can use
Google\angle again. Specifically it:
- Adds support for generating UWP projects via GN
- Adds helper/util functions specific to UWP (they're mostly
similar to the desktop Windows helpers)
- Fixes some existing Windows Store code that's rotted since 2017
- Disables async shader compilation for UWPs, since its
implementation calls wait on the UI thread (which is forbidden
in UWPs)
- Renames 'ANGLE_ENABLE_WINDOWS_STORE' to
'ANGLE_ENABLE_WINDOWS_UWP', since ANGLE only support UWPs now
- Fixes misc other related issues (such as dependencies on D3D9
headers in API-agnostic code)
Note that this doesn't bring back support for Windows/Phone 8.1.
BUG=angleproject:3922
Change-Id: Ia79ae05a5e0e0a0625eb633bf1928722dfd3e85f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811871
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
dd4a00a0
|
2019-09-19T14:19:11
|
|
Vulkan: Track resource usage via counter.
This adds a small shared piece of memory that counts the number of
times a resource is used in a command graph. This will enable more
multi-threaded uses. The shared pointer is updated in the command
graph during a submit and during graph construction.
Bug: angleproject:2464
Change-Id: Id9d0319a6814825d02e865ba527c97b5f535ff31
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1785989
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d7f28aae
|
2019-09-19T14:19:10
|
|
Vulkan: Pass CommandGraph when updating serials.
This is in preparation for storing a pointer to a shared resource use
structure.
Bug: angleproject:2464
Change-Id: I8f4ba1c71de6ad6a27ac06fc8012a0e94267cc16
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1785988
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6c4ff5dd
|
2019-09-19T16:39:48
|
|
Vulkan: Narrow GLES1 Scissor test skip to just Vulkan-Windows-Intel
Bug: angleproject:3867
Change-Id: I49b3a7facf41c4fa635c072c89820f2ee43c7787
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1815346
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
8a0686e1
|
2019-09-19T15:17:31
|
|
SystemInfo: Fix Windows driver version masking.
Should be applying a 16-bit mask instead of 8-bit.
Bug: angleproject:3926
Change-Id: I2b0a28a5de42437890a9c0d1bbc57b48a5d64451
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814980
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fea65766
|
2019-09-19T09:30:38
|
|
Vulkan: Add support for OES_vertex_type_10_10_10_2
- Add support to CPU/GPU convert vertex formats
- Add test cases for type conversion in angle_end2end_tests
- Fix a bug in shader script by adding a ceil when calculating bytes
Bug: angleproject:3192
Test: angle_end2end_tests --gtest_filter=VertexAttributeTest*Packed1010102*
Change-Id: I57bab9fc1c1041cd734746d0e52a33717b635ec0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1788495
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
4e57520a
|
2019-08-23T16:14:07
|
|
GL: Update BlitGL to use ANGLE_GL_TRY.
BUG=angleproject:3020
Change-Id: I587e638ca9dea2cb84aaad68aa8d1ce32fc62053
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1769062
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
ac7c876b
|
2019-09-17T11:20:47
|
|
GL: DisplayGLX::makeCurrent should handle drawSurface==0
In this case the draw surface should be unbound, but ANGLE had been
skipping this case (and handling it internally). This caused a crash on
Linux Intel. Now makeCurrent is actually called on the driver with
drawSurface mDummyPbuffer.
Bug: chromium:988440
Change-Id: Ifae7a828455eb67e516a47515ec6c24cc36e3c2b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1808719
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e6582161
|
2019-09-16T12:39:18
|
|
Convert DXT1 RGB data to DXT3 RGBA when uploading to the GPU.
DXT1 has a specific 'BLACK' code that results in transparent black pixels when
sampled. D3D does not have specific RGB-only DXT1 formats like OpenGL does so
when this code is encountered, we sample 0 alpha for these pixels when GL would
expect 1 because the alpha channel should not exist.
Work around this by converting to DXT3 RGBA, adding an extra block of 1.0 alpha
pixels for each color block.
Mac Intel OpenGL requires additional workarounds to always sample 1.0 alpha.
Set the texture swizzle parameters to force it.
BUG=angleproject:3729
Change-Id: Ia3647085acd97bb01af4e95ef3f6f21dcfb6a554
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1804880
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
bf4268a3
|
2019-09-17T13:33:56
|
|
Fix misc VS2019 bool conversion warnings
BUG=angleproject:3921
Change-Id: I06de5131f98b27c2556ed60dd7228c9cfa154802
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811858
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2f2ea8b4
|
2019-09-18T16:42:28
|
|
Fix depth pitch calculations for compressed textures.
Depth pitch computations were not taking into account the block size
and simply multiplying the row pitch with the pixel height. This caused
our load functions to use a very high depth pitch, reading past the end
of the user-supplied buffer.
BUG=angleproject:3190
BUG=angleproject:3920
Change-Id: I4ef4763b542735993568c51ae4b5a235659b9094
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811837
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
197005d8
|
2019-09-18T12:58:31
|
|
Vulkan: Pass ContextVk to various helpers
This is groundwork for some upcoming changes where data from
ContextVk is needed in GraphicsPipelineDesc::initializePipeline().
Passing ContextVk ptr all the way down instead of the reduced
vk::Context ptr.
Bug: angleproject:2672
Change-Id: I29f580c3503777085355f1b79f4ae4552a394557
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811433
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
db09eb68
|
2019-09-18T13:40:39
|
|
Increase the max fence wait time in debug builds
Also minor refactor to avoid duplicating the constant by having
both RendererVk and ContextVk retrieve the wait time via new
member function RendererVk::getMaxFenceWaitTimeNs().
BUG=angleproject:3915
Change-Id: I9a283a4e0f34a6a1f840c350dc667f4fc27f59e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1810066
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e34564ba
|
2019-09-18T15:21:51
|
|
Revert "Suppress crashing perftests on Win Intel Exp Rel"
This reverts commit f8e8fcf8828f42005b4410cc4500c63d8e9112ce.
Reason for revert: ANGLE_SKIP_TEST_IF doesn't work in perftests
and this skip is not needed since the whole suite is disabled now
Original change's description:
> Suppress crashing perftests on Win Intel Exp Rel
>
> Also moves ANGLE_SKIP_TEST_IF to a header shared between end2end and
> perf tests.
>
> BUG=chromium:997674
>
> Change-Id: I7c5968e6d861c4bff703ddc6ae0e4e021e47061f
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1768374
> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
TBR=geofflang@chromium.org,cwallez@chromium.org,jmadill@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: chromium:997674
Change-Id: I0a2124c93d1abd6c7efd2b29e942ee966982eed2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1810763
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
a7003d5f
|
2019-07-19T11:43:34
|
|
Reland "EGL: Implement EGL_KHR_no_config_context"
Add extension string and flag to all renderers that pass
Modify eglCreateContext to accept EGL_NO_CONFIG
Modify eglQueryContext per specification
Modify eglMakeCurrent to bypass surface-context config compatibility checks
Add check for client API
Create new end2end test EGLNoConfigContextTest
Disable on most renderers to prevent possible fail with future configs
Bug: angleproject:3635
Test: dEQP-EGL.functional.create_context.no_config*
angle_end2end_tests --gtest_filter=EGLNoConfigContextTest*
Change-Id: I88c1922a1e75afcc49922a9eccb4f1ae046c024a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1806140
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
01dfe404
|
2019-09-04T12:08:25
|
|
Capture/Replay: Use resource ID maps in cpp replay.
Introduces a new enum for resource ID types. This is used in auto-
generated code to convert ParamType to resource ID map types.
Also implements a lot of new parameter captures for gen/delete calls.
Bug: angleproject:3611
Change-Id: I26cca1df88d1783d9830c89438c99f7593a70ea9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1784059
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
db7a36f4
|
2019-09-17T00:22:32
|
|
Revert "Vulkan: SwiftShader integration."
This reverts commit 1224802c214d8f3d5b1f31a35d4461ada39b94c1.
Reason for revert: https://bugs.chromium.org/p/angleproject/issues/detail?id=3912
Original change's description:
> Vulkan: SwiftShader integration.
>
> Adds a new EGL extension for picking SwiftShader when using the Vulkan
> back-end. Also cleans up ICD enabling code RendererVk. Also includes a
> change to a buffer size necessary to support SwiftShader's minimum
> limits.
>
> 32-bit is currently left disabled to work around an issue on AMD Win7.
>
> Bug: angleproject:3876
> Bug: b/140251624
> Change-Id: I33c55d994801d6154caca0cad0a608c1e808d517
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1776231
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,jonahr@google.com,jmadill@chromium.org
Change-Id: Id7464250f6941b0228a6b2a9bd0349823727275b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3876, b/140251624
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1808101
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
2e16f639
|
2019-09-16T18:37:00
|
|
Capture/Replay: Refactor cpp replay param writes.
This makes a few more methods use static helpers. Introduces a
DataCounters helper class that can manage tracking the names for
particular local data members in the cpp replay.
Prepares for a larger refactor to support resource ID maps.
Bug: angleproject:3611
Change-Id: I25b4cc80cc3aa140c1cd15d9012c9542ba0cfc87
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1802743
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1224802c
|
2019-09-16T15:17:33
|
|
Vulkan: SwiftShader integration.
Adds a new EGL extension for picking SwiftShader when using the Vulkan
back-end. Also cleans up ICD enabling code RendererVk. Also includes a
change to a buffer size necessary to support SwiftShader's minimum
limits.
32-bit is currently left disabled to work around an issue on AMD Win7.
Bug: angleproject:3876
Bug: b/140251624
Change-Id: I33c55d994801d6154caca0cad0a608c1e808d517
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1776231
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
20bb47d3
|
2019-09-16T12:55:30
|
|
Skip a angle_end2end_tests on Linux Intel OZone.
Texture2DFloatTestES2.TextureFloatRenderTest/ES2_OpenGLES
R=jmadill@chromium.org
Bug: chromium:1003971
Change-Id: I96d858bbfbbaa7d98d9a7488cb98e0c1fca18ba3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1807581
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b5560486
|
2019-08-30T17:09:04
|
|
BaseInstance VertexAttribDivisor fix
Add tests not using gl_InstanceID/gl_BaseInstance but set
vertexAttribDivisor which implicitly reference base instance value.
Add fixes and workarounds based on this change.
Bug: chromium:891861, angleproject:3402
Change-Id: I2d93c181029f4ca1741f244363568096964d6b19
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1779350
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3a2e01ed
|
2019-09-16T13:08:39
|
|
Vulkan: Require sampling support for attachments.
Since Framebuffer attachments can be copied from with CopyTexImage, we
must require transfer support. This will affect the amount of formats
we can expose correctly for different uses.
Bug: angleproject:3876
Change-Id: I0343da94b5f8e05dca946e7029ffb8fdf155bb41
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1803756
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d32dae1b
|
2019-09-13T22:06:56
|
|
Revert "EGL: Implement EGL_KHR_no_config_context"
This reverts commit c4b1fbd69b12c0af30a58d0810f88d1301b8dabd.
Reason for revert: https://crbug.com/1003971
Original change's description:
> EGL: Implement EGL_KHR_no_config_context
>
> Add extension string and flag to all renderers that pass
> Modify eglCreateContext to accept EGL_NO_CONFIG
> Modify eglQueryContext per specification
> Modify eglMakeCurrent to bypass surface-context config compatibility checks
> Add check for client API
> Create new end2end test EGLNoConfigContextTest
> Disable on most renderers to prevent possible fail with future configs
>
> Bug: angleproject:3635
> Test: dEQP-EGL.functional.create_context.no_config*
> angle_end2end_tests --gtest_filter=EGLNoConfigContextTest*
> Change-Id: I7fbb137f1222ae7eebff4192013b7d3c5fcf0436
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1762709
> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,timvp@google.com,jmadill@chromium.org,m.maiya@samsung.com,j.vigil@samsung.com
Change-Id: I849aa796803e3cda9b480a39be813ef9105325bb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3635
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1803789
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
6caa2652
|
2019-09-11T08:06:13
|
|
Vulkan: Support float textures and renderbuffers
Fixed support in the vulkan backend for legacy
GLES2.0 formats (luminance, alpha,
luminance_alpha)
Correctly exposed the following extensions:
OES_texture_float
OES_texture_half_float
OES_texture_float_linear
OES_texture_half_float_linear
EXT_color_buffer_float
EXT_color_buffer_half_float
Some of the above extensions have different
requirements depending on other extension support
and the context client version, and were
incorrectly assuming the most restrictive
requirements to be exposed.
Implemented end2end tests for:
OES_texture_float
OES_texture_half_float
OES_texture_float_linear
OES_texture_half_float_linear
EXT_color_buffer_float
EXT_color_buffer_half_float
Bug: angleproject:2898
Bug: angleproject:2726
Test: ./angle_end2end_tests --gtest_filter='Texture2DFloatTest*'
Change-Id: I7024aa1393eadafb5a0fb83c23e9035aae650b67
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1740276
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c4b1fbd6
|
2019-07-19T11:43:34
|
|
EGL: Implement EGL_KHR_no_config_context
Add extension string and flag to all renderers that pass
Modify eglCreateContext to accept EGL_NO_CONFIG
Modify eglQueryContext per specification
Modify eglMakeCurrent to bypass surface-context config compatibility checks
Add check for client API
Create new end2end test EGLNoConfigContextTest
Disable on most renderers to prevent possible fail with future configs
Bug: angleproject:3635
Test: dEQP-EGL.functional.create_context.no_config*
angle_end2end_tests --gtest_filter=EGLNoConfigContextTest*
Change-Id: I7fbb137f1222ae7eebff4192013b7d3c5fcf0436
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1762709
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b1580a27
|
2019-08-27T18:08:56
|
|
Vulkan: Set half float vertex format to valid in 2.0 context
- OES_vertex_half_float extension requires this patch
- Add end2end tests to verify OES_vertex_half_float extension
BUG=angleproject:3191
BUG=angleproject:3802
Test:
angle_end2end_tests --gtest_filter=*VertexAttributeTest.HalfFloatClientMemoryPointer*
3DMark Icestorm GT1
Change-Id: Ia597021a5ae6b4853ee1199989ec3f9cc23c7fac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1793354
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1439b6d5
|
2019-09-06T07:27:49
|
|
Vulkan: Fix integer overflow for max per stage and combined uniform buffers.
This was causing dEQP-GLES3.functional.implementation_limits.max_fragment_uniform_blocks and dEQP-GLES3.functional.implementation_limits.max_combined_uniform_blocks to fail on Vulkan drivers that expose > INT_MAX maxPerStageDescriptorUniformBuffers or maxDescriptorSetUniformBuffers limits.
Bug: angleproject:3824
Change-Id: I6c5a328ddefa43fedb2361448fe4cbe6c405ef4e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1734786
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
4fdeb8d2
|
2019-09-12T10:08:15
|
|
Vulkan: Reduce uniform block dynamic buffer size.
This is to fit in the minimum required Vulkan limits that SwiftShader
exposes.
Bug: angleproject:3876
Bug: b/140251624
Change-Id: If1a36fc578675ebb07d3f6546689709882c174f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1801264
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f421e0e3
|
2019-09-11T16:19:45
|
|
Make angle_deqp_gles*_tests use discrete GPU for test expectations.
Bug: chromium:1003030
TEST=bots
R=kbr@chromium.org
Change-Id: I1717f39f9573f0161fe19e63ce49ef4e618dc07f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1799323
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
790abf03
|
2019-08-28T13:57:52
|
|
Vulkan: Support program interface queries for inputs
Program interface queries are a generic way to query attributes of
the program like uniforms, samplers, attributes, etc. This change
supports those queries for program inputs.
Bug: angleproject:3596
Test: dEQP-GLES31.functional.program_interface_query.*
Test: ProgramInterfaceTest.cpp
Change-Id: Ie904274f4efd87357256f559b69e148e8eda6119
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1775458
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
d1c4a6d6
|
2019-09-07T09:33:57
|
|
Add final to class TIntermPreprocessorDirective
Suppresses this new warning in clang 10:
IntermNode.h:971:37: warning: class with destructor marked 'final' cannot be inherited from [-Wfinal-dtor-non-final-class]
~TIntermPreprocessorDirective() final;
BUG=angleproject:3903
Change-Id: I26a2fe1440653c83cf1b0498ee3bff0829a10145
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1789930
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
8ac49e18
|
2019-09-04T17:38:22
|
|
Fix dEQP renderbuffer unspecified attachment test.
The spec mandates default sizes of 0 for everything, while we
assume a non-initialized Renderbuffer is RGBA4.
Bug: angleproject:2321
Test: dEQP-GLES3.functional.state_query.fbo.framebuffer_unspecified_attachment_x_size_rbo
Change-Id: I7defbdda46fc90dc3672628667c710a8304473b7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1785881
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
d9456b25
|
2019-09-11T08:21:14
|
|
Vulkan: Enable further dEQP 3.1 tests
As TimVP pointed out, a previous change enabled some previously-skipped
texture gather 2d_array tests. Enabling them.
Bug: angleproject:3605
Bug: angleproject:3189
Change-Id: I3ad190131339a04441fdd05e23ff3b7ac724dc83
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1797655
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
0b8eca79
|
2019-09-10T10:39:40
|
|
Capture/Replay: Fix CaptureShaderSource_string.
Was accessing a buffer out-of-bounds. Also wasn't handling negative
length.
Test: ASAN build
Bug: angleproject:3611
Change-Id: I0f1cfa09d0488de20928d90e910803d98c225968
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1796082
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
79ad0411
|
2019-09-09T15:05:37
|
|
Vulkan:Pass through min/max program texel offset
The Vulkan min/maxTexelGatherOffset VkPhysicalDeviceLimits correspond to
OpenGL's GL_MIN/MAX_PROGRAM_TEXTURE_GATHER_OFFSET params. Pass them
directly through.
Bug: angleproject:3605
Change-Id: Ic6a22bbe30ee2b0baaeaa62b6e26dc844c2ad82d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1793357
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
58c5b07b
|
2019-09-06T12:45:55
|
|
Replace Issue 3221 with 2672 in deqp_gles3_test_expectations.txt
Issue 2672 is tracking the work required to support instanced rendering
with Vulkan backend when the extension VK_EXT_vertex_attribute_divisor
is not present on the device. That work is required to pass the tests
currently marked "FAIL" and GLES 3.0 conformance.
Bug: angleproject:2672
Test: None
Change-Id: I11e3a7a7a9482b4eb3d5f5c7dbf14caec7fff00e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1790362
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
46c88567
|
2019-09-04T11:17:49
|
|
Correct glCompressedTexSubImage3D() Parameter Checking
GL_INVALID_OPERATION is generated if format is an ETC2/EAC format and
the target is not GL_TEXTURE_2D_ARRAY.
Bug: angleproject:3895
Test: dEQP-GLES3.functional.negative_api.texture.compressedtex*image3d
Test: KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_image
Change-Id: I7f653192328f0bb067cc4a0c0285a2d3acec7024
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1784060
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c1af9abf
|
2019-08-28T14:35:32
|
|
Add support for overriding internal format for D3D11 texture EGLImages
Add an optional EGL_D3D11_TEXTURE_FORMAT_ANGLE attribute that is the
GL internal format to use for EGLImage being created. This will be used
for RGB emulation of swap chain texture backed WebGL contexts in Chrome
when they have alpha:false set. Without RGB emulation it is possible to
observe side-effects of the underlying swap chain being RGBA such as
reading/writing the alpha channel, BlitFramebuffer working/not working
when expected, etc.
Also document creating EGLImages from D3D11 textures in the existing
EGL_ANGLE_d3d_texture_client_buffer extension along with RGB emulation.
Bug: chromium:699566, chromium:939657
Change-Id: I4931cb7bdc46e9bc6debd56b79ecc10ea27bd78b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1777099
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org>
|
|
263e08b6
|
2019-09-09T12:15:53
|
|
Vulkan: Enable Previously Failing texstorage3d Tests for Pixel 2
The following tests were failing on Pixel 2, but appear to be passing
now. I'm not sure what fixed them, but there has been a lot of work with
3D textures recently.
Bug: angleproject:3816
Test: dEQP-GLES3.functional.texture.specification.texstorage3d.format.rgba16*
Test: dEQP-GLES3.functional.texture.specification.texstorage3d.format.rgb16*
Test: dEQP-GLES3.functional.texture.specification.texstorage3d.format.rg32*
Change-Id: I0ab7be4685fc0c6879ad83c7402798e2237649a4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1791276
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
f29125be
|
2019-08-27T10:31:24
|
|
Update the rules for unsized float renderability.
dEQP uses the following rules for unsized float format renderability in
ES2:
HALF_FLOAT_OES + RED : GL_EXT_texture_rg and GL_OES_texture_half_float
HALF_FLOAT_OES + RG : GL_EXT_texture_rg and GL_OES_texture_half_float
HALF_FLOAT_OES + RGB : GL_EXT_color_buffer_half_float and GL_OES_texture_half_float
HALF_FLOAT_OES + RGBA: GL_EXT_color_buffer_half_float and GL_OES_texture_half_float
FLOAT + RED : GL_EXT_texture_rg and GL_OES_texture_float
FLOAT + RG : GL_EXT_texture_rg and GL_OES_texture_float
FLOAT + RGB : never
FLOAT + RGBA: never
BUG=angleproject:3283
Change-Id: I4c4c0d290d2c7dec45419a0765fa27b79f0ad774
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1773304
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|