1. 19 May, 2019 4 commits
    • Lioncash's avatar
      gl_shader_disk_cache: Make hash specializations noexcept · 7fdc644c
      Lioncash authored
      The standard library expects hash specializations that don't throw
      exceptions. Make this explicit in the type to allow selection of better
      code paths if possible in implementations.
      7fdc644c
    • Lioncash's avatar
      gl_shader_disk_cache: Remove redundant code string construction in LoadDecompiledEntry() · 683c4e52
      Lioncash authored
      We don't need to load the code into a vector and then construct a string
      over the data. We can just create a string with the necessary size ahead
      of time, and read the data directly into it, getting rid of an
      unnecessary heap allocation.
      683c4e52
    • Lioncash's avatar
      gl_shader_disk_cache: Make variable non-const in decompiled entry case · 5e4c2276
      Lioncash authored
      std::move does nothing when applied to a const variable. Resources can't
      be moved if the object is immutable. With this change, we don't end up
      making several unnecessary heap allocations and copies.
      5e4c2276
    • Lioncash's avatar
      gl_shader_disk_cache: Special-case boolean handling · f417be9d
      Lioncash authored
      Booleans don't have a guaranteed size, but we still want to have them
      integrate into the disk cache system without needing to actually use a
      different type. We can do this by supplying non-template overloads for
      the bool type.
      
      Non-template overloads always have precedence during function
      resolution, so this is safe to provide.
      
      This gets rid of the need to smatter ternary conditionals, as well as
      the need to use u8 types to store the value in.
      f417be9d
  2. 17 May, 2019 7 commits
  3. 14 May, 2019 5 commits
  4. 09 May, 2019 24 commits