1. 03 Feb, 2018 1 commit
  2. 02 Feb, 2018 2 commits
  3. 01 Feb, 2018 7 commits
  4. 31 Jan, 2018 6 commits
  5. 30 Jan, 2018 6 commits
  6. 29 Jan, 2018 5 commits
  7. 28 Jan, 2018 2 commits
  8. 26 Jan, 2018 3 commits
    • Print more logs when using default Platform · 6807f826
      Yuly Novikov authored
      Some logs prior to Test Platform initialization were getting lost.
      
      1. Also print WARN() to stdout
      2. Use Android specific logging facilities
      
      BUG=angleproject:1660
      
      Change-Id: I8424958426809567396ef24cedc2d427a3a21959
      Reviewed-on: https://chromium-review.googlesource.com/887944Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
    • ES31: Refactor link mismatch error log · 881b7bfa
      Jiawei Shao authored
      This patch intends to refactor the structure of logging link mismatch
      errors to meet the new GLES 3.1 program link requirements and support
      linking program with geometry shader.
      
      This patch is mainly focusing on the following 4 issues:
      1. There are totally 14 places that log the link mismatch errors
         in almost same format.
      2. A temporary string is created (STRUCT_NAME.FIELD_NAME) before
         checking a field of a block, which is of no use if link succeeds.
      3. LinkValidateVariablesBase needs to know "shaderTypes" if we support
         geometry shader based on current structure. Since uniforms are
         checked in the range of the whole program, it is unnecessary to
         know in which shader a uniform is defined if link succeeds.
      4. GLES 3.1 regards varyings with same location but different names
         as matched, so it isn't enough to log errors only by one name.
      
      This patch can solve all these issues by the following 3 changes:
      1. Replace "infoLog" and "variableNames" by "mismatchedFieldName" (the
         complete field name if the mismatch occurs on a field of a struct
         or block).
      2. Use enum LinkMismatchError as the return value of all linkValidate*
         functions to reflect the detail of the link mismatch error.
      3. Log all the link mismatch errors by InfoLog::logLinkMismatch where
         we can get shader types instead of passing them into linkValidate*
         functions.
      
      BUG=angleproject:1941, angleproject:2144
      TEST=angle_end2end_tests
      Change-Id: I3ed876d61f812cc7a45a6a3c5fec0b4a88b9cc2c
      Reviewed-on: https://chromium-review.googlesource.com/844215
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
    • Use ImmutableString for HLSL texture references · c13bda86
      Olli Etuaho authored
      This also adds ImmutableStringBuilder class, which can be used to
      build ImmutableStrings in place without extra allocations if the
      maximum length is known in advance.
      
      BUG=angleproject:2267
      TEST=angle_unittests
      
      Change-Id: I4dfb78adeb0cffcfad0d25753fb8063466012c92
      Reviewed-on: https://chromium-review.googlesource.com/886362
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
  9. 25 Jan, 2018 6 commits
  10. 24 Jan, 2018 2 commits
    • Track parameter qualifiers of functions in call nodes · 68981eb5
      Olli Etuaho authored
      We now add a reference to TFunction to all TIntermAggregate nodes
      where it is possible, including built-in ops. We also make sure
      that internal TFunctions added in traversers have correct parameter
      qualifiers.
      
      This makes TLValueTrackingTraverser much simpler. Instead of storing
      traversed functions or looking up builtin functions from the symbol
      table, determining which function parameters are out parameters can
      now be done simply by looking it up from the function symbol
      associated with the aggregate node.
      
      Symbol instances are no longer deleted when a symbol table level goes
      out of scope, and TFunction destructor no longer clears the
      parameters. They're all either statically allocated or pool allocated,
      so this does not result in leaks.
      
      TEST=angle_unittests
      BUG=angleproject:2267
      
      Change-Id: I57e5570da5b5a69a98a8778da3c2dc82b6284738
      Reviewed-on: https://chromium-review.googlesource.com/881324
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    • Vulkan: use supported composite alpha · 12da5e75
      Yuly Novikov authored
      Try VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR first,
      if not supported, try VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR.
      Fail if it is not supported either.
      
      BUG=angleproject:2314
      
      Change-Id: I875a60f7b51b9880da2d2916d602a6e7e8ca479f
      Reviewed-on: https://chromium-review.googlesource.com/882320
      Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>