[Mesa-dev] [PATCH V2 0/9] ARB_gpu_shader5 implicit conversions and overloading

Chris Forbes chrisf at ijw.co.nz
Sun May 4 01:23:53 PDT 2014


This series adds support for implicit conversions and overload resolution from
ARB_gpu_shader5 / GLSL 4.0.

The first 5 patches (and half of the 9th) were previously sent out on their
own, but had some serious issues I had overlooked, as I hadn't done a full
piglit run.

Notable changes in this version:
- Vector width mangling is retained in 1/9. This looked weird and unnecessary,
  but ast_to_hir (ab)uses apply_implicit_conversion to determine whether one
  side of an arithmetic operator can be converted to the type of the other side.

- Avoid crashes from the linker looking up matching function signatures, while
  passing a NULL parse state. In this case, we have no idea what extensions were
  active at compile time, but the compiler has already rejected any attempts at
  using unavailable implicit conversions, so we just pretend it's supported and
  enabled.

- New patches 6-8, adding the new overload resolution rules. This also lays some
  groundwork for providing better error messages in the case of ambiguous overload
  resolution.



More information about the mesa-dev mailing list