1. 26 Aug, 2015 3 commits
    • Make PackedVarying a D3D-only type. · 4cff2477
      Jamie Madill authored
      The register assignment stuff only applies to the D3D back-end.
      Cleans up the GL back-ends use of PackedVarying, and will lead
      to future cleanups relating to packing varyings.
      
      BUG=angleproject:1123
      
      Change-Id: Iaaa5fc03577e5b61ea6ae76ee1e15ad608037f34
      Reviewed-on: https://chromium-review.googlesource.com/295190Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Tested-by: 's avatarJamie Madill <jmadill@chromium.org>
    • Fix debug build on Linux · 401d9fe6
      Olli Etuaho authored
      Compiling an assert in Program.cpp was failing at least on GCC 4.8
      because it compared unsigned size_t to zero, a comparison that was always
      true. The C standard defines size_t as unsigned, so the assert shouldn't
      be necessary on other platforms either.
      
      There was already a commit on top of the patch that added the bug, so it
      is simpler to fix the problem by changing the assert rather than
      reverting.
      
      TEST=standalone debug build on Linux
      
      Change-Id: Ifd910332a770f7360a15c31706beca740d0f289d
      Reviewed-on: https://chromium-review.googlesource.com/294971Reviewed-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
      Tested-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
    • Add deep copying support for typed AST nodes · d7a25243
      Olli Etuaho authored
      Resubmit with inconsistent override warnings fixed.
      
      Removing dynamic indexing of vectors and matrices will require copying
      the indexed nodes in case they are written. Any type of l-value node that
      doesn't have side effects may need to be copied. Add a copying function
      for all typed node classes so that this copying can be performed.
      
      Private copy constructors are used to implement the deepCopy function in
      order to make maintenance easier. With copy constructors, each subclass
      only needs to take care of copying its own members, and not the base
      class members, which reduces the possibility of errors. Copy constructors
      are disabled for all node classes that don't support deep copying by
      inheriting TIntermNode from angle::NonCopyable.
      
      Assignment operator is disabled for all node classes through inheriting
      angle::NonCopyable. This applies also to classes that now get the private
      copy constructor.
      
      Explicit copy constructor and assignment operator declarations are added
      to some classes which show up in node member variables to make code
      clearer.
      
      BUG=angleproject:1116
      TEST=angle_unittests
      
      Change-Id: I7964976f5dac7dfd745b8c6612ca06fb01d271c4
      Reviewed-on: https://chromium-review.googlesource.com/295080Tested-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarZhenyao Mo <zmo@chromium.org>
  2. 25 Aug, 2015 7 commits
  3. 24 Aug, 2015 9 commits
  4. 21 Aug, 2015 9 commits
  5. 20 Aug, 2015 9 commits
  6. 19 Aug, 2015 3 commits