1. 03 Jan, 2017 6 commits
  2. 02 Jan, 2017 1 commit
  3. 30 Dec, 2016 2 commits
  4. 29 Dec, 2016 1 commit
    • HLSL default function parameters · 26d31453
      steve-lunarg authored
      This PR adds support for default function parameters in the following cases:
      
      1. Simple constants, such as void fn(int x, float myparam = 3)
      2. Expressions that can be const folded, such a ... myparam = sin(some_const)
      3. Initializer lists that can be const folded, such as ... float2 myparam = {1,2}
      
      New tests are added: hlsl.params.default.frag and hlsl.params.default.err.frag
      (for testing error situations, such as ambiguity or non-const-foldable).
      
      In order to avoid sampler method ambiguity, the hlsl better() lambda now
      considers sampler matches.  Previously, all sampler types looked identical
      since only the basic type of EbtSampler was considered.
  5. 22 Dec, 2016 1 commit
  6. 21 Dec, 2016 10 commits
  7. 20 Dec, 2016 8 commits
  8. 19 Dec, 2016 7 commits
    • Build: Fix #633, add missing overrides. · 432576fd
      John Kessenich authored
    • Merge pull request #637 from KhronosGroup/token-paste · 0955b1cb
      John Kessenich authored
      PP: Implement token pasting for PP identifiers.
    • Merge pull request #624 from steve-lunarg/remapper-strip-removed · e6cbc5b1
      John Kessenich authored
      WIP: Remapper: remove debug info for IDs stripped in other passes
    • Merge pull request #635 from steve-lunarg/sample-fix-2 · 4ba444b6
      John Kessenich authored
      HLSL: allow "sample" in expressions.
    • Merge pull request #625 from jbeich/gcc6 · 059d46ee
      John Kessenich authored
      Unbreak build on FreeBSD with GCC/libstdc++ 6.2.0
    • PP: Implement token pasting for PP identifiers. · d485e0b7
      John Kessenich authored
      Implement token pasting as per the C++ specification, within the current
      style of the PP code.
      Non-identifiers (turning 12 ## 10 into the numeral 1210) is not yet covered;
      they should be a simple incremental change built on this one.
      Addresses issue #255.
    • HLSL: allow "sample" in expressions. · a64ed3eb
      steve-lunarg authored
      Unlike other qualifiers, HLSL allows "sample" to be either a qualifier keyword or an
      identifier (e.g, a variable or function name).
      
      A fix to allow this was made a while ago, but that fix was insufficient when 'sample'
      was used in an expression.  The problem was around the initial ambiguity between:
      
         sample float a; // "sample" is part of a fully specified type
      and
         sample.xyz;     // sample is a keyword in a dot expression
      
      Both start the same.  The "sample" was being accepted as a qualifier before enough
      further parsing was done to determine we were not a declaration after all.  This
      consumed the token, causing it to fail for its real purpose.
      
      Now, when accepting a fully specified type, the token is pushed back onto the stack if
      the thing is not a fully specified type.  This leaves it available for subsequent
      purposes.
      
      Changed the "hlsl.identifier.sample.frag" test to exercise this situation, distilled
      down from a production shaders.
  9. 17 Dec, 2016 1 commit
  10. 15 Dec, 2016 1 commit
  11. 14 Dec, 2016 2 commits