No description
Find a file
Iago Toral Quiroga 4845f184d7 v3d/compiler: don't rewrite unused temporaries to point to NOP register
This was assuming that unused temporaries are written but never read,
since the NOP register can only be used as a destination register,
but we can end up here also for temporaries that are read once but
never written.

This was found with a graphicsfuzz test that has a switch with
cases that have unreachable discards. In that test, NIR genrates
code like this:

decl_reg vec3 32 r19
...
r20 = mov r19.z
r21 = mov r19.y
r22 = mov r19.x

Where r19.xyz would generate 3 temporary registers that are read but
never written, so we would rewrite them to point to the NOP register
as QPU instruction sources, which is not allowed and would hit an
assert that expect magic reads to be from [r0,r5] only.

Fixes:
dEQP-VK.graphicsfuzz.unreachable-switch-case-with-discards

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5645>
2020-06-26 08:57:32 +00:00
.appveyor Appveyor: Quickly fix meson build. 2019-11-14 21:45:23 +00:00
.gitlab/issue_templates gitlab: Ask about reproduction rate in the issue template 2020-05-20 10:20:00 +00:00
.gitlab-ci gitlab-ci: attach the Fossilize log file as artifact on failure 2020-06-26 06:45:23 +00:00
bin bin/symbols-check: explain C++ symbols workaround 2020-06-23 11:05:39 +00:00
build-support
docs radv: enable ACO by default 2020-06-25 15:16:30 +02:00
doxygen
include intel: Disable loading drivers on DG1 devices for now 2020-06-24 02:48:04 +00:00
scons scons/windows: Support build with LLVM 10. 2020-04-14 08:40:56 +00:00
src v3d/compiler: don't rewrite unused temporaries to point to NOP register 2020-06-26 08:57:32 +00:00
subprojects meson: use github URL for wraps instead of completely unreliable wrapdb 2020-01-16 23:06:43 +00:00
.dir-locals.el
.editorconfig docs: fixup indentation 2020-01-18 11:39:32 +01:00
.gitignore
.gitlab-ci.yml gitlab-ci: attach the Fossilize log file as artifact on failure 2020-06-26 06:45:23 +00:00
.mailmap .mailmap: add an alias for Andres Gomez 2020-04-30 14:33:20 +03:00
.travis.yml travis: autodetect python version instead of hard-coding it 2019-12-21 20:23:08 +00:00
Android.common.mk tree-wide: fix deprecated GitLab URLs 2020-05-23 15:33:50 +00:00
Android.mk freedreno: android: fix build failure on android due to python version 2020-02-07 16:34:49 +00:00
appveyor.yml appveyor: Remove Meson job. 2020-04-01 01:13:21 +00:00
CleanSpec.mk
common.py scons: Print a deprecation warning about using scons on not windows 2019-10-24 18:33:50 +00:00
meson.build meson: unbreak sysctl.h detection on BSDs 2020-06-16 23:24:54 +00:00
meson_options.txt meson: remove "empty array"/"array of an empty string" confusion 2020-06-02 19:36:12 +00:00
README.rst README: update references to internal docs 2020-06-13 10:42:01 +00:00
REVIEWERS
SConstruct tree-wide: fix deprecated GitLab URLs 2020-05-23 15:33:50 +00:00
VERSION cut 20.1 branch 2020-04-29 23:52:43 +00:00

`Mesa <https://mesa3d.org>`_ - The 3D Graphics Library
======================================================


Source
------

This repository lives at https://gitlab.freedesktop.org/mesa/mesa.
Other repositories are likely forks, and code found there is not supported.


Build & install
---------------

You can find more information in our documentation (`docs/install.rst
<https://mesa3d.org/install.html>`_), but the recommended way is to use
Meson (`docs/meson.rst <https://mesa3d.org/meson.html>`_):

.. code-block:: sh

  $ mkdir build
  $ cd build
  $ meson ..
  $ sudo ninja install


Support
-------

Many Mesa devs hang on IRC; if you're not sure which channel is
appropriate, you should ask your question on `Freenode's #dri-devel
<irc://chat.freenode.net#dri-devel>`_, someone will redirect you if
necessary.
Remember that not everyone is in the same timezone as you, so it might
take a while before someone qualified sees your question.
To figure out who you're talking to, or which nick to ping for your
question, check out `Who's Who on IRC
<https://dri.freedesktop.org/wiki/WhosWho/>`_.

The next best option is to ask your question in an email to the
mailing lists: `mesa-dev\@lists.freedesktop.org
<https://lists.freedesktop.org/mailman/listinfo/mesa-dev>`_


Bug reports
-----------

If you think something isn't working properly, please file a bug report
(`docs/bugs.rst <https://mesa3d.org/bugs.html>`_).


Contributing
------------

Contributions are welcome, and step-by-step instructions can be found in our
documentation (`docs/submittingpatches.rst
<https://mesa3d.org/submittingpatches.html>`_).

Note that Mesa uses gitlab for patches submission, review and discussions.