gallium: PIPE_COMPUTE_CAP_IR_TARGET - allow drivers to specify a processor v2

This target string now contains four values instead of three.  The old
processor field (which was really being interpreted as arch) has been split
into two fields: processor and arch.  This allows drivers to pass a
more a more detailed description of the hardware to compiler frontends.

v2:
  - Adapt to libclc changes

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
This commit is contained in:
Tom Stellard
2013-03-07 10:51:25 -05:00
parent 1a868acbec
commit c5e5b3401c
10 changed files with 105 additions and 80 deletions

View File

@@ -236,10 +236,10 @@ PIPE_COMPUTE_CAP_*
Compute-specific capabilities. They can be queried using
pipe_screen::get_compute_param.
* ``PIPE_COMPUTE_CAP_IR_TARGET``: A description of the target as a target
triple specification of the form ``processor-manufacturer-os`` that will
be passed on to the compiler. This CAP is only relevant for drivers
that specify PIPE_SHADER_IR_LLVM for their preferred IR.
* ``PIPE_COMPUTE_CAP_IR_TARGET``: A description of the target of the form
``processor-arch-manufacturer-os`` that will be passed on to the compiler.
This CAP is only relevant for drivers that specify PIPE_SHADER_IR_LLVM for
their preferred IR.
Value type: null-terminated string.
* ``PIPE_COMPUTE_CAP_GRID_DIMENSION``: Number of supported dimensions
for grid and block coordinates. Value type: ``uint64_t``.