1. 14 Mar, 2019 7 commits
  2. 13 Mar, 2019 3 commits
    • Fix ShCompileTest.DecimalSepLocale failure. · 494afea9
      Jonah Ryan-Davis authored
      The test had an additional check to make sure we have coverage on every
      platform, but this is unnecessary and requires too much overhead to
      maintain a list of good locales for all platforms.
      
      Bug: 941249
      
      Change-Id: I3e6da2ad61453fc385edf5f18101c8cb13ae0503
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1520989
      Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    • Fix several WGL test failures. · 13a8c4d8
      Yuly Novikov authored
      SimpleOperationTest.ClearAndSwap/ES2_WGL failed when run in isolation,
      since getGLWindow()->hasError() would report a previous error,
      instead of result of swapBuffers().
      When running after an OPENGL test, swapBuffers() would clear
      the previous error, but that doesn't happen in isolation.
      
      The previous error is from loading WGL functions, some of which are
      expected not to be present. Clear the error in GetProcAddressWithFallback,
      but verify that there is no error entering it.
      
      This uncovers more errors in angle_perftests:
      DrawCallPerfBenchmark.Run/wgl
      DrawCallPerfBenchmark.Run/wgl_tex_change
      DrawCallPerfBenchmark.Run/wgl_vbo_change
      DrawElementsPerfBenchmark.Run/wgl_ushort
      They come from redundant calls when destroying a window. Fix this as well.
      
      Several more errors where uncovered by debug prints, fix those, too.
      
      Bug: angleproject:3153
      Change-Id: I559c098be9dcdfd3add83f045f745d190250b986
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1515602
      Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
      Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>
    • Fix eglChooseConfig for attributes that have exact default values. · 4e87659e
      Ian Elliott authored
      The implementation of eglChooseConfig does not match the
      specification for attributes not provided by the calling function.  It
      is supposed to use the default value and match semantics, per the
      specification.  This is fine for many attributes (where the value in
      the EGLConfig doesn't matter).  Currently, this affects the following
      attributes:
      
      - EGL_COLOR_BUFFER_TYPE
      - EGL_LEVEL
      - EGL_RENDERABLE_TYPE
      - EGL_SURFACE_TYPE
      - EGL_TRANSPARENT_TYPE
      - EGL_OPTIMAL_SURFACE_ORIENTATION_ANGLE
      - EGL_COLOR_COMPONENT_TYPE_EXT
      
      This change causes 55 of 65 of the dEQP-EGL.functional.choose_config.* tests
      to start passing.
      
      Bug: angleproject:3172
      Change-Id: I287af5ba7d296694d9a78ded5d1e3bc4e7043d03
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1506696
      Commit-Queue: Ian Elliott <ianelliott@google.com>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
  3. 12 Mar, 2019 4 commits
    • Include script outputs in run_code_generation.py. · 3c1f5a6b
      Jamie Madill authored
      This will prevent incorrect modifications to outputs from being checked
      into the repository. Requires a few changes to some generators.
      
      Bug: angleproject:3227
      Change-Id: I5285cb78a9d85df155a5272edf8b6b8cd27fc04c
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1515212Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • Add glmark2 to angle_perftests · f576a708
      Shahbaz Youssefi authored
      Bug: angleproject:3125
      Change-Id: I9242743c6b5c6e18d0a23ff853ef6b9b370865a6
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1452956
      Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com>
    • Allow testing::Combine in ANGLE_INSTANTIATE_TEST · b6eb3412
      Shahbaz Youssefi authored
      In most tests, ANGLE_INSTANTIATE_TEST is sufficient.  This macro takes a
      a variable number of angle::PlatformParameters and instantiates that
      many tests.  angle::PlatformParameters already aggregates multiple
      configurations.
      
      In a number of cases, however, it would be useful to have even more
      configurations in conjunction with angle::PlatformParameters.
      gl_tests/MultiviewDrawTest.cpp solves this by creating a custom class
      that combines angle::PlatformParameters with test-specific
      configurations.  gl_tests/CopyTextureTest.cpp included numerous tests
      with hardcoded values for its configurations.
      
      This change introduces ANGLE_INSTANTIATE_TEST_COMBINE_N.  These macros
      take N testing::* parameter generators followed by the list of
      angle::PlatformParameters as per ANGLE_INSTANTIATE_TEST.  They then
      testing::Combine these generators, placing the angle::PlatformParameters
      list first.
      
      Tests that use this functionality would inherit from
      ANGLETestWithParams<std::tuple<angle::PlatformParameters, ...>> instead
      of ANGLETest, and instantiate their tests as such:
      
      ANGLE_INSTANTIATE_TEST_COMBINE_3(TestName,
                                       PrettyPrintFunction,
                                       testing::ValuesIn(listOfParameters),
                                       testing::Values(some, other, parameters),
                                       testing::Bool(),
                                       ES2_D3D9(),
                                       ES2_D3D11(),
                                       ES2_OPENGL(),
                                       ES2_OPENGLES(),
                                       ES2_VULKAN());
      
      The name of the test, as used by --gtest_filter, will be suffixed with
      the output of the PrettyPrintFunction.  Assuming the tuple type given to
      ANGLETestWithParams is Params, this function takes a
      ::testing::TestParamInfo<Params> input to pretty-print the name of the
      test variation.  It is recommended to output the platform first for
      consistency with other tests.
      
      gl_tests/CopyTextureTest.cpp is modified to use this macro.
      
      Bug: angleproject:3125
      Change-Id: I0311b84659578bf3c7b5e9673b41cc3a3adfc50d
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1506236
      Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
    • Disable the initialization of shared memory · c9bc33cf
      Qin Jiajia authored
      This patch disables the initialization of shared memory for d3d backend.
      The initialization of shared memory is very slow and may produce
      incorrect behavior for some compute shaders on d3d backend.
      
      Bug: angleproject:3226
      Change-Id: I41f0f061a5611c52af7667f23938fa48819906b5
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1498385Reviewed-by: 's avatarJamie Madill (use @chromium please) <jmadill@google.com>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
  4. 11 Mar, 2019 3 commits
  5. 08 Mar, 2019 1 commit
    • Avoid unnecessary loading of D3D9.dll · b6a2f6bc
      Rafael Cintron authored
      D3D9.dll is being loaded by ANGLE when using D3D11. This change
      removes the D3D9 dependency.
      
      - Delayload D3D9.dll using ldflags in BUILD.gn
      
      - Replace Renderer11 usage of DebugAnnotator9 with DebugAnnotator11.
      Using debug annotations with Visual Studio PIX tools now requires Windows 10.
      
      - Refactor DebugAnnotator11 to QI ID3DUserDefinedAnnotation from the
      renderer's ID3D11DeviceContext instead of making a 'null' device.
      
      Bug: angleproject:3234
      Change-Id: I10a2b537e07cda2094b08abf02b7876bbe5009f8
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1508643
      Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
  6. 06 Mar, 2019 5 commits
  7. 05 Mar, 2019 7 commits
  8. 04 Mar, 2019 6 commits
  9. 02 Mar, 2019 1 commit
  10. 01 Mar, 2019 3 commits
    • Reland "Roll Vulkan repos" · 6f1a852f
      Shahbaz Youssefi authored
      This reverts commit 3805122b.
      
      Reason for revert: The OOM issue that coincidentally happened at the time this CL landed, and for which this CL was reverted, turned out to be irrelevant to this change.
      
      Original change's description:
      > Revert "Roll Vulkan repos"
      >
      > This reverts commit 55ea947c.
      >
      > Reason for revert: Seems to be causing a memory corruption on Windows/Intel bots.
      >
      > Original change's description:
      > > Roll Vulkan repos
      > >
      > > Bug: angleproject:3095
      > > Change-Id: I6ae9d61304981223f9e2f1869ed32612aa38952c
      > > Reviewed-on: https://chromium-review.googlesource.com/c/1405714
      > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      > > Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
      >
      > TBR=ynovikov@chromium.org,jmadill@chromium.org,syoussefi@chromium.org
      >
      > Change-Id: I61879770c9bb16ac2231b081bda08e6211ba6831
      > No-Presubmit: true
      > No-Tree-Checks: true
      > No-Try: true
      > Bug: angleproject:3095
      > Reviewed-on: https://chromium-review.googlesource.com/c/1470605
      > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
      > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      
      TBR=ynovikov@chromium.org,jmadill@google.com,syoussefi@chromium.org
      
      Bug: angleproject:3095
      Change-Id: Iabe8ea215b44c65c4c22b9b158c5dad3ffffdbb0
      Reviewed-on: https://chromium-review.googlesource.com/c/1489153
      Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@google.com>
    • Reland "Add system util to execute app and retrieve its output" · a9f89313
      Shahbaz Youssefi authored
      This reverts commit fe14b2e5.
      
      Reason for revert: failing test is reworked not to run angle_unittests
      itself, but another binary.
      
      Previously, this test was calling angle_unittests itself, but with a
      different target.  On the bots, that was in turn calling angle_unittests
      with even more arguments, including the addition of a log file location.
      Under some configurations, this separate process was thus trying to
      access files that were already opened by the parent process, leading to
      a test failure.
      
      In this CL, a new helper executable is created for the sake of this
      unittest.
      
      > Revert "Add system util to execute app and retrieve its output"
      >
      > This reverts commit c63d9552.
      >
      > Reason for revert: Test fails on Win7
      >
      > Original change's description:
      > > Add system util to execute app and retrieve its output
      > >
      > > This will be useful to run external applications, such as benchmarks,
      > > and process their output.
      > >
      > > Bug: angleproject:3125
      > > Change-Id: Ic13c69f2e034f4b47498fb2f299c62423c355c4a
      > > Reviewed-on: https://chromium-review.googlesource.com/c/1452534
      > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      > > Reviewed-by: Jamie Madill <jmadill@google.com>
      
      Bug: angleproject:3125, angleproject:3168
      Change-Id: I74815750484a79f33c36e0b4f941d4dd98f99aa5
      Reviewed-on: https://chromium-review.googlesource.com/c/1487631
      Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@google.com>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
    • Vulkan: Support ETC, S3TC and BPTC compressed textures · 76bd848c
      Shahbaz Youssefi authored
      Fixes the format table so the correct Vulkan format for the types are
      generated.  Additionally, implements CHROMIUM_copy_compressed_texture as
      well as other functions relevant to initializing compressed textures.
      
      Bug: angleproject:2670, angleproject:2904
      Change-Id: I682d36574262525027cddf8f329515f38cd77dc0
      Reviewed-on: https://chromium-review.googlesource.com/c/1468048
      Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@google.com>