Find a file
Francisco Jerez 265c7c8971 intel/fs/gen12: Introduce software scoreboard lowering pass.
Gen12+ hardware lacks the register scoreboard logic that used to
guarantee data coherency between register reads and writes in previous
generations.  This lowering pass runs after register allocation in
order to make up for it.

It works by performing global dataflow analysis in order to determine
the set of potential dependencies of every instruction in the shader,
and then inserts any required SWSB annotations and additional SYNC
instructions in order to guarantee data coherency.

v2: Drop unnecessary _safe list iteration (Caio).

v3: Temporarily workaround potential WaR hazard between FPU
    instruction and subsequent out-of-order write, pending
    clarification from the hardware team.  Drop redundant tracking of
    implicit access of acc0-1, since the hardware guarantees coherency
    of these (but not the other accumulators...).

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
2019-10-11 12:24:16 -07:00
.gitlab-ci gitlab-ci: Add a mingw x86_64 job 2019-10-10 16:33:05 -07:00
bin bin: delete unused releasing scripts 2019-10-03 20:15:19 +00:00
build-support configure: commit test files 2017-10-16 16:32:43 -07:00
docs docs: update meson docs for windows 2019-10-10 16:33:05 -07:00
doxygen doxygen: Plumb through gallium/ to automated documentation 2016-05-30 17:53:45 +01:00
include meson: skip installation of GLVND-provided headers 2019-10-10 22:33:09 +01:00
scons scons/windows: Fix build with LLVM>=8 2019-10-04 13:48:08 +00:00
scripts appveyor: Add support for meson as well as scons on windows 2019-10-10 16:33:05 -07:00
src intel/fs/gen12: Introduce software scoreboard lowering pass. 2019-10-11 12:24:16 -07:00
subprojects meson: add a expat subproject 2019-09-10 20:36:47 +00:00
.dir-locals.el dir-locals.el: Adds White Space support 2016-11-14 19:17:49 +02:00
.editorconfig editorconfig: Fix meson style 2019-05-24 18:44:18 +00:00
.gitignore intel/tools: Add unit tests for assembler 2019-05-07 14:33:48 -07:00
.gitlab-ci.yml gitlab-ci: Disable meson-mingw32-x86_64 job again for now 2019-10-11 11:10:01 +02:00
.mailmap .mailmap: add a couple of aliases for Jakob Bornecrantz 2019-10-03 17:11:20 -04:00
.travis.yml travis: Fail build if any command in if statement fails. 2019-08-31 12:20:04 -07:00
Android.common.mk docs: Update bug report URLs for the gitlab migration 2019-09-19 16:37:36 +00:00
Android.mk Android.mk: Fix missing \ from recent llvm change 2019-09-13 19:11:10 +00:00
appveyor.yml appveyor: Add support for meson as well as scons on windows 2019-10-10 16:33:05 -07:00
CleanSpec.mk CleanSpec.mk: Remove HOST_OUT_release 2018-08-02 15:42:40 -06:00
common.py scons/MSYS2-MinGW-W64: Fix build options defaults 2019-10-05 08:43:13 +00:00
meson.build meson: don't error on formaters with mingw 2019-10-10 16:33:04 -07:00
meson_options.txt meson: Check for SPIRV-Tools and llvm-spirv 2019-09-21 08:28:32 +00:00
README.rst README: Drop the badges from the readme 2019-02-07 12:46:17 -06:00
REVIEWERS script: drop get_reviewer.pl 2019-10-07 21:33:38 +01:00
SConstruct docs: Update bug report URLs for the gitlab migration 2019-09-19 16:37:36 +00:00
VERSION mesa: bump version to 19.3.0-devel 2019-08-20 22:33:49 +01: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.html
<https://mesa3d.org/install.html>`_), but the recommended way is to use
Meson (`docs/meson.html <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.html <https://mesa3d.org/bugs.html>`_).


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

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

Note that Mesa uses email mailing-lists for patches submission, review and
discussions.