1. 06 Apr, 2021 15 commits
  2. 05 Apr, 2021 2 commits
    • Move restricted traces to CIPD. · 78dde332
      Jamie Madill authored
      All traces are now stored as DEPS entries in CIPD. The auto-generation
      script generates the DEPS entries. Note that we don't include DEPS in
      the list of generated outputs to simplify other rollers. Also we update
      auto-generation to include full sources list to allow 'gn analyze' to
      work successfully.
      
      Usees a trace fixture for common code. This will enable a more compact
      trace without as much repeated code. We must land a set of re-trace
      traces to avoid breakage. 
      
      Also includes a python script for uploading new traces to CIPD. The
      script first checks if traces are already present in the cloud, and if
      so it skips the upload. It will take a while to complete as the number
      of traces grows larger as it takes a few seconds per trace.
      
      The traces in this patch are also re-traced to use the common fixture
      code instead of including duplicated code in each trace. They now form
      a simple common interface and the autogenerated cpp is now simply a list
      of properties.
      
      I've also updated the capture/replay tests to use the simpler common
      entry point integration. There is less auto-generated glue code now.
      We now use a new serialized string query extension instead of calling
      directly into ANGLE's internals.
      
      Also includes a docs update. The capture/replay sample is broken and
      we'll need to update it in a follow-up CL. Also includes a few necessary
      fixes to the retracing script.
      
      Bug: angleproject:5811
      Change-Id: I977bc6dc56843c8966377fc445ae97e91e17319a
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2797833
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com>
      Reviewed-by: 's avatarTim Van Patten <timvp@google.com>
    • infra: Add builder group to CI properties. · f7019e45
      Jamie Madill authored
      The builder group is necessary for recipe scripts. A first preliminary
      step towards standalone testers.
      
      Note on naming: Chromium bots use "chromium.X". WebRTC and V8 use
      "client.webrtc" etc. Going with just "angle" for simplicity.
      
      Bug: angleproject:5114
      Change-Id: Ie0e47aa28eaeab4ebe8d13900c1b68cad8a7a1a5
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2805892Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
  3. 03 Apr, 2021 2 commits
    • Validate PPO sampler uniforms · 323c5f24
      Tim Van Patten authored
      "Command & Conquer: Rivals" uses PPOs and was hitting the following
      assert:
      
          angle::Result ContextVk::updateActiveTextures(const gl::Context *context)
          {
          ...
              for (size_t textureUnit : activeTextures)
              {
                  gl::Texture *texture        = textures[textureUnit];
                  gl::TextureType textureType = textureTypes[textureUnit];
                  ASSERT(textureType != gl::TextureType::InvalidEnum);
      
      This is the same assert that is generated by the test
      ProgramPipelineTest31.DifferentTextureTypes which is currently being
      skipped since it's known to fail.
      
      This CL refactors sampler validation into the ProgramExecutable to allow
      PPOs to take advantage of the shared code and behave correctly, since
      the necessary data is already copied into the PPO's ProgramExecutable
      via ProgramExecutable::updateActiveSamplers(). This also takes advantage
      of the subject/observer pattern that's already established between
      programs and PPOs to ensure only the PPOs that the program is a part of
      are updated when a program's sampler uniforms are updated.
      
      Bug: angleproject:3570
      Bug: b/182409935
      Test: ProgramPipelineTest31.DifferentTextureTypes
      Change-Id: I3d34efd66dc85e7ff23a8422cb14d5f90a5f7085
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2792862
      Commit-Queue: Tim Van Patten <timvp@google.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com>
    • Add GL_ANGLE_get_serialized_context_string. · 9b0911a0
      Jamie Madill authored
      This will provide a front-door entry point where we can get
      a serialized string representing the context state. Previously
      we would have to call ANGLE internal directly.
      
      This will enable a refactor of the replays to work more like
      standalone plugin libraries.
      
      Bug: angleproject:5811
      Change-Id: I5a97d7aa3cd70c49199264c2eb7ca953943ac3c3
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2803391
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com>
      Reviewed-by: 's avatarTim Van Patten <timvp@google.com>
  4. 02 Apr, 2021 14 commits
  5. 01 Apr, 2021 7 commits