|   | 25390156 | 2025-08-21T00:13:19 |  | Suppress unsafe buffers on a file-by-file basis in src/ [1 of N]
In this CL, we suppress many files but stop short of actually
enabling the warning by not removing the line from the
unsafe_buffers_paths.txt file. That will happen in a follow-on
CL, along with resolving any stragglers missed here.
This is mostly a manual change so as to familiarize myself with
the kinds of issues faced by the Angle codebase when applying buffer
safety warnings.
-- Re-generate affected hashes.
-- Clang-format applied to all changed files.
-- Add a few missing .reserve() calls to vectors as noticed.
-- Fix some mismatches between file names and header comments.
-- Be more consistent with header comment format (blank lines and
   trailing //-only lines when a filename comment adjoins license
   boilerplate).
Bug: b/436880895
Change-Id: I3bde5cc2059acbe8345057289214f1a26f1c34aa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6869022
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | 4f4eab29 | 2025-06-30T14:58:28 |  | Reset index buffer offset between indirect GL_LINE_LOOP draws
In two consecutive glDrawArraysIndirect with GL_LINE_LOOP mode, and
bound to a different Indirect Buffer, the variable value captured
through TransformFeedback is the same as the first result when the
second DrawArraysIndirect.
When calling DrawArraysIndirect the second time, DIRTY_BIT_INDEX_BUFFER
should be set to dirty so that it re-gets INDEX BUFFER to get the
correct result.
Bug: angleproject:428561247
Change-Id: I7f4ebb53e20cf8e362e67679b45185b8b68c56ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6687309
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Tingwei Guo <tingwei.guo@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | b7582680 | 2025-02-24T18:04:32 |  | Reland: GL: Allow untranslated shaders to pass through on GLES
Add an EGL extension EGL_ANGLE_create_context_passthrough_shaders which
uses the NULL translator and passes the original shader to the driver.
The parser is still used for shader reflection.
Always enable the null compiler backend. It has almost no binary size
cost and is now potentially used when the null ANGLE backend is not
enabled.
Bug: angleproject:398857482
Change-Id: Id528189ccbbacb1c444eacb151baadfda9fcc04b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6488609
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org> | 
            
              |   | 5dd05578 | 2025-04-14T07:34:57 |  | Revert "GL: Allow untranslated shaders to pass through on GLES"
This reverts commit 4e77552b86a89b449ada6d6c18f84285f5812b1d.
Reason for revert: breaks ChromeOS and fuzzers
Bug: angleproject:398857482
Original change's description:
> GL: Allow untranslated shaders to pass through on GLES
>
> Add an EGL extension EGL_ANGLE_create_context_passthrough_shaders which
> uses the NULL translator and passes the original shader to the driver.
> The parser is still used for shader reflection.
>
> Bug: angleproject:398857482
> Change-Id: I7c5fcc318c7e11931f78c08dcbf4764bf77d397d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6297527
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Bug: angleproject:398857482, angleproject:410423936
Bug: chromium:410114655, chromium:410100607, chromium:410121218
Bug: chromium:410052365, chromium:410290507, chromium:410178288
No-Presubmit: true
Change-Id: I45b01960637a1cda05d21a7df6d07465f6a8f5e9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6448984
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org> | 
            
              |   | 4e77552b | 2025-02-24T18:04:32 |  | GL: Allow untranslated shaders to pass through on GLES
Add an EGL extension EGL_ANGLE_create_context_passthrough_shaders which
uses the NULL translator and passes the original shader to the driver.
The parser is still used for shader reflection.
Bug: angleproject:398857482
Change-Id: I7c5fcc318c7e11931f78c08dcbf4764bf77d397d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6297527
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org> | 
            
              |   | 5024ccef | 2025-03-25T11:37:19 |  | WebGPU: Emulate line loops with primitive restarts
Bug: angleproject:383356846
Change-Id: Iab1d658cb3c5e32f88241f6757d1c2e5a84bf8ec
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6297524
Commit-Queue: Liza Burakova <liza@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | 62bf97d9 | 2025-03-10T14:23:31 |  | Metal: Fix line loop indexes for primitive restart
Use the existing code to generate line strips from line loops.
Bug: angleproject:401284933
Change-Id: Ie131199c23b93364fabb8f0dc6766f7e8d5f2b8d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333539
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org> | 
            
              |   | bc40362b | 2025-02-18T13:24:31 |  | Add line loop emulation for draw arrays
Bug: angleproject:383356846
Change-Id: I43f4835e17ecb2401418f77555fd70332612e1bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6090912
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Liza Burakova <liza@chromium.org>
Reviewed-by: Matthew Denton <mpdenton@chromium.org> | 
            
              |   | 40523499 | 2025-01-29T12:13:45 |  | WebGPU: Emulate line loops for drawElements
Bug: angleproject:383356846
Change-Id: I82a6dfad4a1c5d434f029701611e4b61344655f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6086120
Commit-Queue: Liza Burakova <liza@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org> | 
            
              |   | f9d08964 | 2024-10-29T14:14:43 |  | Fix primitive restart issue with line loop
Refine function CopyLineLoopIndicesWithRestart and function
CopyLineLoopIndicesWithRestart so that they can deal with the
case when there is only one index before/after restartIndex.
Bug: angleproject:376097643
Change-Id: I06ee0208522d6dc5b6cd6ec0ba4f8682de7b12f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5975353
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | 878e1c92 | 2024-10-07T16:34:54 |  | Vulkan: Fix line-loop draw arrays after elements
  Currently, when drawing line-loop arrays in Vulkan, an index
buffer is created to assist in drawing (since Vulkan does not
natively include a line-loop draw mode). However, when LL array
draw calls are mixed with non-LL element draw calls, it can lead
to some rendering issues due to the fact that the proper index
buffer is not obtained.
* In VertexArrayVk::handleLineLoop(), if the cached indices are the
  same as the last draw, the same index buffer is obtained from the
  LineLoopHelper object.
  * (Using the newly added getCurrentIndexBuffer())
* Added unit test in which a triangle element draw is places between
  two LL array draws. Before the fix, the second LL draw would result
  in an incorrect line draw.
Bug: chromium:40911000
Change-Id: Ibba9a0cb2b77a2b6ae2c1e9230afe3d16b70cb63
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5908694
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> | 
            
              |   | 572fd30e | 2024-09-25T13:33:01 |  | Clean up LineLoopIndirectTest
  The helper test function runTest() for LineLoopIndirectTest
includes some special cases in its args that are not used in all
cases, such as consecutive indirect calls. This CL aims to split
this function into separate test cases to make each test more
readable.
* Added functions for some of the common procedures.
* Split runTest() into each test suite with the help of the common
  functions and values as well as the special cases for each.
* Removed runTest() from this test suite.
* Updated an old bug number (667 -> 42265165).
Bug: angleproject:360758685
Change-Id: I98e1facff0a6bad0ee2deca9313644379345d9c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5892535
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com> | 
            
              |   | 67a5ea45 | 2024-09-23T16:09:12 |  | Vulkan: Fix the error from multiple lineloop draws
  Since Vulkan does not support line-loop draws natively, such a
draw call requires the conversion of the related buffers to prepare
them for this operation. For glDrawElementsIndirect(), the index
and the indirect buffers would need conversion.
However, what currently happens in this case is that the original
buffer pointer is overwritten after the conversion, removing the
link to the original buffer. Therefore, if there is a second line-loop
call just after the first, it will try to use the converted buffer as
the new source, which leads to errors due the buffer already being in
use.
The index buffer for the draw is bound when the related dirty bit is
handled. Therefore, instead of using the draw index buffer directly
for handling the line-loop scenario, we can use the index buffer in
the form of a local pointer passed between functions. Then, in order
to reconcile line-loop with the other cases, the draw index buffer is
set just before setting up the indexed draw.
* Functions handling line-loop draws do not modify the element array
  buffer in VertexArrayVk directly, but use local buffer pointers to
  pass the current element array pointer to further processing and
  drawing.
* Added mCurrentElementArrayBuffer for ContextVk to be bound to the
  index buffer to used for draw instead of the one from its vertex
  array object.
  * Before the indexed draw, mCurrentElementArrayBuffer is set to the
    last destination index buffer.
* Added unit test that makes a line-loop draw and then a non-LL call
  using the same element array.
Bug: angleproject:360758685
Change-Id: I6d6328f6326c1a1f9f80e5ef346aa077c867d344
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5878764
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com> | 
            
              |   | 0621c95c | 2024-09-09T09:43:43 |  | Add test for repeated indirect line loop draws
This test is used to verify that two indirect draws drawing line loop
and sharing the same index buffer works.
Bug: angleproject:360758685
Change-Id: I4386e404ed0e0accf0dbb1edab8671e7f2d9939d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5855003
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> | 
            
              |   | d193d51b | 2024-06-17T22:46:08 |  | Replace issue ids post migration to new issue tracker
This change replaces anglebug.com/NNNN links.
Bug: None
Change-Id: I8ac3aec8d2a8a844b3d7b99fc0a6b2be8da31761
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5637912
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | 89e38b57 | 2022-06-22T15:04:08 |  | Refactor to use ANGLETest vs ANGLETestWithParam
Bug: angleproject:6747
Change-Id: I72ad52d0268eae0e1a401f12f3e94cc5efa402f2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719002
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com> | 
            
              |   | 797e627e | 2022-04-08T22:49:51 |  | Autogenerate list of features as enum
The WithX() and WithNoX() helpers are removed and replaced with enable()
and disable() member functions that take the name of the feature (as a
Feature::X enum constant).  This has two benefits:
- Adding tests that override a feature no longer requires additional
  helper functions to be written.
- There's no mistaking the feature name.
This change doesn't yet fix the main issue in anglebug.com/6435, but
does fix the following helpers using an old feature name (so they were
ineffective):
- WithMetalForcedBufferGPUStorage
- WithNoVulkanViewportFlip
A follow up would remove the old way of overriding features in tests and
replaces them with the new way.
Bug: angleproject:6435
Change-Id: Ida02b26ec72bc40d7a8938c76a93815bb903ca05
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3580982
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | f3d5dac3 | 2021-08-23T17:25:15 |  | Vulkan: SPIR-V Gen: Drop dependency to glslang
The SPIR-V gen path is now made default.  Compilation through glslang is
still supported for debugging, and is enabled on the GLSL* end2end tests
for smoke testing.  On release builds, glslang is not supported.
To test with glslang, add the following gn arg (only necessary if dcheck
is disabled):
    angle_enable_spirv_gen_through_glslang = true
Then enable the generateSPIRVThroughGlslang feature.  This can be done
by setting an environment variable:
    ANGLE_FEATURE_OVERRIDES_ENABLED=generateSPIRVThroughGlslang ./angle_deqp_gles2_tests
Binary size saving:
- 1.3MB on Linux (SPIR-V gen itself: 240KB)
- 730KB on Android (SPIR-V gen itself: 140KB)
Perf tests:
- LinkProgramBenchmark.Run/vulkan_compile_single_thread
  * Through glslang:
      truncated mean: 1287033.36
  * Direct SPIR-V Gen:
      truncated mean: 244495.91  (~80% reduction)
- LinkProgramBenchmark.Run/vulkan_compile_multi_thread
  * Through glslang:
      truncated mean: 4565894.83
  * Direct SPIR-V Gen:
      truncated mean: 1158164.10  (~75% reduction)
Bug: angleproject:4889
Bug: angleproject:6210
Change-Id: I486342702977c8114e90073b97183aba115a8b2d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3115140
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com> | 
            
              |   | 7d023dac | 2021-06-10T00:13:41 |  | Vulkan: SPIR-V Gen: Basic support for fragment shaders
Fragment shader built-ins are implemented in this change and direct
SPIR-V generation for fragment shaders is enabled.
Bug: angleproject:4889
Change-Id: I6f92a5585f242122a81c97a9b1aa2763009161a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2951625
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org> | 
            
              |   | ba7531da | 2021-04-07T12:51:17 |  | Add tests that use, then update, then use buffers
This triggers vk::DynamicBuffer allocations in BufferVk.
Bug: angleproject:5719
Change-Id: Ida855b23618497f76102e55f89ab1678f9c08753
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2809856
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | a6b16d29 | 2021-03-02T19:04:57 |  | Suppress UNINSTANTIATED_PARAMETERIZED_TEST failures on Ozone
We only support ES2 on Ozone, so tests that depend on ES3 or ES31
support are not instantiated there.
Bug: chromium:1183147
Change-Id: Id58bcd9b44a5b9a70b5ae8115e27c44f5dc81226
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2726550
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org> | 
            
              |   | 8a275449 | 2020-10-25T03:22:10 |  | Metal: Add ES3_METAL to ANGLE_ALL_TEST_PLATFORMS_ES3
Bug: angleproject:2634
Change-Id: Iacc3aaf17565c7b16879897db4b9dac16826d829
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2494526
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org> | 
            
              |   | cb6176f3 | 2020-09-29T01:08:00 |  | Metal: Support tri-fan & line-loop with primitive restart
Triangle fan:
- If primitive restart is NOT enabled and there is no active render
  pass, use Compute Shader to generate indices.
- If primitive restart is enabled, use CPU to generate indices.
Line loop:
- If draw non-instanced without primitive restart, generate and
  draw only one additional last segment (fastest).
- If draw instanced, primitive restart is NOT enabled, and there is no
  active render pass, use Compute Shader to generate indices (OK).
- Otherwise, use CPU to generate indices (slowest).
Also Disable OcclusionQueriesTest.ClearNotCounted failure on NVIDIA.
Bug: angleproject:2634
Bug: angleproject:5307
Change-Id: Ia5529825807a964f5fcb2a4af8844778896cd42a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2435859
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | ac44f8c5 | 2020-06-05T23:30:53 |  | Vulkan: Apply SPIR-V optimization to internal shaders
Shaves about 40KB from binary size.
Bug: angleproject:2022
Bug: angleproject:3432
Change-Id: I008c18e0040b1bafe022087113681e2ace6eb7b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1616963
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org> | 
            
              |   | 1a01b4b3 | 2019-11-11T16:41:07 |  | Refactor end2end test macros
This is a foundational CL to enabling the end2end tests on swiftshader.
Refactored infrastructure with new ANGLE_INSTANTIATE_TEST_ES*
macros that will run tests over all various combinations of all
platforms for different ES versions.
Just skipping failing tests initially to get the refactor landed.
Bug: angleproject:4081
Bug: angleproject:4092
Change-Id: I017f6c3267179e49b6ae08cc7488096b423dcdb5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1904635
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> | 
            
              |   | 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> | 
            
              |   | 5cbaa3f8 | 2019-05-07T15:49:22 |  | Don't inherit ANGLETest SetUp and TearDown.
Instead of inheriting from testing::Test's SetUp and TearDown we add
new methods 'testSetUp' and 'testTearDown'. This helps prevent a common
error of forgetting to call the base class method.
Also add a check in the ANGLETest destructor that SetUp and TearDown
have been called.
Bug: angleproject:3393
Change-Id: Iab211305cc06ffea9ca649e864ddc9b180f2cba0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1593960
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org> | 
            
              |   | b8149075 | 2019-04-30T16:14:44 |  | Clean up ANGLE test extension functions.
None of these functions needed to be member functions. Also make the
naming more consistent.
Bug: angleproject:3393
Change-Id: I7aafe2269a48af703a87bd9a8cf4cfab9e177dd3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1574673
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org> | 
            
              |   | 4967de72 | 2019-03-20T10:35:11 |  | Work around line loop streaming bug.
This forces a hard limit on the buffer size we allocate from D3D11. It
can work around a D3D11 driver bug on NVIDIA where we would get an
invalid map pointer. This seemed to happen when the buffer sizes were
close to MAX_UINT.
Bug: chromium:943087
Change-Id: I64aa9c55cbb82015101262c19c72741c140964a5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1531374
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | b980c563 | 2018-11-27T11:34:27 |  | Reformat all cpp and h files.
This applies git cl format --full to all ANGLE sources.
Bug: angleproject:2986
Change-Id: Ib504e618c1589332a37e97696cdc3515d739308f
Reviewed-on: https://chromium-review.googlesource.com/c/1351367
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | 
            
              |   | beb669da | 2018-09-21T16:25:52 |  | Vulkan: work around vkCmdCopyBuffer bug.
It seems that vkCmdCopyBuffer on Windows with Intel GPU neglects
the last region when given more than one.  Work around that in
LineLoopHelper::getIndexBufferForElementArrayBuffer() by adding an
unused region.  Enable corresponding test.
BUG=angleproject:2838
Change-Id: I8847c7b2cfdb94526d4d28ba5bf1f162da3a1ed4
Reviewed-on: https://chromium-review.googlesource.com/1238887
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org> | 
            
              |   | 85c4b43e | 2018-09-19T23:35:00 |  | Vulkan: Translate line loop indices from buffer.
When a line loop is drawn with byte indices from a buffer, translate
to short.  Enable test.
BUG=angleproject:2802
Change-Id: Ie178ec866387be85b91291c28e1978db0a09c20a
Reviewed-on: https://chromium-review.googlesource.com/1237293
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org> | 
            
              |   | 9d84ccba | 2018-09-12T18:09:02 |  | Vulkan: renderer->finish() before reading buffers.
Have to call renderer->finish() before reading a buffer otherwise you can
get stale data.
Enable IndexBufferOffsetTest.UInt8Index/ES2_VULKAN which now works.
Disable LineLoopTest.LineLoopUShortIndexBuffer/ES2_VULKAN which stopped
working on Windows with Intel GPU.
BUG=angleproject:2659
Change-Id: I1e21b0e1dacd3368923caf18e767e34ab696eef6
Reviewed-on: https://chromium-review.googlesource.com/1227032
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org> | 
            
              |   | 17dff6d2 | 2018-09-13T12:03:51 |  | Vulkan: Update LineLoopTest expectations.
One test was working but the suppression was not lifted. The other test
had no issue filed.
Bug: angleproject:2802
Change-Id: I88cd082b2edeca30ec4a8406809af749bb6ce152
Reviewed-on: https://chromium-review.googlesource.com/1200367
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org> | 
            
              |   | 5804dc8e | 2018-04-13T14:11:46 |  | Refactor GL tests to use a shader library
Instead of having the same simple shaders repeated over and over in
the test code, reuse a single shader library.
BUG=angleproject:2474
TEST=angle_end2end_tests
Change-Id: I13f8ca8c0125e6d30f1761639bf8c3f69e0e77d2
Reviewed-on: https://chromium-review.googlesource.com/1012078
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | 
            
              |   | a4fa9c27 | 2018-04-13T07:00:56 |  | Vulkan: drawElements with GL_LINE_LOOP and an offset
Also enables a test in LineLoopTest that validates this case.
Bug: angleproject:2473
Change-Id: Icb4c5735c11be40cdeceaa051f5a5cef33fd22c6
Reviewed-on: https://chromium-review.googlesource.com/1011669
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org> | 
            
              |   | a912046d | 2018-04-12T13:11:03 |  | Vulkan: DrawElements with line loops client side memory support
- Also enables 6 new tests in LineLoopTests.cpp in angle_end2end
Bug: angleproject:2458
Change-Id: I4aec12b0ac780e81e6811f1199a5acaf17d9b982
Reviewed-on: https://chromium-review.googlesource.com/1010411
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org> | 
            
              |   | a20af6d7 | 2017-09-18T13:32:29 |  | Use C++11 raw string literals instead of SHADER_SOURCE macro
This is better in many ways:
1. It doesn't confuse clang format
2. \n doesn't need to be included after preprocessor directives like
   the version directive.
3. It's using built-in functionality instead of something custom.
Raw string literals should be the preferred way to include shader
source in C++ files going forward.
BUG=angleproject:2157
TEST=angle_end2end_tests
Change-Id: I8b236a6e2d5c25d920297e5bc5b5b143eddeba1f
Reviewed-on: https://chromium-review.googlesource.com/671046
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | 
            
              |   | 231c7f56 | 2017-04-26T13:45:37 |  | Apply clang-format to many files.
This cleans up the formatting in many places.
BUG=None
Change-Id: I6c6652ebc042f1f0ffecced53582d09d66b4f384
Reviewed-on: https://chromium-review.googlesource.com/487884
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org> | 
            
              |   | 876429b7 | 2017-04-20T15:46:24 |  | Update gl2.h and update entry points.
Some method signatures were updated. Types like GLclampf and GLvoid
were replaced with other equivalents.
BUG=angleproject:1309
Change-Id: I05e8e2072c5a063d87ad96a855b907424661e680
Reviewed-on: https://chromium-review.googlesource.com/475011
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org> | 
            
              |   | e0cc2a4a | 2016-01-20T10:58:17 |  | Enable all angle_end2end_tests targeting OpenGL and OpenGL ES backends.
Added failure supressions and filed bugs for failing tests.
BUG=angleproject:1145
BUG=angleproject:1289
BUG=angleproject:1291
BUG=angleproject:1292
BUG=angleproject:1293
BUG=angleproject:1296
Change-Id: Ida78ba855500fe8a6ce6154d43ee01520330e3b1
Reviewed-on: https://chromium-review.googlesource.com/322695
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org> | 
            
              |   | d544cc9f | 2016-01-11T15:26:42 |  | Fail any ANGLE test if it outputs D3D11 SDK message in debug mode
Also:
 - Disable some Feature Level 9_3 tests that trigger SDK messages
 - Fix a debug object name issue. If you try to assign a debug name
   to an object twice then you get an SDK warning message. This can
   occur if you 'create' two objects (e.g. Rasterizer States) with
   identical DESCs on the same device, since D3D11 can optimize
   this and return the same object both times.
 - Disable the message checks in Line Loops tests, since the tests
   trigger incorrect D3D11 SDK messages on Win7 machines
BUG=angleproject:667;angleproject:1282
Change-Id: I7284fb3a11377afde24e0014e21dbcea80ebb126
Reviewed-on: https://chromium-review.googlesource.com/321393
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com> | 
            
              |   | 91f828e3 | 2015-07-13T11:08:19 |  | LineLoopTest: Fix the test not rendering anything.
BUG=angleproject:1063
Change-Id: Id0772b5c8479150a1e736aa7cd35ec6444753278
Reviewed-on: https://chromium-review.googlesource.com/285126
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org> | 
            
              |   | f34d1db9 | 2015-05-20T14:10:46 |  | Add table entries for almost all the remaining GL texture formats.
BUG=angleproject:884
BUG=angleproject:967
Change-Id: I113757dd9e1fae8fe0241a7286be979a90891b53
Reviewed-on: https://chromium-review.googlesource.com/270275
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/273135 | 
            
              |   | 859dcb88 | 2015-05-25T15:12:54 |  | Revert "Add table entries for almost all the remaining GL texture formats."
Missing include of <limits> for linux.
This reverts commit aa3a5fadebb2bad0be07eb2963a9d23f901c4c49.
Change-Id: Iafebfbc6154b4fe3a94e3f8b91b5ff496631c1f1
Reviewed-on: https://chromium-review.googlesource.com/273134
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org> | 
            
              |   | aa3a5fad | 2015-05-20T14:10:46 |  | Add table entries for almost all the remaining GL texture formats.
BUG=angleproject:884
BUG=angleproject:967
Change-Id: I0b05841272f4410c33ee4e4c3654846f07b7c39b
Reviewed-on: https://chromium-review.googlesource.com/270275
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org> | 
            
              |   | d3970de4 | 2015-05-14T11:07:48 |  | Move ANGLETest back in test_utils, leaving a proxy header for Chromium
BUG=angleproject:892
Change-Id: Ibd494813be87e996096077d6e208cc92461b8f49
Reviewed-on: https://chromium-review.googlesource.com/271154
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org> | 
            
              |   | ac3ab882 | 2015-05-12T13:31:28 |  | Temporarily move back ANGLETest in end2end_tests
This path needs to a Chrome change before it can change.
BUG=angleproject:892
Change-Id: I549737383b9720a2e7d83ee5e3145d71716f04cb
Reviewed-on: https://chromium-review.googlesource.com/270457
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org> | 
            
              |   | 9cb9583e | 2015-05-11T10:21:48 |  | Move end2end and standalone tests to gl_tests and egl_tests
Also introduce a test_utils directory that contains helpers used for all
types of tests.
BUG=angleproject:892
Change-Id: I9e1bff895020ffd3a109162283971a290a1098bd
Reviewed-on: https://chromium-review.googlesource.com/270198
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org> |