Mesa 18.2.4 Release Notes / October 31, 2018
============================================

Mesa 18.2.4 is a bug fix release which fixes bugs found since the 18.2.4
release.

Mesa 18.2.4 implements the OpenGL 4.5 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being
used. Some drivers don't support all the features required in OpenGL
4.5. OpenGL 4.5 is **only** available if requested at context creation.
Compatibility contexts may report a lower version depending on each
driver.

SHA256 checksums
----------------

::

   968bfe78605e9397ddf244933b1fa62edb8429fc55aaec2ae7e20bb1c82abdea  mesa-18.2.4.tar.gz
   621d1aebb57876d5b6a5d2dcf4eb7e0620e650c6fe5cf3655c65e243adc9cb4e  mesa-18.2.4.tar.xz

New features
------------

None

Bug fixes
---------

-  `Bug 107865 <https://bugs.freedesktop.org/show_bug.cgi?id=107865>`__
   - swr fail to build with llvm-libs 6.0.1
-  `Bug 108272 <https://bugs.freedesktop.org/show_bug.cgi?id=108272>`__
   - [polaris10] opencl-mesa: Anything using OpenCL segfaults, XFX
   Radeon RX 580
-  `Bug 108524 <https://bugs.freedesktop.org/show_bug.cgi?id=108524>`__
   - [RADV] GPU lockup on event synchronization

Changes
-------

Alex Smith (2):

-  ac/nir: Use context-specific LLVM types
-  anv: Fix sanitization of stencil state when the depth test is
   disabled

Alok Hota (2):

-  swr/rast: ignore CreateElementUnorderedAtomicMemCpy
-  swr/rast: fix intrinsic/function for LLVM 7 compatibility

Andres Rodriguez (1):

-  radv: fix check for perftest options size

Bas Nieuwenhuizen (1):

-  radv: Emit enqueued pipeline barriers on event write.

Connor Abbott (2):

-  ac: Introduce ac_build_expand()
-  ac: Fix loading a dvec3 from an SSBO

David McFarland (1):

-  util: Change remaining uint32 cache ids to sha1

Dylan Baker (1):

-  meson: don't require libelf for r600 without LLVM

Elie Tournier (1):

-  gallium: Correctly handle no config context creation

Eric Engestrom (1):

-  radv: s/abs/fabsf/ for floats

Jan Vesely (1):

-  radeonsi: Bump number of allowed global buffers to 32

Jason Ekstrand (3):

-  spirv: Use the right bit-size for spec constant ops
-  blorp: Emit a dummy 3DSTATE_WM prior to 3DSTATE_WM_HZ_OP
-  anv: Flag semaphore BOs as external

Juan A. Suarez Romero (3):

-  docs: add sha256 checksums for 18.2.3
-  cherry-ignore: Revert "anv/skylake: disable
   ForceThreadDispatchEnable"
-  Update version to 18.2.4

Liviu Prodea (1):

-  scons: Put to rest zombie texture_float build option.

Marek Olšák (1):

-  radeonsi: fix a VGT hang with primitive restart on Polaris10 and
   later

Michel Dänzer (1):

-  loader/dri3: Also wait for front buffer fence if we triggered it

Nanley Chery (1):

-  intel/blorp: Define the clear value bounds for HiZ clears

Rob Clark (2):

-  freedreno: fix inorder rendering case
-  freedreno: don't flush when new and old pfb is identical
