1. 14 Apr, 2019 1 commit
    • Philip Langdale's avatar
      spirv: Prefix spirv compiler function struct names · 4912e344
      Philip Langdale authored
      These structs are included via extern declarations, so they can
      silently conflict with equivalently named declarations in an
      application if libplacebo is included statically.
      And this happens with mpv, which also declares a `spirv_shaderc`
      So, prefix the struct names with `pl_` to avoid this.
  2. 16 Nov, 2018 1 commit
    • Niklas Haas's avatar
      spirv: compat for older shaderc versions · a7674a99
      Niklas Haas authored
      Since there's no better way to check for the existence of this value
      other than by literally probing the header during the build step, we
      introduce a new "private" config.h for internal checks like this. (Which
      the user is unlikely to ever care about)
  3. 16 Jun, 2018 1 commit
  4. 29 May, 2018 1 commit
    • Niklas Haas's avatar
      spirv: switch to optimization level performance · bcb73f3a
      Niklas Haas authored
      Upstream has this in the meantime. It didn't really make a difference
      for me except for the polar shader (by 2%-3%), but that might just be
      measurement error.
      Also, fuck the indentation on this line. shaderc's function names are
      simply unreasonably long..
  5. 25 May, 2018 1 commit
  6. 25 Feb, 2018 2 commits
  7. 02 Feb, 2018 1 commit
    • Niklas Haas's avatar
      ra: rename ra to pl_gpu, change ra_ to pl_ · 3e881060
      Niklas Haas authored
      This is a very major rewrite operation, but all of the actual logic is
      unaffected. The change is completely cosmetic.
      The idea behind this is to avoid clashing the mpv ra_ namespace when
      libplacebo eventually makes its way back into mpv, allowing it to
      coexist with vo_gpu peacefully (at least for the transition period).
      It's also sort of weirdly inconsistent with the rest of libplacebo
  8. 27 Jan, 2018 1 commit
    • Niklas Haas's avatar
      spirv: work around libshaderc locale dependence · d66ecf6d
      Niklas Haas authored
      Do this by explicitly clearing LC_NUMERIC before calling into
      libshaderc. I'm not entirely sure whether libshaderc or glslang is to
      blame here, but either way, as long as it works - I'm happy.
      This is not that big of a deal performance-wise since shader compilation
      is infrequent, and it also doesn't need messy global initialization
      since we can just stuff the locale_t in with the struct priv.
  9. 10 Oct, 2017 1 commit
  10. 09 Oct, 2017 1 commit
    • Niklas Haas's avatar
      spirv: port from mpv · 326c8944
      Niklas Haas authored
      Only supports libshaderc for now, until I have a clearer picture of what
      the requirements for getting the nvidia extension detected would be.
      Note entirely happy with the meson stuff, but eh; it'll work for now.