* they come in from SPIR-V or Vulkan. We need to turn them into an ISL
* enum before we can use them.
*/
- enum isl_format
+ static enum isl_format
isl_format_for_gl_format(uint32_t gl_format)
{
switch (gl_format) {
/**
* Check whether the bound image is suitable for untyped access.
*/
- brw_predicate
+ static brw_predicate
emit_untyped_image_check(const fs_builder &bld, const fs_reg &image,
brw_predicate pred)
{
* the comparison result to f0.0. Returns an appropriate predication
* mode to use on subsequent image operations.
*/
- brw_predicate
+ static brw_predicate
emit_typed_atomic_check(const fs_builder &bld, const fs_reg &image)
{
const gen_device_info *devinfo = bld.shader->devinfo;
* and write the comparison result to f0.0. Returns an appropriate
* predication mode to use on subsequent image operations.
*/
- brw_predicate
+ static brw_predicate
emit_bounds_check(const fs_builder &bld, const fs_reg &image,
const fs_reg &addr, unsigned dims)
{
* the surface, which may be more than the sum of \p surf_dims and \p
* arr_dims if padding is required.
*/
- unsigned
+ static unsigned
num_image_coordinates(const fs_builder &bld,
unsigned surf_dims, unsigned arr_dims,
isl_format format)
* Transform image coordinates into the form expected by the
* implementation.
*/
- fs_reg
+ static fs_reg
emit_image_coordinates(const fs_builder &bld, const fs_reg &addr,
unsigned surf_dims, unsigned arr_dims,
isl_format format)
* Section 4.5 "Address Tiling Function" of the IVB PRM for an in-depth
* explanation of the hardware tiling format.
*/
- fs_reg
+ static fs_reg
emit_address_calculation(const fs_builder &bld, const fs_reg &image,
const fs_reg &coord, unsigned dims)
{
* shifts and widths. Note that bitfield components are not allowed to
* cross 32-bit boundaries.
*/
- fs_reg
+ static fs_reg
emit_pack(const fs_builder &bld, const fs_reg &src,
const color_u &shifts, const color_u &widths)
{
* shifts and widths. Note that bitfield components are not allowed to
* cross 32-bit boundaries.
*/
- fs_reg
+ static fs_reg
emit_unpack(const fs_builder &bld, const fs_reg &src,
const color_u &shifts, const color_u &widths)
{
* Convert an integer vector into another integer vector of the
* specified bit widths, properly handling overflow.
*/
- fs_reg
+ static fs_reg
emit_convert_to_integer(const fs_builder &bld, const fs_reg &src,
const color_u &widths, bool is_signed)
{
* Convert a normalized fixed-point vector of the specified signedness
* and bit widths into a floating point vector.
*/
- fs_reg
+ static fs_reg
emit_convert_from_scaled(const fs_builder &bld, const fs_reg &src,
const color_u &widths, bool is_signed)
{
* Convert a floating-point vector into a normalized fixed-point vector
* of the specified signedness and bit widths.
*/
- fs_reg
+ static fs_reg
emit_convert_to_scaled(const fs_builder &bld, const fs_reg &src,
const color_u &widths, bool is_signed)
{
* Convert a floating point vector of the specified bit widths into a
* 32-bit floating point vector.
*/
- fs_reg
+ static fs_reg
emit_convert_from_float(const fs_builder &bld, const fs_reg &src,
const color_u &widths)
{
* Convert a vector into a floating point vector of the specified bit
* widths.
*/
- fs_reg
+ static fs_reg
emit_convert_to_float(const fs_builder &bld, const fs_reg &src,
const color_u &widths)
{
/**
* Fill missing components of a vector with 0, 0, 0, 1.
*/
- fs_reg
+ static fs_reg
emit_pad(const fs_builder &bld, const fs_reg &src,
const color_u &widths)
{
* Copy one every \p src_stride logical components of the argument into
* one every \p dst_stride logical components of the result.
*/
- src_reg
+ static src_reg
emit_stride(const vec4_builder &bld, const src_reg &src, unsigned size,
unsigned dst_stride, unsigned src_stride)
{
* left unmodified in SIMD4x2 form, otherwise it will be rearranged into
* a SIMD8 vector.
*/
- src_reg
+ static src_reg
emit_insert(const vec4_builder &bld, const src_reg &src,
unsigned n, bool has_simd4x2)
{
* argument is left unmodified in SIMD4x2 form, otherwise it will be
* rearranged from SIMD8 form.
*/
- src_reg
+ static src_reg
emit_extract(const vec4_builder &bld, const src_reg src,
unsigned n, bool has_simd4x2)
{