Adam Jackson (1):

drisw: Try harder to probe whether MIT-SHM works

Albert Pal (1):

Alejandro Piñeiro (12):

nir/xfb: move varyings info out of nir_xfb_info

nir/xfb: handle arrays and AoA of basic types

nir/xfb: adding varyings on nir_xfb_info and gather_info

Alexander von Gluck IV (1):

Alexandros Frantzis (1):

virgl: Fake MSAA when max samples is 1

Alok Hota (32):

swr/rast: add guards for cpuid on Linux

swr/rast: enforce use of tile offsets

swr/rast: AVX512 support compiled in by default

swr/rast: Disable use of __forceinline by default

Alyssa Rosenzweig (192):

panfrost/midgard: iabs cannot run on mul

panfrost: Use fp32 (not fp16) varyings

panfrost/midgard: Only copyprop without an outmod

panfrost: Disable indirect outputs for now

panfrost/midgard: imul can only run on *mul

panfrost/midgard: Don’t try to inline constants on branches

panfrost: Track BO lifetime with jobs and reference counts

panfrost: Cleanup some indirection in pan_resource

panfrost: Include all cubemap faces in bitmap list

panfrost/midgard: Expand fge lowering to more types

panfrost: Compute viewport state on the fly

panfrost: Break out fragment to SFBD/MFBD files

panfrost: Cleanup needless if in create_bo

panfrost/drm: Cast pointer to u64 to fix warning

panfrost/midgard: Allow flt to run on most units

panfrost: Verify and print brx condition in disasm

panfrost: Check in sources for command stream

Alyssa Ross (1):

Amit Pundir (1):

Andre Heider (5):

st/nine: enable csmt per default on iris

iris: fix build with gallium nine

Andreas Baierl (2):

Andres Gomez (12):

glsl/linker: always validate explicit locations for first and last interfaces

docs: drop Andres Gomez from the release cycles

glsl/linker: location aliasing requires types to have the same width

glsl/linker: don’t fail non static used inputs without matching outputs

glsl/linker: always validate explicit location among inputs

mesa: INVALID_VALUE for wrong type or format in Clear*Buffer*Data

Andrii Simiklit (5):

egl: return correct error code for a case req ver < 3 with forward-compatible

iris: make the TFB result visible to others

util: clean the 24-bit unused field to avoid an issues

i965: consider a ‘base level’ when calculating width0, height0, depth0

Antia Puentes (1):

Anuj Phogat (7):

Axel Davy (49):

d3dadapter9: Revert to old throttling limit value

st/nine: Check discard_delayed_release is set before allocating more

st/nine: Use TGSI_SEMANTIC_GENERIC for fog

st/nine: Manually upload vs and ps constants

st/nine: use helper ureg_DECL_sampler everywhere

drirc: Add Gallium nine workaround for Rayman Legends

st/nine: Add drirc option to use data_internal for dynamic textures

st/nine: Always return OK on SetSoftwareVertexProcessing

st/nine: Finish if nooverwrite after normal mapping

st/nine: Upload managed buffers only at draw using them

st/nine: Upload managed textures only at draw using them

st/nine: Use FLT_MAX/2 for RCP clamping

st/nine: Fix D3DWindowBuffer_release for old wine nine support

Revert “d3dadapter9: Support software renderer on any DRI device”

st/nine: Do not advertise CANMANAGERESOURCE

st/nine: Do not advertise support for D15S1 and D24X4S4

st/nine: Disable depth write when nothing gets updated

st/nine: Ignore multisample quality level if no ms

Bart Oldeman (1):

gallium-xlib: query MIT-SHM before using it.

Bas Nieuwenhuizen (105):

radv: Prevent out of bound shift on 32-bit builds.

nir: Actually propagate progress in nir_opt_move_load_ubo.

radv: Do not use extra descriptor space for the 3rd plane.

radv: Add hashing for the ycbcr samplers.

radv: Run the new ycbcr lowering pass.

radv: Allow mixed src/dst aspects in copies.

radv: Add support for image views with multiple planes.

radv: Support different source & dest aspects for planar images in blit2d.

radv: Add adaptive_sync driconfig option and enable it by default.

radv: Use local buffers for the global bo list.

radv: Use correct image view comparison for fast clears.

vulkan: Update the XML and headers to 1.1.104

vulkan/util: Handle enums that are in platform-specific headers.

radv: Allow fast clears with concurrent queue mask for some layouts.

turnip: Implement some format properties for RGBA8.

turnip: Fix bo allocation after we stopped using libdrm_freedreno …

turnip: Add 630 to the list.

turnip: Fix up detection of device.

radv: Allow interpolation on non-float types.

radv: Disable depth clamping even without EXT_depth_range_unrestricted.

radv: Handle clip+cull distances more generally as compact arrays.

radv: Clean up a bunch of compiler warnings.

radv: Use correct num formats to detect whether we should be use 1.0 or 1.

radv: Do not use the bo list for local buffers.

amd/common: Do not use 32-bit loads for shared memory.

amd/common: handle nir_deref_cast for shared memory from integers.

amd/common: Fix stores to derefs with unknown variable.

amd/common: Use correct writemask for shared memory stores.

radv: Fix the shader info pass for not having the variable.

radv: Only look at pImmutableSamples if the descriptor has a sampler.

Benjamin Gordon (1):

Benjamin Tissoires (1):

CI: use wayland ci-templates repo to create the base image

Boyan Ding (3):

gk110/ir: Use the new rcp/rsq in library

Boyuan Zhang (1):

st/va: reverse qt matrix back to its original order

Brian Paul (51):

llvmpipe: init some vars to NULL to silence MinGW compiler warnings

nir: use {0} initializer instead of {} to fix MSVC build

docs: link to the meson_options.txt file gitlab.freedesktop.org

docs: separate information for compiler selection and compiler options

docs: try to improve the Meson documentation (v2)

st/mesa: move around some code in st_context.c

st/mesa: move utility functions, macros into new st_util.h file

st/mesa: init hash keys with memset(), not designated initializers

winsys/svga: use new pb_usage_flags enum type

pipebuffer: use new pb_usage_flags enum type

gallium/util: add some const qualifiers in u_bitmask.c

svga: silence array out of bounds warning

Caio Marcelo de Oliveira Filho (61):

nir: Fix nir_opt_idiv_const when negatives are involved

anv: Fix limits when VK_EXT_descriptor_indexing is used

intel/fs: Don’t handle texop_tex for shaders without implicit LOD

nir: Add option to lower tex to txl when shader don’t support implicit LOD

spirv: Tell which opcode or value is unhandled when failing

intel/fs: Use NIR_PASS_V when lowering CS intrinsics

intel/fs: Add support for CS to group invocations in quads

intel/fs: Use TEX_LOGICAL whenever implicit lod is supported

nir: Don’t set LOD=0 for compute shader that has derivative group

nir/algebraic: Lower CS derivatives to zero when no group defined

glsl: Parse and propagate derivative_group to shader_info

nir: Take if_uses into account when repairing SSA

iris: Clean up compiler warnings about unused

spirv: Use interface type for block and buffer block

spirv: Add an execution environment to the options

intel/nir: Combine store_derefs to improve code from SPIR-V

nir: Add a pass to combine store_derefs to same vector

nir/copy_prop_vars: prefer using entries from equal derefs

nir/copy_prop_vars: add tests for load/store elements of vectors

nir/copy_prop_vars: change test helper to get intrinsics

nir/copy_prop_vars: keep track of components in copy_entry

nir/copy_prop_vars: don’t get confused by array_deref of vectors

iris: always include an extra constbuf0 if using UBOs

iris: Fix uses of gl_TessLevel*

nir: fix example in opt_peel_loop_initial_if description

intel/compiler: use 0 as sampler in emit_mcs_fetch

isl: assert that Gen8+ don’t have bit6_swizzling

nir: keep the phi order when splitting blocks

Carlos Garnacho (1):

wayland/egl: Ensure EGL surface is resized on DRI update_buffers()

Chad Versace (17):

turnip: Use Vulkan 1.1 names instead of KHR

turnip: Use vk_errorf() for initialization error messages

turnip: Use vk_outarray in all relevant public functions

Charmaine Lee (5):

svga: Remove unnecessary check for the pre flush bit for setting vertex buffers

st/mesa: purge framebuffers with current context after unbinding winsys buffers

svga: add svga shader type in the shader variant

Chenglei Ren (1):

Chia-I Wu (78):

virgl: hide fence internals from the driver

turnip: use 32-bit offset in tu_cs_entry

turnip: preliminary support for loadOp and storeOp

turnip: provide both emit_ib and emit_call

turnip: specify initial size in tu_cs_init

turnip: add cmdbuf->bo_list to bo_list in queue submit

turnip: run sed and clang-format on tu_cs

turnip: use msm_drm.h from inc_freedreno

Chris Forbes (3):

Chris Wilson (19):

iris: Use streaming loads to read from tiled surfaces

iris: Use coherent allocation for PIPE_RESOURCE_STAGING

iris: Use PIPE_BUFFER_STAGING for the query objects

iris: Tag each submitted batch with a syncobj

iris: Merge two walks of the exec_bos list

iris: Fix assigning the output handle for exporting for KMS

iris: fix memzone_for_address since multibinder changes

iris: Record reusability of bo on construction

i965: Assert the execobject handles match for this device

Christian Gmeiner (12):

etnaviv: use the correct uniform dirty bits

etnaviv: fix resource usage tracking across different pipe_context’s

etnaviv: keep track of mapped bo address

etnaviv: blt: mark used src resource as read from

etnaviv: rs: mark used src resource as read from

Chuck Atkins (1):

Connor Abbott (6):

nir/search: Add debugging code to dump the pattern matched

Daniel Schürmann (2):

nir: Use SM5 properties to optimize shift( a@32 , iand(31, b))

nir: Define shifts according to SM5 specification.

Daniel Stone (2):

Danylo Piliaiev (13):

anv: Do not emulate texture swizzle for INPUT_ATTACHMENT, STORAGE_IMAGE

intel/compiler: Do not reswizzle dst if instruction writes to flag register

iris: Fix assert when using vertex attrib without buffer binding

intel/fs: Make alpha test work with MRT and sample mask

i965,iris,anv: Make alpha to coverage work with sample mask

glsl: Cross validate variable’s invariance by explicit invariance only

anv: Treat zero size XFB buffer as disabled

anv: Fix destroying descriptor sets when pool gets reset

anv: Fix VK_EXT_transform_feedback working with varyings packed in PSIZ

Dave Airlie (63):

glsl: init packed in more constructors.

kmsro: add _dri.so to two of the kmsro drivers.

nir: fix lower vars to ssa for larger vector sizes.

r600: reset tex array override even when no view bound

virgl/drm: insert correct handles into the table. (v3)

virgl/drm: handle flink name better.

draw: add support to tgsi paths for geometry streams. (v2)

ddebug: add compute functions to help hang detection

iris: avoid use after free in shader destruction

intel/compiler: use defined size for vector components

nir: use proper array sizing define for vectors

softpipe: fix clears to only clear specified color buffers.

draw: bail instead of assert on instance count (v2)

nir/split_vars: fixup some more explicit_stride related issues.

softpipe: fix integer texture swizzling for 1 vs 1.0f

nir/deref: remove casts of casts which are likely redundant (v3)

nir/spirv: don’t use bare types, remove assert in split vars for testing

st/mesa: add support for lowering fp64/int64 for nir drivers

iris: fix some hangs around null framebuffers

David Riley (3):

virgl: Re-use and extend queue transfers for intersecting buffer subdatas.

virgl: Allow transfer queue entries to be found and extended.

David Shao (1):

meson: ensure that xmlpool_options.h is generated for gallium targets that need it

Deepak Rawat (2):

winsys/drm: Fix out of scope variable usage

Dominik Drees (1):

Drew Davenport (1):

util: Don’t block SIGSYS for new threads

Dylan Baker (40):

meson: Force the use of config-tool for llvm

meson: Don’t build glsl cache_test when shader cache is disabled

util/tests: Use define instead of VLA

meson: Make shader-cache a trillean instead of boolean

meson: switch gles1 and gles2 to auto options

docs: update calendar, and news item and link release notes for 19.0.3

docs: update calendar, and news item and link release notes for 19.0.2

meson: Error if LLVM is turned off but clover it turned on

meson: Error if LLVM doesn’t have rtti when building clover

docs: update calendar, add news item and link release notes for 19.0.1

docs: update calendar, add news item, and link release notes for 19.0.0

meson: Add dependency on genxml to anvil

get-pick-list: Add –pretty=medium to the arguments for Cc patches

gallium: wrap u_screen in extern “C” for c++

Eduardo Lima Mitev (5):

ir3/lower_io_offsets: Try propagate SSBO’s SHR into a previous shift instruction

ir3/compiler: Enable lower_io_offsets pass and handle new SSBO intrinsics

nir: Add ir3-specific version of most SSBO intrinsics

El Christianito (1):

Eleni Maria Stea (6):

radv: consider MESA_VK_VERSION_OVERRIDE when setting the api version

i965: fixed clamping in set_scissor_bits when the y is flipped

i965: Removed the field etc_format from the struct intel_mipmap_tree

i965: Enabled the OES_copy_image extension on Gen 7 GPUs

i965: Fixed the CopyImageSubData for ETC2 on Gen < 8

i965: Faking the ETC2 compression on Gen < 8 GPUs using two miptrees.

Elie Tournier (3):

virgl: Return an error if we use fp64 on top of GLES

virgl: Set PIPE_CAP_DOUBLES when running on GLES This is a lie but no known app use fp64.

Emil Velikov (30):

egl/dri: flesh out and use dri2_create_drawable()

vulkan/wsi: don’t use DUMB_CLOSE for normal GEM handles

vulkan/wsi: check if the display_fd given is master

docs: update calendar, add news item and link release notes for 18.3.6

docs: update calendar, add news item and link release notes for 18.3.5

egl/sl: use kms_swrast with vgem instead of a random GPU

egl/sl: use drmDevice API to enumerate available devices

egl/sl: split out swrast probe into separate function

docs: mention “Allow commits from members who can merge…”

egl/android: bump the number of drmDevices to 64

loader: use loader_open_device() to handle O_CLOEXEC

docs: update calendar, add news item and link release notes for 18.3.4

anv: wire up the state_pool_padding test

docs: update calendar, add news item and link release notes for 18.3.3

vc4: Declare the last cpu pointer as being modified in NEON asm.

Emmanuel Gil Peyrot (1):

Eric Anholt (121):

vc4: Fall back to renderonly if the vc4 driver doesn’t have v3d.

v3d: Fix detection of TMU write sequences in register spilling.

v3d: Fix detection of the last ldtmu before a new TMU op.

v3d: Don’t try to update the shadow texture for separate stencil.

v3d: Add a note about i/o indirection for future performance work.

vc4: Use _mesa_hash_table_remove_key() where appropriate.

v3d: Use _mesa_hash_table_remove_key() where appropriate.

v3d: Assert that we do request the normal texturing return data.

v3d: Apply the GFXH-930 workaround to the case where the VS loads attrs.

v3d: Fill in the ignored segment size fields to appease new simulator.

v3d: Disable SSBOs and atomic counters on vertex shaders.

nir: Use the nir_builder _imm helpers in setting up deref offsets.

v3d: Fix atomic cmpxchg in shaders on hardware.

v3d: Fix an invalid reuse of flags generation from before a thrsw.

v3d: Always set up the qregs for CSD payload.

v3d: Only look up the 3rd texture gather offset for non-arrays.

v3d: Use the new lower_to_scratch implementation for indirects on temps.

v3d: Detect the correct number of QPUs and use it to fix the spill size.

v3d: Add missing dumping for the spill offset/size uniforms.

v3d: Replace the old shader-db env var output with the ARB_debug_output.

v3d: Include the number of max temps used in the shader-db output.

v3d: Drop a note for the future about PIPE_CAP_PACKED_UNIFORMS.

v3d: Add and use a define for the number of channels in a QPU invocation.

nir: Add a comment about how intrinsic definitions work.

nir: Drop remaining references to const_index in favor of the call to use.

nir: Drop comments about the constant_index slots for load/stores.

v3d: Add an optimization pass for redundant flags updates.

vc4: Don’t forget to set the range when scalarizing our uniforms.

st: Lower uniforms in st in the !PIPE_CAP_PACKED_UNIFORMS case as well.

v3d: Add some more new packets for V3D 4.x.

v3d: Don’t try to use the TFU blit path if a scissor is enabled.

v3d: Bump the maximum texture size to 4k for V3D 4.x.

v3d: Add support for handling OOM signals from the simulator.

dri3: Return the current swap interval from glXGetSwapIntervalMESA().

v3d: Remove some dead members of struct v3d_compile.

v3d: Upload all of UBO[0] if any indirect load occurs.

v3d: Move constant offsets to UBO addresses into the main uniform stream.

v3d: Allow the UIF modifier with renderonly.

v3d: Always lay out shared tiled buffers with UIF_TOP set.

mesa/st: Fix leaks of TGSI tokens in VP variants.

mesa/st: Make sure that prog_to_nir NIR gets freed.

v3d: Fix leak of the renderonly struct on screen destruction.

v3d: Fix leak of the mem_ctx after the DAG refactor.

vc4: Switch the post-RA scheduler over to the DAG datastructure.

v3d: Use the DAG datastructure for QPU instruction scheduling.

vc4: Switch over to using the DAG datastructure for QIR scheduling.

st/dri: Set the PIPE_BIND_SHARED flag on create_image_with_modifiers.

v3d: Include a count of register pressure in the RA failure dumps.

v3d: Eliminate the TLB and TLBU files.

v3d: Use ldunif instructions for uniforms.

v3d: Add support for register-allocating a ldunif to a QFILE_TEMP.

v3d: Drop the old class bits splitting up the accumulators.

v3d: Add support for vir-to-qpu of ldunif instructions to a temp.

v3d: Switch implicit uniforms over to being any qinst->uniform != ~0.

v3d: Do uniform rematerialization spilling before dropping threadcount

v3d: Fix temporary leaks of temp_registers and when spilling.

v3d: Move the stores for fixed function VS output reads into NIR.

v3d: Restrict live intervals to the blocks reachable from any def.

v3d: Fix build of NEON code with Mesa’s cflags not targeting NEON.

v3d: Rematerialize MOVs of uniforms instead of spilling them.

v3d: Dump the VIR after register spilling if we were forced to.

nir: Just return when asked to rewrite uses of an SSA def to itself.

kmsro: Add the rest of the current set of tinydrm drivers.

v3d: Move i2b and f2b support into emit_comparison.

v3d: Emit a simpler negate for the iabs implementation.

v3d: Delay emitting ldvpm on V3D 4.x until it’s actually used.

v3d: Add a function to describe what the c->execute.file check means.

v3d: Fix the check for “is the last thrsw inside control flow”

v3d: Kill off vir_PF(), which is hard to use right.

v3d: Do bool-to-cond for discard_if as well.

v3d: Refactor bcsel and if condition handling.

v3d: Add a helper function for getting a nop register.

v3d: Drop a perf note about merging unpack_half_*, which has been implemented.

v3d: Fix incorrect flagging of ldtmu as writing r4 on v3d 4.x.

v3d: Use the early_fragment_tests flag for the shader’s disable-EZ field.

v3d: Sync indirect draws on the last rendering.

v3d: Clear the GMP on initialization of the simulator.

freedreno: Use the NIR lowering for isign.

intel: Use the NIR lowering for isign.

v3d: Use the NIR lowering for isign instead of rolling our own.

v3d: Fix input packing of .l for rounding/fdx/fdy.

v3d: Fix dumping of shaders with alpha test.

v3d: Store the actual mask of color buffers present in the key.

v3d: Fix precompile of FRAG_RESULT_DATA1 and higher outputs.

nir: Move V3D’s “the shader was TGSI, ignore FS output types” flag to NIR.

v3d: Always enable the NEON utile load/store code.

Eric Engestrom (142):

util/os_file: actually return the error read() gave us

util/os_file: always use the ‘grow’ mechanism

gitlab-ci: meson-gallium-radeonsi was a subset of meson-gallium-clover-llvm

egl: hard-code destroy function instead of passing it around as a pointer

util: move #include out of #if linux

turnip: update to use the new features struct names

radv: update to use the new features struct names

docs: haiku can be built using meson

docs: use past tense when talking about autotools

gitlab-ci: add lima to the build

egl: hide entrypoints that shouldn’t be exported when using glvnd

util/disk_cache: close fd in the fallback path

turnip: use the platform defines in vk.xml instead of hard-coding them

wsi/x11: use WSI_FROM_HANDLE() instead of pointer casts

wsi: deduplicate get_current_time() functions between display and x11

gitlab-ci: add panfrost to the gallium drivers build

glx/meson: use full include path for dri_interface.h

gitlab-ci: autotools needs to be told which llvm version to use

gitlab-ci: only build the default (=latest) and oldest llvm versions

travis: fix meson build by letting `auto` do its job

vulkan/util: use the platform defines in vk.xml instead of hard-coding them

radv: use the platform defines in vk.xml instead of hard-coding them

anv: use the platform defines in vk.xml instead of hard-coding them

meson: avoid going back up the tree with include_directories()

driconf: add DTD to allow the drirc xml (00-mesa-defaults.conf) to be validated

vulkan: use VkBase{In,Out}Structure instead of a custom struct

driinfo: add DTD to allow the xml to be validated

gitlab-ci: always run the containers build

anv: use anv_shader_bin_write_to_blob()’s return value

anv: make sure the extensions stay sorted

anv: sort vendors extensions after KHR and EXT

gitlab-ci: automatically run the CI on pushes to `ci/*` branches

gitlab-ci: limit the automatic CI to master and MRs

gitlab-ci: use ccache to speed up builds

util/tests: compile to something sensible in release builds

anv/tests: compile to something sensible in release builds

drm-uapi: use local files, not system libdrm

wsi: query the ICD’s max dimensions instead of hard-coding them

gitlab-ci: workaround docker bug for users with uppercase characters

meson: add script to print the options before configuring a builddir

Erico Nunes (5):

Erik Faye-Lund (79):

meson: lift driver-collection out into parent build-file

docs: turn faq-index into an ordered list

docs: start paragraph before closing it

docs: open list-item before closing it

docs: use dl/dd instead of blockquote for freedesktop link

docs: use h2 instead of b-tag for headings

docs: do not hard-code header-height

docs: use multiple background-images for header

softpipe: setup pixel_offset for all primitive types

virgl: do color-conversion during when mapping transfer

virgl: only blit if resource is read

virgl: get readback-formats from host

gallium/util: support translating between uint and sint formats

virgl: make sure bind is set for non-buffers

virgl: use pipe_box for blit dst-rect

virgl: wait for the right resource

virgl: check for readback on correct resource

virgl: track full virgl_resource instead of just virgl_hw_res

virgl: use debug_printf instead of fprintf

virgl: do not warn about display-target binding

virgl: only warn about unchecked flags

virgl: use debug_printf instead of fprintf

virgl: also destroy all read-transfers

virgl: do not allow compressed formats for buffers

Ernestas Kulik (2):

Francisco Jerez (6):

intel/fs: Rely on undocumented unrestricted regioning for 32x16-bit integer multiply.

intel/fs: Implement extended strides greater than 4 for IR source regions.

intel/fs: Cap dst-aligned region stride to maximum representable hstride value.

intel/fs: Exclude control sources from execution type and region alignment calculations.

intel/dump_gpu: Disambiguate between BOs from different GEM handle spaces.

Fritz Koenig (4):

Gert Wollny (35):

Revert “softpipe/buffer: load only as many components as the the buffer resource type provides”

softpipe/buffer: load only as many components as the the buffer resource type provides

softpipe: Add an per-input array for interpolator correctors to machine

softpipe: Factor out evaluation of the source indices

softpipe: evaluate cube the faces on a per sample bases

softpipe: keep input lod for explicite derivatives

softpipe: tie in new code path for lod evaluation

softpipe: Move selection of shadow values up and clean parameter list

softpipe: Pipe gather_comp through from st_tgsi_get_samples

softpipe: Factor gradient evaluation out of the lambda evaluation

doc/features: Add a few extensions to the feature matrix

virgl: Enable passing arrays as input to fragment shaders

Gallium: Add new CAP that indicated whether IO array definitions can be shriked

softpipe: Add an extra code path for the buffer texel lookup

softpipe: raise number of bits used for X coordinate texture lookup

softpipe: Don’t use mag filter for gather op

softpipe: Use mag texture filter also for clamped lod == 0

virgl: define MAX_VERTEX_STREAMS based on availability of TF3

softpipe: Enable PIPE_CAP_MIXED_COLORBUFFER_FORMATS It seems softpipe actually supports this. This change enables the following piglits as passing without regressions in the gpu test set:

mesa: Expose EXT_texture_query_lod and add support for its use shaders

nir: Add posibility to not lower to source mod ‘abs’ for ops with three sources

virgl: Enable mixed color FBO attachemnets only when the host supports it

mesa: release references to image textures when a context is destroyed

radeonsi: release tokens after creating the shader program

mesa/core: Enable EXT_texture_sRGB_R8 also for desktop GL

Greg V (3):

gallium: enable dmabuf on BSD as well

util: emulate futex on FreeBSD using umtx

Grigori Goronzy (1):

Guido Günther (4):

Gurchetan Singh (44):

virgl/vtest: wait after issuing a transfer get

virgl/vtest: modify sending and receiving data for shared memory

virgl/vtest: execute a transfer_get when flushing the front buffer

egl/android: chose node type based on swrast and preprocessor flags

egl/android: use software rendering when appropriate

egl/android: use swrast option in droid_load_driver

configure.ac / meson: depend on libnativewindow when appropriate

virgl: use uint16_t mask instead of separate booleans

egl/sl: also allow virtgpu to fallback to kms_swrast

virgl: use virgl_transfer_inline_write even less

virgl: add encoder functions for new protocol

virgl: keep track of number of computations

virgl: use virgl_transfer in inline write

virgl: track level cleanliness rather than resource cleanliness

virgl: add ability to do finer grain dirty tracking

Guttula, Suresh (1):

st/va:Add support for indirect manner by returning VA_STATUS_ERROR_OPERATION_FAILED

Hal Gentz (1):

Heinrich (1):

Iago Toral Quiroga (39):

anv/pipeline: support Float16 and Int8 SPIR-V capabilities in gen8+

compiler/spirv: move the check for Int8 capability

intel/compiler: validate conversions between 64-bit and 8-bit types

intel/compiler: also set F execution type for mixed float mode in BDW

intel/compiler: skip MAD algebraic optimization for half-float or mixed mode

intel/compiler: remove inexact algebraic optimizations from the backend

intel/compiler: fix cmod propagation for non 32-bit types

intel/eu: force stride of 2 on NULL register for Byte instructions

intel/compiler: ask for an integer type if requesting an 8-bit type

intel/compiler: activate 16-bit bit-size lowerings also for 8-bit

intel/compiler: split is_partial_write() into two variants

intel/compiler: workaround for SIMD8 half-float MAD in gen8

intel/compiler: fix ddy for half-float in Broadwell

intel/compiler: fix ddx and ddy for 16-bit float

intel/compiler: allow half-float on 3-source instructions since gen8

intel/compiler: don’t compact 3-src instructions with Src1Type or Src2Type bits

intel/compiler: add new half-float register type for 3-src instructions

intel/compiler: add instruction setters for Src1Type and Src2Type.

intel/compiler: lower some 16-bit float operations to 32-bit

intel/compiler: assert restrictions on conversions to half-float

intel/compiler: handle b2i/b2f with other integer conversion opcodes

intel/compiler: split float to 64-bit opcodes from int to 64-bit

compiler/nir: add an is_conversion field to nir_op_info

Ian Romanick (55):

Revert “nir: add late opt to turn inot/b2f combos back to bcsel”

nir: Saturating integer arithmetic is not associative

intel/fs: Fix D to W conversion in opt_combine_constants

intel/compiler: Lower ffma on Gen4 and Gen5

glsl: Silence may unused parameter warnings in glsl/ir.h

intel/fs: Add support for float16 to the fsign optimizations

nir/algebraic: Strength reduce some compares of x and -x

nir/algebraic: Replace a pattern where iand with a Boolean is used as a bcsel

intel/fs: Generate better code for fsign multiplied by a value

intel/fs: Refactor code generation for nir_op_fsign to its own function

intel/compiler: Use partial redundancy elimination for compares

nir/algebraic: Fix up extract_[iu]8 after loop unrolling

nir/algebraic: Fix up extract_[iu]8 after loop unrolling

intel/fs: Fix extract_u8 of an odd byte from a 64-bit integer

intel/compiler: Silence many unused parameter warnings in brw_eu.h

nir/algebraic: Optimize away an fsat of a b2f

intel/fs: Don’t assert on b2f with a saturate modifier

intel/fs: Generate if instructions with inverted conditions

nir/algebraic: Replace a bcsel of a b2f sources with a b2f(!(a || b))

intel/fs: Emit better code for b2f(inot(a)) and b2i(inot(a))

intel/fs: Use De Morgan’s laws to avoid logical-not of a logic result on Gen8+

intel/fs: Emit logical-not of operands on Gen8+

intel/fs: Refactor ALU source and destination handling to a separate function

intel/fs: Handle OR source modifiers in algebraic optimization

intel/fs: Relax type matching rules in cmod propagation from MOV instructions

nir/algebraic: Replace i2b used by bcsel or if-statement with comparison

intel/vec4: Emit constants for some ALU sources as immediate values

nir/algebraic: Simplify comparison with sequential integers starting with 0

nir/algebraic: Convert some f2u to f2i

nir: Convert a bcsel with only phi node sources to a phi node

nir: Split ALU instructions in loops that read phis

nir: Select phi nodes using prev_block instead of continue_block

nir: Refactor code that checks phi nodes in opt_peel_loop_initial_if

nir: Document some fields of nir_loop_terminator

intel/compiler: Silence warning about value that may be used uninitialized

nir: Silence zillions of unused parameter warnings in release builds

Icenowy Zheng (5):

lima: lower bool to float when building shaders

Ilia Mirkin (14):

glsl: fix recording of variables for XFB in TCS shaders

st/mesa: enable GL_EXT_float_blend when possible

mesa: add explicit enable for EXT_float_blend, and error condition

nvc0: we have 16k-sized framebuffers, fix default scissors

nvc0: stick zero values for the compute invocation counts

nv50,nvc0: use condition for occlusion queries when already complete

nvc0/ir: fix second tex argument after levelZero optimization

nvc0/ir: always use CG mode for loads from atomic-only buffers

nvc0: add support for handling indirect draws with attrib conversion

Illia Iorin (1):

James Zhu (12):

gallium/auxiliary/vl: Fix transparent issue on compute shader with rgba

gallium/auxiliary/vl: Rename csc_matrix and increase its size.

Jan Vesely (2):

gallium/aux: Report error if loading of a pipe driver fails.

Jan Zielinski (1):

Jason Ekstrand (212):

nir/propagate_invariant: Don’t add NULL vars to the hash table

intel/fs: Do a stalling MFENCE in endInvocationInterlock()

intel/fs,vec4: Use g0 as the header for MFENCE

anv: Only consider minSampleShading when sampleShadingEnable is set

anv: Emulate texture swizzle in the shader when needed

intel/fs/ra: Stop adding RA interference to too many SENDS nodes

intel/fs/ra: Only add dest interference to sources that exist

util/bitset: Return an actual bool from test macros

anv: Better handle 32-byte alignment of descriptor set buffers

anv/descriptor_set: Only vma_heap_finish if we have a descriptor buffer

anv/descriptor_set: Unlink sets from the pool in set_destroy

nir: Use the NIR_SRC_AS_ macro to define nir_src_as_deref

anv/nir: Add a central helper for figuring out SSBO address formats

nir: Add helpers for getting the type of an address format

anv: Use bindless handles for images

anv: Use bindless textures and samplers

anv: Pass the plane into lower_tex_deref

anv: Use write_image_view to initialize immutable samplers

anv: Count the number of planes in each descriptor binding

anv: Implement SSBOs bindings with GPU addresses in the descriptor BO

anv: Lower some SSBO operations in apply_pipeline_layout

anv/pipeline: Add skeleton support for spilling to bindless

anv/pipeline: Sort bindings by most used first

anv: Add a #define for the max binding table size

anv: Put image params in the descriptor set buffer on gen8 and earlier

intel/fs: Account for live range lengths in spill costs

anv: Drop some unneeded ANV_FROM_HANDLE for physical devices

nir: Rework nir_src_as_alu_instr to not take a pointer

nir: Drop “struct” from some nir_* declarations

nir/algebraic: Use a cache to avoid re-emitting structs

nir/algebraic: Move the template closer to the render function

anv: Update to use the new features struct names

vulkan: Update the XML and headers to 1.1.106

nir/validate: Require unused bits of nir_const_value to be zero

nir/load_const_to_scalar: Get rid of a bit size switch statement

nir/constant_folding: Get rid of a bit size switch statement

nir/print: Use nir_src_as_int for array indices

intel/nir: Take a nir_tex_instr and src index in brw_texture_offset

nir: Add a pass for selectively lowering variables to scratch space

anv/cmd_buffer: Use gen_mi_sub instead of gen_mi_add with a negative

anv: Move mi_memcpy and mi_memset to gen_mi_builder

anv: Use gen_mi_builder for queries

anv: Use gen_mi_builder for conditional rendering

anv: Use gen_mi_builder for indirect dispatch

anv: Use gen_mi_builder for indirect draw parameters

anv: Use gen_mi_builder for computing resolve predicates

anv: Use gen_mi_builder for CmdDrawIndirectByteCount

nir: Get rid of global registers

nir: Get rid of nir_register::is_packed

nir/search: Search for all combinations of commutative ops

nir/algebraic: Add some logical OR and AND patterns

Revert “anv/radv: release memory allocated by glsl types during spirv_to_nir”

nir: Add access flags to deref and SSBO atomics

nir: Add texture sources and intrinsics for bindless

nir: Constant values are per-column not per-component

nir: Add a new pass to lower array dereferences on vectors

st/mesa: Let NIR lower UBO and SSBO access when we have it

glsl/nir: Add a pass to lower UBO and SSBO access

glsl: Don’t lower vector derefs for SSBOs, UBOs, and shared

nir/lower_io: Add a new buffer_array_length intrinsic and lowering

nir: Rename nir_address_format_vk_index_offset to not be vk

nir/deref: Consider COHERENT decorated var derefs as aliasing

compiler/types: Add helpers to get explicit types for standard layouts

compiler/types: Add a C wrapper to get full struct field data

compiler/types: Add a new is_interface C wrapper

nir/validate: Only require bare types to match for copy_deref

nir/algebraic: Add a couple optimizations for iabs and ishr

anv: Only set 3DSTATE_PS::VectorMaskEnable on gen8+

anv/pass: Flag the need for a RT flush for resolve attachments

glsl/lower_vector_derefs: Don’t use a temporary for TCS outputs

nir: Add a pass for lowering IO back to vector when possible

anv/pipeline: Move lower_explicit_io much later

nir/builder: Emit better code for iadd/imul_imm

i965: Compile the fp64 program based on nir options

spirv: Use the same types for resource indices as pointers

spirv: Use the generic dereference function for OpArrayLength

spirv: Pull offset/stride from the pointer for OpArrayLength

anv: Take references to push descriptor set layouts

anv: Count image param entries rather than images

anv: Use an actual binding for gl_NumWorkgroups

intel,nir: Lower TXD with min_lod when the sampler index is not < 16

anv: Count surfaces for non-YCbCr images in GetDescriptorSetLayoutSupport

intel/fs: Get rid of the IMAGE_SIZE opcode

intel/fs: Add an enum type for logical sampler inst sources

intel/eu: Add an EOT parameter to send_indirect_[split]_message

iris: Copy anv’s MI_MATH helpers for multiplication and division

iris: Configure the L3$ on the compute context

iris/compute: Zero out the last grid size on indirect dispatches

nir/xfb: Work in terms of components rather than slots

nir: Rewrite lower_clip_cull_distance_arrays to do a lot less lowering

intel/fs: Bail in optimize_extract_to_float if we have modifiers

anv: Silence some compiler warnings in release builds

nir: Silence a couple of warnings in release builds

intel/fs: Use enumerated array assignments in fb read TXF setup

README: Drop the badges from the readme

intel/fs: Use SENDS for A64 writes on gen9+

intel/fs: Do the grf127 hack on SIMD8 instructions in SIMD16 mode

intel/fs/cse: Split create_copy_instr into three cases

spirv: Handle constants and types before execution modes

Jian-Hong Pan (1):

intel: Fix the description of Coffeelake pci-id 0x3E98

Jiang, Sonny (1):

va: use a compute shader for the blit

John Stultz (3):

Jon Turney (1):

Jonathan Marek (22):

freedreno: a2xx: same gmem2mem sequence for all tiles

freedreno: a2xx: use nir_lower_io for TGSI shaders

svga: add new ATC formats to the format conversion table

llvmpipe, softpipe: no support for ATC textures

freedreno: catch failing fd_blit and fallback to software blit

freedreno: use renderonly path for buffers allocated with modifiers

freedreno: a2xx: fix fast clear for some gmem configurations

Jordan Justen (22):

intel/genxml: Support base-16 in value & start fields in gen_sort_tags.py

iris: Always use in-tree i915_drm.h

genxml: Remove extra space in gen4/45/5 field name

genxml/gen_bits_header.py: Use regex to strip no alphanum chars

iris: Emit default L3 config for the render pipeline

iris/compute: Wait on compute batch when mapping

iris/program: Don’t try to push ubo ranges for compute

iris/compute: Get group counts from grid->grid

Jose Maria Casanova Crespo (4):

glsl: TCS outputs can not be transform feedback candidates on GLES

José Fonseca (1):

scons: Workaround failures with MSVC when using SCons 3.0.[2-4].

Juan A. Suarez Romero (22):

cherry-ignore: radeonsi: update buffer descriptors in all contexts after buffer invalidation

Revert “intel/compiler: split is_partial_write() into two variants”

meson: Add dependency on genxml to anvil genfiles

nir/xfb: do not use bare interface type

nir: deref only for OpTypePointer

anv: destroy descriptor sets when pool gets reset

nir/spirv: return after emitting a branch in block

nir: remove jump from two merging jump-ending blocks

nir: move ALU instruction before the jump instruction

Julien Isorce (5):

st/va: properly set stride and offset in vlVaDeriveImage

Józef Kucia (3):

Karol Herbst (82):

nir: Add a nir_builder_alu variant which takes an array of components

nir/loop_analyze: use nir_const_value.b for boolean results, not u32

nir/builder: Move nir_imm_vec2 from blorp into the builder

freedreno/ir3: use nir_src_as_uint in a few places

intel/nir: use nir_src_is_const and nir_src_as_uint

glsl/nir: fetch the type for images from the deref instruction

panfrost/midgard: use nir_src_is_const and nir_src_as_uint

v3d: prefer using nir_src_comp_as_int over nir_src_as_const_value

nir/validate: validate that tex deref sources are actually derefs

nv50ir/nir: move immediates before use

nv50/ir/nir: handle user clip planes for each emitted vertex

nv50/ir/nir: run some passes to make the conversion easier

nvc0: print the shader type when dumping headers

prog_to_nir: fix write from vps to FOG

nir/spirv: improve parsing of the memory model

clover: update ICD table to support everything up to 2.2

nir/opt_if: don’t mark progress if nothing changes

glsl_type: initialize offset and location to -1 for glsl_struct_field

st/mesa: require RGBA2, RGB4, and RGBA4 to be renderable

gk104/ir: Use the new rcp/rsq in library

nvc0/ir: replace cvt instructions with add to improve shader performance

Kasireddy, Vivek (3):

i965: Add support for sampling from XYUV images

Kenneth Graunke (872):

st/mesa: Set pipe_image_view::shader_access in PBO readpixels.

st/nir: Move varying setup code to a helper function.

st/nir: Make new helpers for constructing built-in NIR shaders.

st/mesa: Add a NIR version of the drawpixels/bitmap VS copy shader.

st/mesa: Add NIR versions of the drawpixels Z/stencil fragment shaders.

st/mesa: Add NIR versions of the clear shaders.

st/mesa: Add a NIR version of the OES_draw_texture built-in shaders.

st/mesa: Add NIR versions of the PBO upload/download shaders.

program: Use u_bit_scan64 in prog_to_nir.

program: Extend prog_to_nir handle system values.

nir: Record info->fs.pixel_center_integer in lower_system_values

compiler: Mark clip/cull distance arrays as compact before lowering.

nir: Bail on clip/cull distance lowering if GLSL IR already did it.

nir: Avoid clip/cull distance lowering multiple times.

nir: Avoid splitting compact arrays into per-element variables.

st/nir: Call nir_lower_clip_cull_distance_arrays().

gallium: Add a PIPE_CAP_NIR_COMPACT_ARRAYS capability bit.

nouveau: Silence unhandled cap warnings

st/mesa: Limit GL_MAX_[NATIVE_]PROGRAM_PARAMETERS_ARB to 2048

glsl: Allow gl_nir_lower_samplers*() without a gl_shader_program

glsl: Don’t look at sampler uniform storage for internal vars

i965: Call nir_lower_samplers for ARB programs.

st/nir: Pull sampler lowering into a helper function.

st/nir: Lower sampler derefs for builtin shaders.

st/nir: Use sampler derefs in built-in shaders.

program: Make prog_to_nir create texture/sampler derefs.

nir: Use sampler derefs in drawpixels and bitmap lowering.

nir: Gather texture bitmasks in gl_nir_lower_samplers_as_deref.

i965: Drop unnecessary ‘and’ with prog->SamplerUnits

i965: Use info->textures_used instead of prog->SamplersUsed.

mesa: Advertise EXT_float_blend in ES 3.0+ contexts.

anv: Put MOCS in the correct location

spirv: Eliminate dead input/output variables after translation.

nir: Don’t reassociate add/mul chains containing only constants

compiler: Make is_64bit(GL_*) helper more broadly available

mesa: Align doubles to a 64-bit starting boundary, even if packing.

radeonsi: Go back to using llvm.pow intrinsic for nir_op_fpow

st/mesa: Copy VP TGSI tokens if they exist, even for NIR shaders.

nir: Don’t forget if-uses in new nir_opt_dead_cf liveness check

iris: Initial commit of a new ‘iris’ driver for Intel Gen8+ GPUs.

iris: viewport state, sort of

iris: port over batchbuffer updates

iris: initial render state upload

iris: packing with valgrind.

iris: merge pack

iris: initial gpu state, merges

iris: RASTER + SF + some CLIP, fix DIRTY vs. NEW

iris: scissors

iris: SF_CLIP_VIEWPORT

iris: Surfaces!

iris: sampler views

iris: stipples and vertex elements

iris: framebuffers

iris: don’t segfault on !old_cso

iris: fix SF_CL length

iris: a bit of depth

iris: some draw info, vbs, sample mask

iris: fix crash - CSO binding can be NULL (when destroying context)

iris: COLOR_CALC_STATE

iris: sampler states

iris: emit 3DSTATE_SAMPLER_STATE_POINTERS

iris: basic push constant alloc

iris: some program code

iris: linear resources

iris: maps

iris: shader debug log

iris: drop unused field

iris: make an ice->render_batch field

iris: disable execbuf for now

iris: delete iris_pipe.c, shuffle code around

iris: init the batch!

iris: fix/rework line stipple

iris: actually save VBs

iris: msaa sample count packing problems

iris: fix prim type

iris: fix bogus index buffer reference

iris: draw->restart_index is uninitialized if PR is not enabled

iris: parse INTEL_DEBUG

iris: reworks, FS compile pieces

iris: import program cache code

iris: do the FS…asserts because we don’t lower uniforms yet

iris: lower io

iris: make iris_batch target a particular ring

iris: kill iris_new_batch

iris: move MAX defines to iris_batch.h

iris: bit of SBA code

iris: flag SBA updates when instruction BO changes

iris: try and have an iris address

iris: so, sba then.

iris: reference VB BOs

iris: VB addresses

iris: DEBUG=bat

iris: VB fixes

iris: actually APPEND commands, not stomp over the top and never incr

iris: actually flush the commands

iris: actually advance forward when emitting commands

iris: initialize dirty bits to ~0ull

iris: hack to stop crashing on samplers for now

iris: fix indentation

iris: fix assert

iris: fix VBs

iris: vertex packet fixes

iris: fix VF instancing length so we don’t get garbage in batch

iris: 3DPRIMITIVE fields

iris: bind_state -> compute state

iris: scissor slots

iris: some shader bits

iris: promote iris_program_cache_item to iris_compiled_shader

iris: actually save derived state

iris: emit shader packets

iris: convert IRIS_DIRTY_* to #defines

iris: don’t forget about TE

iris: reorganize commands to match brw

iris: initial gpu state

iris: WM.

iris: index buffer BO

iris: more comes from bits filled in

iris: drop const from prog data parameters

iris: softpin some things

iris: use vtbl to avoid multiple symbols, fix state base address

iris: fix SBA

iris: move key pop to state module

iris: bits of WM key

iris: shuffle comments

iris: no NEW_SBA

iris: rewrite program cache to use u_upload_mgr

iris: actually destroy the cache

iris: actually softpin at an address

iris: actually set KSP offsets

iris: URB configs.

iris: dummy constants

iris: blend state

iris: alpha testing in PSB

iris: basic SBE code

iris: warning fixes

iris: fix silly unused batch with addr macro

iris: render targets!

iris: don’t do samplers for disabled stages

iris: smaller blend state

iris: actually pin the instruction cache buffers

iris: compctrl

iris: more sketchy SBE

iris: fix dmabuf retval comparisons

iris: more SF CL VPs

iris: catastrophic state pointer mistake

iris: fix extents

iris: write DISABLES are not write ENABLES…whoops

iris: sample mask…not 0.

iris: uniform bits…badly

iris: warn if execbuf fails

iris: NOOP pad batches correctly

iris: decode batches if they fail to submit

iris: enable a few more formats

iris: set strides on transfers

iris: stop adding 9 to our varyings

iris: bufmgr updates.

iris: some thinking about binding tables

iris: Soft-pin the universe

iris: fix icache memzone

iris: dump gtt offset in dump_validation_list

iris: Also set SUPPORTS_48B? Not sure if necessary.

iris: more uploaders

iris: rewrite to use memzones and not relocs

iris: set EXEC_OBJECT_WRITE

iris: include p_defines.h in iris_bufmgr.h

iris: binders

iris: hook up batch decoder

iris: binder fixes

iris: decoder fixes

iris: update vb BO handling now that we have softpin

iris: validation dumping improvements

iris: canonicalize addresses.

iris: delete more trash

iris: allocate SURFACE_STATEs up front and stop streaming them

iris: same treatment for sampler views

iris: assemble SAMPLER_STATE table at bind time

iris: fix a scissor bug

iris: SBA once at context creation, not per batch

iris: TES stash

iris: isv freeing fixes

iris: set sampler views

iris: decoder fixes

iris: better BT asserts

iris: increase allocator alignment

iris: fix index

iris: port bug fix from i965

iris: fixes from i965

iris: fixes

iris: crazy pipe control code

iris: bo reuse

iris: vma fixes - don’t free binder address

iris: vma - fix assert

iris: better SBE

iris: fix texturing!

iris: Move get_command_space to iris_batch.c

iris: Defines for base addresses rather than numbers everywhere

iris: pull in newer comments

iris: copy over i965’s cache tracking

iris: move bo_offset_from_sba

iris: bits of blorp code

iris: more blitting code to make readpixels work

iris: drop bogus binder free

iris: fix sampler view crashes

iris: more blorp

iris: fix blorp prog data crashes

iris: add INTEL_DEBUG=reemit

iris: drop the 48b printout, we never use anything else

iris: hacky flushing for now

iris: linear staging buffers - fast CPU access…

iris: make blorp pin the binder

iris: blorp URB

iris: no more drawing rectangle in blorp

iris: assert surf init

iris: some depth stuff :(

iris: bump GL version to 4.2

iris: uniforms for VS

iris: proper length for VE packet?

iris: proper # of uniforms

iris: properly reject formats, fixes RGB32 rendering with texture float

iris: blorp bug fixes

iris: delete growing code and just die for now

iris: just turn batch reset_and_clear_caches into reset

iris: chaining not growing

iris: caps

iris: fix batch chaining…

iris: fix decoding and undo testing code

iris: Lower the max number of decoded VBO lines

iris: fix whitespace

iris: fix 3DSTATE_VERTEX_ELEMENTS length

iris: more depth stuffs…

iris: fix VF INSTANCING length

iris: util_copy_framebuffer_state (ported from Rob’s v3d patches)

iris: transfers

iris: flush always

iris: maybe slightly less boats uniforms

iris: fix constant packet length to match i965

iris: better ubo handling

iris: completely rewrite binder

iris: have more than one const_offset

iris: make surface states for cbufs

iris: fill out pull constant buffers

iris: fix pull bufs that aren’t the first user upload

iris: use u_transfer helpers for now

iris: better VFI

iris: fix release builds

iris: drop assert for now

iris: disable __gen_validate_value in release mode

iris: allow mapped buffers during execution (faster)

iris: comment about reemitting and flushing

iris: state cleaning

iris: untested index buffer upload

iris: delete some pointless STATIC_ASSERTS

iris: untested SAMPLER_STATE pin BO fix

iris: put back the always flush - fixes some things :(

iris: save pointers to streamed state resources

iris: fix the validation list on new batches

iris: flag DIRTY_WM properly

iris: bindings dirty tracking

iris: some dirty fixes

iris: clear dirty

iris: plug leaks

iris: more leak fixes

iris: pc fixes

iris: remove 4 bytes of padding in iris_compiled_shader

iris: rzalloc iris_compiled_shader so memcmp works even if padding creeps in

iris: don’t leak sampler state table resources

iris: don’t leak keyboxes when searching for an existing program

iris: indentation

iris: use pipe resources not direct BOs

iris: clean up some warnings so I can see through the noise

iris: print binder utilization in INTEL_DEBUG=submit

iris: redo VB CSO a bit

iris: print refcounts in INTEL_DEBUG=submit

iris: support signed vertex buffer offsets

iris: fix major refcounting bug with resources

iris: fix caps so tests run again

iris: avoid crashing on unbound constant resources

iris: emit 3DSTATE_SBE_SWIZ

iris: max VP index

iris: fix viewport counts and settings

iris: fix num viewports to be based on programs

iris: fix VP iteration

iris: scissor count fixes

iris: actually init num_viewports

iris: print second batch size separately

iris: don’t always flush

iris: Handle batch submission failure “better”

iris: bad inherited comments

iris: colorize batchbuffer failures to make them stand out

iris: iris - fix QWord aligned endings after batch chaining rework

iris: tidy comments about mirroring modes

iris: Disable unsupported mirror clamp modes

iris: fix fragcoord ytransform

iris: better boxing on maps

iris: clears

iris: rework DEBUG_REEMIT

iris: shader dirty bits

iris: clear fix

iris: fall back to u_generate_mipmap

iris: implement copy image

iris: lightmodel flat

iris: maybe-flush before blorp operations

iris: fix provoking vertex ordering

iris: larger polygon offset

iris: TES uniform fixes

iris: geometry shader support

iris: don’t emit garbage 3DSTATE_VERTEX_BUFFERS when there aren’t any

iris: fix 3DSTATE_VERTEX_ELEMENTS / VF_INSTANCING for 0 elements

iris: fix GS dispatch mode

iris: depth clears

iris: null surface for unbound textures

iris: state ref tuple

iris: don’t include binder in surface VMA range

iris: border color memory zone :(

iris: implement border color, fix other sampler nonsense

iris: dead pointer

iris: just malloc one iris_genx_state instead of a bunch of oddball pieces

iris: SBE change stash

iris: fix zoffset asserts with 2DArray/Cube

iris: rename map->stride

iris: actually set cube bit properly

iris: keep DISCARD_RANGE

iris: actually handle array layers in blits

iris: comment out l/a/i/la

iris: fix clip flagging on fb changes

iris: fix depth bounds clamp enables

iris: don’t crash on shader perf logs

iris: slab allocate transfers

iris: rearrange iris_resource.h

iris: Implement 3DSTATE_SO_DECL_LIST

iris: SO buffers

iris: streamout

iris: set even if no outputs

iris: bother setting program_string_id…

iris: fix SO_DECL_LIST

iris: actually pin the buffers

iris: fix sample mask for MSAA-off

iris: disable 6x MSAA support

iris: multislice transfer maps

iris: fix CC_VIEWPORT

iris: draw indirect support?

iris: save query type

iris: bits of multisample program key

iris: s/hwcso/state/g

iris: bind state helper function

iris: NOS mechanics

iris: record FS NOS

iris: fix crash

iris: fix sampler views of TBOs

iris: fix texture buffer stride

iris: TES program key inputs

iris: compile a TCS…don’t bother with passthrough yet

iris: don’t emit SO_BUFFERS and SO_DECL_LIST unless streamout is enabled

iris: vertex ID, instance ID

iris: fix SGVS when there are no valid vertex elements

iris: fill out MAX_PATCH_VERTICES

iris: assert about passthrough shaders to make this easier to detect

iris: fix EmitNoIndirect

iris: fix Z24

iris: reemit blend state for alpha test function changes

iris: point sprite enables

iris: hack around samples confusion

iris: fix blorp filters

iris: expose more things that we already support

iris: fix msaa flipping filters

iris: export get_shader_info

iris: implement set_shader_buffers

iris: emit binding table for atomic counters and SSBOs

iris: shorten loop

iris: unbind compiled shaders if none are present

iris: fix TBO alignment to match 965

iris: enable SSBOs

iris: fix SSBO indexing

iris: fix for disabling ssbos

iris: update bindings when changing programs

iris: drop unused bo parameter

iris: implement texture/memory barriers

iris: Don’t reserve new binding table section unless things are dirty

iris: update a todo comment

iris: BIG OL’ HACK for UBO updates

iris: enable texture gather

iris: Avoid croaking when trying to create FBO surfaces with bad formats

iris: fix GS output component limit

iris: drop pipe_shader_state

iris: fix sample mask

iris: cube arrays are cubes too

iris: we don’t support textureGatherOffsets, need it lowered

iris: add minor comments

iris: comment everything

iris: sync bugfixes from brw_bufmgr

iris: remember to set bo->userptr

iris: rename ring to engine

iris: simplify batch len qword alignment

iris: get angry about execbuf failures

iris: fill out more caps

iris: depth or stencil fixes

iris: clear stencil

iris: actually emit stencil packets

iris: allow S8 as a stencil format

iris: WTF transfers

iris: use u_transfer_helper for depth stencil packing/unpacking

iris: drop stencil handling now that u_transfer_helper does it

iris: refcounting, who needs it?

iris: actually do stencil blits

iris: say no to more formats

iris: deal with Marek’s new MSAA caps

iris: we can do multisample Z resolves

iris: Convert RGBX to RGBA for rendering.

iris: disallow RGB32 formats too

iris: Fix tiled memcpy for cubes…and for array slices

iris: blorp blit multiple slices

iris: assert depth is 1 in resource_copy_region

iris: call maybe_flush for each blorp operation

iris: implement ARB_clear_texture

iris: last VUE map NOS, handle > 16 FS inputs

iris: drop dead assignments

iris: drop pwrite

iris: port non-bucket alignment bugfix

iris: don’t emit SBE all the time

iris: rename pipe to base

iris: Drop bogus sampler state saving

iris: move iris_shader_state from ice->shaders.state to ice->state.shaders

iris: Move things to iris_shader_state

iris: Move iris_sampler_view declaration to iris_resource.h

iris: track depth/stencil writes enabled

iris: use consistent copyright formatting

iris: Move cache tracking to iris_resolve.c

iris: proper cache tracking

iris: precompute hashes for cache tracking

iris: Reduce binder alignment from 64 to 32

iris: reenable R32G32B32 texture buffers

iris: z_res -> s_res

iris: implement get_sample_position

iris: fix line-aa-width

iris: try to hack around binder issue

iris: fix sampler state setting

iris: big old hack for tex-miplevel-selection

iris: use linear for 1D textures

iris: handle level/layer in direct maps

iris: fix crash when binding optional shader for the first time

iris: Skip primitive ID overrides if the shader wrote a custom value

iris: fix blend state memcpy

iris: new caps

iris: use Eric’s new caps helper

iris: Allow inlining of require/get_command_space

iris: skip over whole function if dirty == 0

iris: don’t unconditionally emit 3DSTATE_VF / 3DSTATE_VF_TOPOLOGY

iris: fix constant buffer 0 to be absolute

iris: set EXEC_OBJECT_CAPTURE on all driver internal buffers

iris: fix null FB and unbound tex surface state addresses

iris: Support multiple binder BOs, update Surface State Base Address

iris: fix SO offset writes for multiple streams

iris: update comments for multibinder

iris: move binder pinning outside the dirty == 0 check

iris: re-pin binding table contents if we didn’t re-emit them

iris: enable ARB_enhanced_layouts

iris: refactor LRIs in context setup

iris: initialize “don’t suck” bits, as Ben likes to call them

iris: totally untested icelake support

iris: refactor program CSO stuff

iris: silence const warning

iris: fix context restore of 3DSTATE_CONSTANT ranges

iris: properly re-pin stencil buffers

iris: delete bogus comment

iris: inherit the index buffer properly

iris: use 0 for TCS passthrough program string ID

iris: rw_bo for pipe controls

iris: LRM/SRM/SDI hooks

iris: initial query code

iris: gen10+ workarounds and break fix

iris: results write

iris: flush batch when asking for result via QBO

iris: fix random failures via CS stall…but why?

iris: gpr0 to bool

iris: play chicken with timer queries for now

iris: pipeline stats

iris: primitives generated query support

iris: drop explicit pinning

iris: timestamps

iris: …and SO prims emitted queries

iris: glGet timestamps, more correct timestamps

iris: Need to | 1 when asking for timestamps

iris: 36-bit overflow fixes

iris: early return properly

iris: better query file comment

iris: magic number 36 -> #define

iris: Enable ARB_shader_vote

iris: just mark snapshots_landed from the CPU

iris: drop a bunch of pipe_sampler_state stuff we don’t need

iris: vma_free bo->size, not bo_size

iris: don’t mark contains_draw = false when chaining batches

iris: fix Z32_S8 depth sampling

iris: stencil texturing

iris: force persample interp cap

iris: pipe to scs -> iris_pipe.h

iris: inline stage_from_pipe to avoid unused warnings

iris: add gen11 to genX_call

iris: Allow PIPE_CONTROL with Stall at Scoreboard and RT flush

iris: rework format translation apis

iris: Use R/RG instead of I/L/A when sampling

iris: enable I/L formats

iris: X32_S8X24 :/

iris: set the binding table size

iris: lower storage image derefs

iris: implement set_shader_images hook

iris: bother with BTIs

iris: set image access correctly

iris: actually set image access

iris: null for non-existent cbufs

iris: move images next to textures in binding table

iris: advertise GL_ARB_shader_texture_image_samples

iris: Enable fb fetch

iris: initial compute caps

iris: yes

iris: drop dead format //’s

iris: drop XXX’s about swizzling

iris: little bits of compute basics

iris: drop XXX that Jordan handled

iris: drop unnecessary #ifdefs

iris: leave XXX about unnecessary binding table uploads

iris: bail if SLM is needed

iris: fix whitespace

iris: XXX for compute state tracking :/

iris: rewrite grid surface handling

iris: better dirty checking

iris: don’t let render/compute contexts stomp each other’s dirty bits

iris: hack to avoid memorybarriers out the wazoo

iris: do PIPELINE_SELECT for render engine, add flushes, GLK hacks

iris: fix SBA flushing by refactoring code

iris: try and avoid pointless compute submissions

iris: fix UBOs with bindings that have an offset

iris: flag CC_VIEWPORT when changing num viewports

iris: fix SF_CLIP_VIEWPORT array indexing with multiple VPs

iris: Fix texture buffer / image buffer sizes.

iris: Clamp UBO and SSBO access to the actual BO size, for safety

iris: Move snapshots_landed to the front.

iris: Fix off by one in scissoring, empty scissors, default scissors

iris: Fall back to 1x1x1 null surface if no framebuffer supplied

iris: SO_DECL_LIST fix

iris: Fix refcounting of grid surface

iris: delete dead code

iris: fix overhead regression from “don’t stomp each other’s dirty bits”

iris: allow binding a null vertex buffer

iris: Flag constants dirty on program changes

iris: Disable a PIPE_CONTROL workaround on Icelake

iris: Enable ARB_shader_stencil_export

iris: Enable A8/A16_UNORM in an inefficient manner

iris: Drop B5G5R5X1 support

iris: Use at least 1x1 size for null FB surface state.

iris: Cross-link iris_batches so they can potentially flush each other

iris: cross batch flushing

iris: Don’t leak the compute batch

iris: Actually create/destroy HW contexts

iris: Enable msaa_map transfer helpers

iris: tidy more warnings

iris: implement scratch space!

iris: Fix MSAA smooth points

iris: Fix TextureBarrier

iris: Fix multiple RTs with non-independent blending

iris: partial set_query_active_state

iris: Print the batch name when decoding

iris: Clone the NIR

iris: Defer cbuf0 upload to draw time

iris: drop unnecessary param[] setup from iris_setup_uniforms

iris: add param domain defines

iris: fill out params array with built-ins, like clip planes

iris: only bother with params if there are any…

iris: lower user clip planes

iris: hook up key stuff for clip plane lowering

iris: fix system value remapping

iris: dodge backend UCP lowering

iris: bypass params and do it ourselves

iris: actually upload clip planes.

iris: fix num clip plane consts

iris: fix more uniform setup

iris: drop iris_setup_push_uniform_range

iris: enable push constants if we have sysvals but no uniforms

iris: regather info so we get CLIP_DIST slots, not CLIP_VERTEX

iris: don’t support pull constants.

iris: don’t trip on param asserts

iris: drop param stuffs

iris: don’t forget to upload CS consts

iris: fix sysval only binding tables

iris: only clip lower if there’s something to clip against

iris: leave another TODO

iris: Fix SourceAlphaBlendFactor

iris: “Fix” transfer maps of buffers

iris: Fix independent alpha blending.

iris: more TODO

iris: scissored and mirrored blits

iris: more todo notes

iris: Fix TCS/TES slot unification

iris: properly pin stencil buffers

iris: Fix SLM

iris: Use iris_use_pinned_bo rather than add_exec_bo directly

iris: Combine iris_use_pinned_bo and add_exec_bo

iris: Avoid cross-batch synchronization on read/reads

iris: Avoid synchronizing due to the workaround BO

iris: replace vestiges of fence fds with newer exec_fence API

iris: Drop vestiges of throttling code

iris: Hang on to the last batch’s sync-point, so we can wait on it

iris: Add wait fences to properly sync between render/compute

iris: leave a TODO

iris: flush the compute batch too if border pool is redone

iris: put render batch first in fence code

iris: Put batches in an array

iris: PIPE_CONTROL workarounds for GPGPU mode

iris: RT flush for memorybarrier with texture bit

iris: update comment

iris: Enable ctx->Const.UseSTD430AsDefaultPacking

iris: Lie about indirects

iris: Fix buffer -> buffer copy_region

iris: Fix VIEWPORT/LAYER in stream output info

iris: Do the 48-bit vertex buffer address invalidation workaround

iris: drop long dead XXX comment

iris: Track a binding history for buffer resources

iris: add iris_flush_and_dirty_for_history

iris: Flush for history at various moments

iris: Re-pin even if nothing is dirty

iris: fix prototype warning

iris: export iris_upload_shader

iris: fix comment location

iris: Use wrappers for create_xs_state rather than a switch statement

iris: rework program cache interface

iris: Enable precompiles

iris: Use program’s num textures not the state tracker’s bound

iris: drop pull constant binding table entry

iris: add assertions about binding table starts

iris: add an extra BT assert from Chris Wilson

iris: actually flush for storage images

iris: fix some SO overflow query bugs and tidy the code a bit

iris: drop key_size_for_cache

iris: for BLORP, only use the predicate enable bit when USE_BIT

iris: check query first

iris: fix conditional compute, don’t stomp predicate for pipelined queries

iris: Rework tiling/modifiers handling

iris: Fix failed to compile TCS message

iris: Destroy transfer helper on screen teardown

iris: Destroy the border color pool

iris: Unref unbound_tex resource

iris: Fix IRIS_MEMZONE_COUNT to exclude the border color pool

iris: Destroy the bufmgr

iris: Stop leaking iris_uncompiled_shaders like mad

iris: move some non-buffer case code in a bit

iris: Don’t bother considering if the underlying surface is a cube

iris: fix alpha channel for RGB BC1 formats

iris: fix dma buf import strides

iris: CS stall for stream out -> VB

iris: make clipper statistics dynamic

iris: reject all clipping when we can’t use streamout render disabled

iris: omask can kill

iris: reemit SBE when sprite coord origin changes

iris: re-pin inherited streamout buffers

iris: Fix NOS mechanism

iris: fix overhead regression from flushing for storage images

iris: fix set_sampler_views to not unbind, be better about bounds

iris: Fix set_sampler_views with start > 0

iris: Replace num_textures etc with a bitmask we can scan

iris: Drop continues in resolve

iris: Fix clear dimensions

iris: Clamp viewport extents to the framebuffer dimensions

iris: Enable guardband clipping

iris: Fix primitive generated query active flag

iris: Always do rasterizer discard in clipper

iris: override alpha to one src1 blend factors

iris: handle PatchVerticesIn as a system value.

iris: rewrite set_vertex_buffer and VB handling

iris: Reorder LRR parameters to have dst first.

iris: Add _MI_ALU helpers that don’t paste

iris: Don’t bother packing 3DSTATE_SO_BUFFER at create time

iris: Move iris_stream_output_target def to iris_context.h

iris: only get space for one offset in stream output targets

iris: Implement DrawTransformFeedback()

iris: drop unnecessary genx->streamout field

iris: Fix for PIPE_CAP_SIGNED_VERTEX_BUFFER_OFFSET

iris: Fix the prototype for iris_bo_alloc_tiled

iris: don’t print the pointer in INTEL_DEBUG=submit

iris: Use a surface state fill helper

iris: Make a alloc_surface_state helper

iris: whitespace fixes

iris: Track blend enables, save outbound for resolve code

iris: always pin the binder…in the compute context, too.

iris: delete finished comments

iris: pin and re-pin the scratch BO

iris: more dead comments

iris: only mark depth/stencil as writable if writes are actually enabled

iris: better MOCS

iris: Fix scratch space allocation on Icelake.

iris: Only resolve inputs for actual shader stages

iris: Add a more long term TODO about timebase scaling

iris: Fix compute scratch pinning

iris: Delete bogus comment about cube array counting.

iris: Fix framebuffer layer count

iris: Don’t enable push constants just because there are system values

iris: Don’t make duplicate system values

iris: Fill out brw_image_params for storage images on Broadwell

iris: Fix surface states for Gen8 lowered-to-untype images

iris: Leave a comment about why Broadwell images are broken

iris: Implement multi-slice copy_region

iris: Flush the render cache in flush_and_dirty_for_history

iris: Handle PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE somewhat

iris: Don’t check other batches for our batch BO

iris: Drop a dead comment

iris: Delete genx->bound_vertex_buffers

iris: Fix Broadwell WaDividePSInvocationCountBy4

iris: Use new PIPE_STAT_QUERY enums rather than hardcoded numbers.

iris: Switch to the new PIPELINE_STATISTICS_QUERY_SINGLE capability

iris: fail to create screen for older unsupported HW

iris: Allow sample mask of 0

iris: Don’t enable smooth points when point sprites are enabled

iris: Assert about blits with color masking

iris: Pay attention to blit masks

iris: CS stall on VF cache invalidate workarounds

iris: Fix SO issue with INTEL_DEBUG=reemit, set fewer bits

iris: Don’t whack SO dirty bits when finishing a BLORP op

iris: Fix memzone_for_address for the surface and binder zones

iris: Do binder address allocations per-context, not globally.

iris: Zero the compute predicate when changing the render condition

iris: Remap stream output indexes back to VARYING_SLOT_*.

iris: Enable PIPE_CAP_COMPACT_ARRAYS

iris: Drop comment about ISP_DIS

iris: Drop dead state_size hash table

iris: Unreference some more things on state module teardown

iris: minor tidying

iris: Fix bug in bound vertex buffer tracking

iris: Implement ALT mode for ARB_{vertex,fragment}_shader

iris: Add a timeout_nsec parameter, rename check_syncpt to wait_syncpt

iris: Fix accidental busy-looping in query waits

iris: Use READ_ONCE and WRITE_ONCE for snapshots_landed

iris: Make a iris_batch_reference_signal_syncpt helper function.

iris: Add PIPE_CAP_MAX_VARYINGS

iris: rework num textures to util_lastbit

iris: Stop chopping off the first nine characters of the renderer string

iris: Drop XXX about alpha testing

iris: Set 3DSTATE_WM::ForceThreadDispatchEnable

iris: Set HasWriteableRT correctly

iris: Drop XXX about checking for swizzling

iris: Move create and bind driver hooks to the end of iris_program.c

iris: Make an IRIS_MAX_MIPLEVELS define

iris: Simplify iris_get_depth_stencil_resources

iris: Add missing depth cache flushes

iris: Always emit at least one BLEND_STATE

iris: Add iris_resource fields for aux surfaces

iris: Fill out res->aux.possible_usages

iris: Fill out SURFACE_STATE entries for each possible aux usage

iris: create aux surface if needed

iris: Initial import of resolve code

iris: blorp using resolve hooks

iris: add some draw resolve hooks

iris: actually use the multiple surf states for aux modes

iris: try to fix copyimage vs copybuffers

iris: be sure to skip buffers in resolve code

iris: resolve before transfer maps

iris: pin the buffers

iris: store modifier info in res

iris: Make blit code use actual aux usages

iris: consider framebuffer parameter for aux usages

iris: Resolves for compute

iris: disable aux for external things

iris: some initial HiZ bits

iris: don’t use hiz for MSAA buffers

iris: Set program key fields for MCS

iris: make surface states for CCS_D too

iris: do flush for buffers still

iris: Allow disabling aux via INTEL_DEBUG options

iris: Fix aux usage in render resolve code

iris: Only resolve compute resources for compute shaders

iris: Enable auxiliary buffer support

iris: Enable -msse2 and -mstackrealign

Revert “iris: Enable auxiliary buffer support”

vulkan: Fix 32-bit build for the new overlay layer

mesa: Fix RGBBuffers for renderbuffers with sized internal formats

iris: Drop RGBX -> RGBA for storage image usages

iris: Properly allow rendering to RGBX formats.

i965: Implement threaded GL support.

tgsi_to_nir: use sampler variables and derefs

iris: Fix MOCS for blits and clears

isl: Add a swizzle parameter to isl_buffer_fill_state()

iris: Plumb through ISL_SWIZZLE_IDENTITY in buffer surface emitters

iris: Defer uploading sampler state tables until draw time

iris: Properly support alpha and luminance-alpha formats

iris: Drop PIPE_CAP_BUFFER_SAMPLER_VIEW_RGBA_ONLY

iris: Spruce up “are we using this engine?” checks for flushing

iris: Export a copy_region helper that doesn’t flush

iris: Use copy_region and staging resources to avoid transfer stalls

Revert MR 369 (Fix extract_i8 and extract_u8 for 64-bit integers)

iris: Fix backface stencil write condition

iris: Rework default tessellation level uploads

iris: Fix TES gl_PatchVerticesIn handling.

iris: Move depth/stencil flushes so they actually do something

iris: Refactor depth/stencil buffer pinning into a helper.

iris: Fix write enable in pinning of depth/stencil resources

i965: Move some genX infrastructure to genX_boilerplate.h.

i965: Rename ISP_DIS to INDIRECT_STATE_POINTERS_DISABLE.

i965: Use genxml for emitting PIPE_CONTROL.

i965: Reimplement all the PIPE_CONTROL rules.

intel/fs: Fix opt_peephole_csel to not throw away saturates.

iris: Don’t mutate box in transfer map code

iris: Don’t flush the batch for unsynchronized mappings

iris: Slightly better bounds on buffer sizes

gallium: Add PIPE_BARRIER_UPDATE_BUFFER and UPDATE_TEXTURE bits.

nvc0: Skip new update barrier bits

nir: Record non-vector/scalar varyings as unmovable when compacting

iris: Fix util_vma_heap_init size for IRIS_MEMZONE_SHADER

iris: Skip input resolve handling if bindings haven’t changed

iris: Skip framebuffer resolve tracking if framebuffer isn’t dirty

iris: Skip resolves and flushes altogether if unnecessary

iris: Fix batch chaining map_next increment.

iris: Actually advertise some modifiers

st/nir: Free the GLSL IR after linking.

st/mesa: Fix blitting from GL_DEPTH_STENCIL to GL_STENCIL_INDEX

iris: Fix blits with S8_UINT destination

iris: Print the memzone name when allocating BOs with INTEL_DEBUG=buf

iris: Save/restore MI_PREDICATE_RESULT, not MI_PREDICATE_DATA.

iris: Silence unused variable warnings in release mode

gallium/util: Add const to u_range_intersect

iris: Actually pin the scratch BO.

glsl: Set location on structure-split sampler uniform variables

intel: Emit 3DSTATE_VF_STATISTICS dynamically

iris: Actually mark blorp_copy_buffer destinations as written.

iris: Preserve all PIPE_TRANSFER flags in xfer->usage

iris: Fix FLUSH_EXPLICIT handling with staging buffers.

iris: Make shader_perf_log print to stderr if INTEL_DEBUG=perf is set

i965: Move program key debugging to the compiler.

iris: Print the reason for shader recompiles.

iris: Move iris_debug_recompile calls before uploading.

iris: Change vendor and renderer strings

iris: Add texture cache flushing hacks for blit and resource_copy_region

iris: Be less aggressive at postdraw work skipping

iris: Add mechanism for iris-specific driconf options

iris: Enable the dual_color_blend_by_location driconf option.

iris: Track bound and writable SSBOs

Revert “glsl: Set location on structure-split sampler uniform variables”

i965: Ignore uniform storage for samplers or images, use binding info

i965: Tidy bogus indentation left by previous commit

iris: Mark constants dirty on transfer unmap even if no flushes occur

iris: Track bound constant buffers

iris: Rework UBOs and SSBOs to use pipe_shader_buffer

iris: Rework image views to store pipe_image_view.

iris: Make a gl_shader_stage -> pipe_shader_stage helper function

iris: Make memzone_for_address non-static

iris: Replace buffer backing storage and rebind to update addresses.

iris: Make a resource_is_busy() helper

iris: Track valid data range and infer unsynchronized mappings.

iris: Make some offset math helpers take a const isl_surf pointer

iris: Fix DrawTransformFeedback math when there’s a buffer offset

iris: Prefer staging blits when destination supports CCS_E.

iris: Actually put Mesa in GL_RENDERER string

iris: Split iris_flush_and_dirty_for_history into two helpers.

iris: Enable GL_AMD_depth_clamp_separate

iris: Advertise EXT_texture_sRGB_R8 support

iris: Some tidying for preemption support

iris: Silence unused function warning

iris: Fix zeroing of transform feedback offsets in strange cases.

glsl/list: Add an exec_list_is_singular() helper.

nir: Add a new nir_cf_list_is_empty_block() helper.

intel/fs: Don’t emit empty ELSE blocks.

iris: Set XY Clipping correctly.

iris: Only enable GL_AMD_depth_clamp_separate on Gen9+

iris: Fix imageBuffer and PBO download.

iris: Disable dual source blending when shader doesn’t handle it

iris: Resolve textures used by the program, not merely bound textures

iris: Fix 4GB memory zone heap sizes.

iris: leave the top 4Gb of the high heap VMA unused

iris: Force VMA alignment to be a multiple of the page size.

iris: Delete bucketing allocators

i965: Fix BRW_MEMZONE_LOW_4G heap size.

i965: Force VMA alignment to be a multiple of the page size.

i965: leave the top 4Gb of the high heap VMA unused

i965: Fix memory leaks in brw_upload_cs_work_groups_surface().

iris: Use full ways for L3 cache setup on Icelake.