Compare commits
379 Commits
mesa-18.0.
...
mesa-17.2.
Author | SHA1 | Date | |
---|---|---|---|
|
ae52410bf0 | ||
|
2c582b4cf7 | ||
|
0195b78aa7 | ||
|
a23bd4ea87 | ||
|
27cd0abe8e | ||
|
b5dc8c43aa | ||
|
526ecbe417 | ||
|
0d91d13564 | ||
|
fd0cf2c946 | ||
|
6a73458510 | ||
|
9ba45e7d33 | ||
|
662cff8fe4 | ||
|
0b0b7f1833 | ||
|
23eaeeb88a | ||
|
d8e0f66b55 | ||
|
bd2037da82 | ||
|
388b68a61e | ||
|
71a33028ba | ||
|
f33f5e9ad6 | ||
|
af1dc1cf87 | ||
|
3d7546a312 | ||
|
67fc6d43bd | ||
|
71ea414782 | ||
|
e7ddddc989 | ||
|
6dc8e69da6 | ||
|
78ff359d04 | ||
|
9e27cdc771 | ||
|
1317bdc3a1 | ||
|
e95c4af12d | ||
|
d132c0d792 | ||
|
e28870b9fe | ||
|
1b10d0851a | ||
|
a4b72e2643 | ||
|
fe9dc0fad6 | ||
|
162fa27b12 | ||
|
b3207d9ff7 | ||
|
6cab29e973 | ||
|
1c2f79066c | ||
|
0c63d53765 | ||
|
52019bad1d | ||
|
9bdd943ff2 | ||
|
1393d37d7b | ||
|
74f1903234 | ||
|
aac0807f48 | ||
|
03f3899f99 | ||
|
87a9a989ee | ||
|
ce725baa7c | ||
|
f46ba9ee35 | ||
|
2d51d41865 | ||
|
cbc081b871 | ||
|
546b4d455a | ||
|
9cbf8c910e | ||
|
1eb4cbc934 | ||
|
fba44d91d0 | ||
|
9cba4d491c | ||
|
facc851818 | ||
|
28dc4b64f2 | ||
|
ea38f4c33a | ||
|
23c08dabc3 | ||
|
dc9bd1dade | ||
|
d001ff1267 | ||
|
88a16c895b | ||
|
b640bf38ca | ||
|
4d1ae3283c | ||
|
d56aa9fe43 | ||
|
3b657e4ff5 | ||
|
99d3661bce | ||
|
0f6e89dfe0 | ||
|
bee97ec32e | ||
|
9f4b0a336c | ||
|
74a28d85de | ||
|
f805a61e04 | ||
|
6957dfb0d8 | ||
|
410f4dbcb1 | ||
|
d22e779d6a | ||
|
41ec2af2a8 | ||
|
0bd7be0142 | ||
|
4bcadb533f | ||
|
2eae2a6f0e | ||
|
077f925473 | ||
|
2e92d16f9d | ||
|
83dcf9dc33 | ||
|
406e7e0e17 | ||
|
60466859fa | ||
|
014b5a7209 | ||
|
f9c4f22f5a | ||
|
4ae1a62b26 | ||
|
ea3ad52ad3 | ||
|
3f5d2b768c | ||
|
070d2dcfac | ||
|
1a8ccdc6e9 | ||
|
608bea62ca | ||
|
dc47b179ed | ||
|
1146591d4b | ||
|
76c6bbca7c | ||
|
3315bb4f08 | ||
|
cb72969d8b | ||
|
1093207463 | ||
|
f5f515a023 | ||
|
18db986354 | ||
|
c386538036 | ||
|
d0b52003d0 | ||
|
6e903ae7d5 | ||
|
6e3788e3b1 | ||
|
05e2ed7889 | ||
|
f2fc168517 | ||
|
eac6932c66 | ||
|
7bedb1fd12 | ||
|
332f6e9b3b | ||
|
f5cbe1f9b8 | ||
|
f6d64c7dc1 | ||
|
80db5b3420 | ||
|
5a71ed6fa5 | ||
|
bc12538a8e | ||
|
98dce315c8 | ||
|
1535e8a5d4 | ||
|
a66a70480f | ||
|
bd522741c4 | ||
|
b78c664115 | ||
|
2467b50e45 | ||
|
b5a70210af | ||
|
5edc4dc080 | ||
|
6587cbfca2 | ||
|
6b0ded06b1 | ||
|
d9aba007c0 | ||
|
e22ab89f9f | ||
|
1b100aae7b | ||
|
ec89ab30c9 | ||
|
8619a6b1cc | ||
|
47c8ffe719 | ||
|
84f3374f1c | ||
|
5e5882a7aa | ||
|
89db1532fc | ||
|
5e8ddba33f | ||
|
fc2b01adc9 | ||
|
fe53c8bc21 | ||
|
60efffcec0 | ||
|
5d1deeeab3 | ||
|
dbccd8465d | ||
|
de44476572 | ||
|
2712e59538 | ||
|
e16c31f3fe | ||
|
dbf33a12e1 | ||
|
cd9d26c3ef | ||
|
b378fd5cf3 | ||
|
caff607bcb | ||
|
737e2245ce | ||
|
46cfefc5be | ||
|
6121bc3150 | ||
|
488460b1ef | ||
|
3c54a77d08 | ||
|
891627ec0f | ||
|
688f8415f7 | ||
|
54915ee52f | ||
|
da517431f6 | ||
|
3b4a6dbe93 | ||
|
d2dca92a6c | ||
|
d41d54b061 | ||
|
5d16640ea1 | ||
|
6024a95198 | ||
|
996bf9c1cd | ||
|
bd903d4ee1 | ||
|
d6d2b6b5ec | ||
|
cb778d563f | ||
|
7c3bd519e7 | ||
|
c6b3732967 | ||
|
e012ade1cf | ||
|
41e691d605 | ||
|
b6ae4400fc | ||
|
c47914276e | ||
|
536f852d42 | ||
|
fdc4f6e684 | ||
|
8cf9e5ab56 | ||
|
d5c71e44c4 | ||
|
53190187cc | ||
|
366e02f992 | ||
|
5cec093773 | ||
|
69394e3517 | ||
|
c0c1e05fb6 | ||
|
94b656cb5e | ||
|
5e0b556abc | ||
|
f087dad40d | ||
|
83bbfaddf1 | ||
|
a8eea040cd | ||
|
15ecbb2c07 | ||
|
7fef8d436a | ||
|
ea1bcfc063 | ||
|
6e2b9fba21 | ||
|
dcb634df92 | ||
|
20be71ba7c | ||
|
a3d1ea347a | ||
|
dc640aab63 | ||
|
c8076c8ea1 | ||
|
62f0bb2a87 | ||
|
40f06286f9 | ||
|
0f79eb7abe | ||
|
54c5568fa9 | ||
|
c2f314d721 | ||
|
fe04abc6e9 | ||
|
0e305f0518 | ||
|
cb9dae484a | ||
|
57ecf28668 | ||
|
78e2b539a4 | ||
|
86d4c203bd | ||
|
bda2975eef | ||
|
a4dc18efca | ||
|
8f77409e2b | ||
|
458f52618a | ||
|
402b8073ad | ||
|
6fe4852f59 | ||
|
d080f10fdf | ||
|
93b794f094 | ||
|
520786586d | ||
|
9ffe4cc6c0 | ||
|
2b0e70e2ae | ||
|
3a9b2e0e7d | ||
|
188010c68d | ||
|
b4473dd519 | ||
|
f5925b2897 | ||
|
702950d1ad | ||
|
909f2b6aa2 | ||
|
3666d9ab99 | ||
|
5303f0c246 | ||
|
8d51747dc0 | ||
|
3b41bef9a4 | ||
|
e040bdbc8a | ||
|
e4c4b0dbcb | ||
|
ca9817a6e8 | ||
|
df8e65feb7 | ||
|
ec94b874c4 | ||
|
17e5b0f1db | ||
|
69c793c0ce | ||
|
b29987ace4 | ||
|
22c1e2e966 | ||
|
f01cd4feeb | ||
|
c77ae9744e | ||
|
5fdf832235 | ||
|
46573f1028 | ||
|
1dfbfad0b9 | ||
|
289b2a8788 | ||
|
1960d8f0dd | ||
|
2c964f68a8 | ||
|
5d5a13e375 | ||
|
9d6d567046 | ||
|
6f0d910617 | ||
|
a0b3095bb6 | ||
|
c25e896810 | ||
|
9172c7744a | ||
|
adce678550 | ||
|
7f3555951e | ||
|
bc39869414 | ||
|
93aee55a7f | ||
|
996e3239c9 | ||
|
9b856ea323 | ||
|
d8f8689101 | ||
|
dbca342014 | ||
|
c0c03d0003 | ||
|
9013f80f67 | ||
|
d93e6a0409 | ||
|
cf2f05ff91 | ||
|
91715a3681 | ||
|
9ba7693a9a | ||
|
1f8cb4c243 | ||
|
da4d1fd084 | ||
|
7789126929 | ||
|
6389526ce5 | ||
|
2813e83f6c | ||
|
ea5c466c91 | ||
|
d174214218 | ||
|
a14dd9fff6 | ||
|
3e62ba0907 | ||
|
1011fd22ae | ||
|
dd03cb5c5e | ||
|
046730b8a3 | ||
|
f83d979759 | ||
|
2cdb51e76d | ||
|
15f23fb855 | ||
|
dd4fafcfda | ||
|
17a3e4891b | ||
|
85cc3533fa | ||
|
93bd5fbfe1 | ||
|
833f12abdf | ||
|
1fc44a3ba0 | ||
|
6ccb75e869 | ||
|
b4fec4271b | ||
|
efb9b5740e | ||
|
e44393cb23 | ||
|
81b5a6a85b | ||
|
5795e42116 | ||
|
42e8f3ccdf | ||
|
e452ed26ff | ||
|
c7c6ba44ca | ||
|
bdab7c69f5 | ||
|
47507ec1fd | ||
|
3fb5cc2637 | ||
|
42d6e7eba2 | ||
|
f60ff71b6f | ||
|
f70f216564 | ||
|
827bf79052 | ||
|
2b10b3a417 | ||
|
27e7a3a5ef | ||
|
da005f5566 | ||
|
cc8ae8842b | ||
|
3165f9877e | ||
|
1e11687029 | ||
|
ea595756f8 | ||
|
ffd8120284 | ||
|
9d65214f3d | ||
|
a57390cee0 | ||
|
8b706102eb | ||
|
7f5d86ebaa | ||
|
1c1653d7b0 | ||
|
d4100b0d09 | ||
|
bb6e5e5476 | ||
|
08d49e074d | ||
|
75f5abb82f | ||
|
f0b6298c05 | ||
|
ac04187e33 | ||
|
b1514579c2 | ||
|
dc63c715cb | ||
|
9d9ea2c5a4 | ||
|
07b5c78836 | ||
|
59f7fdb85e | ||
|
29df4deef2 | ||
|
e4371d14f1 | ||
|
0b2c034f64 | ||
|
f4e163094d | ||
|
4a181e6244 | ||
|
8ef9fe7229 | ||
|
4f872e62c2 | ||
|
c5fac38ced | ||
|
579ecfd91e | ||
|
6b279b3271 | ||
|
6efb8d79a9 | ||
|
795b712bd7 | ||
|
43a2b178c2 | ||
|
d5def4f5a9 | ||
|
f2a60ff20a | ||
|
3c8673d420 | ||
|
381ccaa1cb | ||
|
2dd6030fbb | ||
|
a90d99f7a5 | ||
|
6806773905 | ||
|
3e872f4b53 | ||
|
21ea75b3e9 | ||
|
58fe86a6d6 | ||
|
d466a70532 | ||
|
e62eddcdbe | ||
|
6d07e58afb | ||
|
f9e563597d | ||
|
5b61ba4432 | ||
|
6625382b1c | ||
|
2bca74253d | ||
|
b36ff2d1f2 | ||
|
99b2613ce1 | ||
|
f9c7549605 | ||
|
2ce4f0afd3 | ||
|
546282e8bc | ||
|
de55bc8f49 | ||
|
f0b7563a36 | ||
|
5bee196840 | ||
|
2a1792981c | ||
|
a2b7477603 | ||
|
3e777d5cab | ||
|
9bb6aa5794 | ||
|
90bbcb93b1 | ||
|
529c440dd3 | ||
|
94e0de90ee | ||
|
3180f0fa0d | ||
|
e7f14a8b52 | ||
|
7f5d9d7a6d | ||
|
3d0960e761 | ||
|
bdbd8ab517 | ||
|
47bca2cfa7 | ||
|
04bb687f04 | ||
|
4e0f29ed0b | ||
|
0ccb853cc0 | ||
|
a455f594bb | ||
|
a955622c1a |
@@ -33,7 +33,3 @@ indent_size = 2
|
||||
|
||||
[*.patch]
|
||||
trim_trailing_whitespace = false
|
||||
|
||||
[meson.build,meson_options.txt]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@@ -7,13 +7,11 @@
|
||||
*.log
|
||||
*.o
|
||||
*.obj
|
||||
*.orig
|
||||
*.os
|
||||
*.pc
|
||||
*.pdb
|
||||
*.pyc
|
||||
*.pyo
|
||||
*.rej
|
||||
*.so
|
||||
*.so.*
|
||||
*.sw[a-z]
|
||||
|
314
.travis.yml
314
.travis.yml
@@ -20,50 +20,16 @@ env:
|
||||
- XCBPROTO_VERSION=xcb-proto-1.11
|
||||
- LIBXCB_VERSION=libxcb-1.11
|
||||
- LIBXSHMFENCE_VERSION=libxshmfence-1.2
|
||||
- LIBTXC_DXTN_VERSION=libtxc_dxtn-1.0.1
|
||||
- LIBVDPAU_VERSION=libvdpau-1.1
|
||||
- LIBVA_VERSION=libva-1.6.2
|
||||
- LIBWAYLAND_VERSION=wayland-1.11.1
|
||||
- WAYLAND_PROTOCOLS_VERSION=wayland-protocols-1.8
|
||||
- PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
|
||||
- LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
|
||||
- PATH="$HOME/prefix/bin:$PATH"
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- env:
|
||||
- LABEL="meson Vulkan"
|
||||
- BUILD=meson
|
||||
- MESON_OPTIONS="-Ddri-drivers= -Dgallium-drivers="
|
||||
- LLVM_VERSION=4.0
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-3.9
|
||||
packages:
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
# From sources above
|
||||
- llvm-3.9-dev
|
||||
# Common
|
||||
- xz-utils
|
||||
- libexpat1-dev
|
||||
- libelf-dev
|
||||
- python3-pip
|
||||
- env:
|
||||
- LABEL="meson loaders/classic DRI"
|
||||
- BUILD=meson
|
||||
- MESON_OPTIONS="-Dvulkan-drivers= -Dgallium-drivers="
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- xz-utils
|
||||
- x11proto-xf86vidmode-dev
|
||||
- libexpat1-dev
|
||||
- libx11-xcb-dev
|
||||
- libxdamage-dev
|
||||
- libxfixes-dev
|
||||
- python3-pip
|
||||
- env:
|
||||
- LABEL="make loaders/classic DRI"
|
||||
- BUILD=make
|
||||
@@ -71,7 +37,7 @@ matrix:
|
||||
- MAKE_CHECK_COMMAND="make check"
|
||||
- DRI_LOADERS="--enable-glx --enable-gbm --enable-egl --with-platforms=x11,drm,surfaceless,wayland --enable-osmesa"
|
||||
- DRI_DRIVERS="i915,i965,radeon,r200,swrast,nouveau"
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS=""
|
||||
- VULKAN_DRIVERS=""
|
||||
- LIBUNWIND_FLAGS="--disable-libunwind"
|
||||
@@ -96,11 +62,9 @@ matrix:
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
- OVERRIDE_CC="gcc-4.8"
|
||||
- OVERRIDE_CXX="g++-4.8"
|
||||
# New binutils linker is required for llvm-3.9
|
||||
- OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS="swr"
|
||||
- VULKAN_DRIVERS=""
|
||||
- LIBUNWIND_FLAGS="--enable-libunwind"
|
||||
@@ -109,7 +73,6 @@ matrix:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-3.9
|
||||
packages:
|
||||
- binutils-2.26
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
# From sources above
|
||||
@@ -128,11 +91,9 @@ matrix:
|
||||
- MAKE_CHECK_COMMAND="true"
|
||||
- LLVM_VERSION=3.9
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
# New binutils linker is required for llvm-3.9
|
||||
- OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS="i915,nouveau,pl111,r300,r600,radeonsi,freedreno,svga,swrast,vc4,virgl,etnaviv,imx"
|
||||
- VULKAN_DRIVERS=""
|
||||
- LIBUNWIND_FLAGS="--enable-libunwind"
|
||||
@@ -141,7 +102,6 @@ matrix:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-3.9
|
||||
packages:
|
||||
- binutils-2.26
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
# From sources above
|
||||
@@ -155,108 +115,35 @@ matrix:
|
||||
- libunwind8-dev
|
||||
- env:
|
||||
# NOTE: Analogous to SWR above, building Clover is quite slow.
|
||||
- LABEL="make Gallium ST Clover LLVM-3.9"
|
||||
- LABEL="make Gallium ST Clover"
|
||||
- BUILD=make
|
||||
- MAKEFLAGS="-j4"
|
||||
- MAKE_CHECK_COMMAND="true"
|
||||
- LLVM_VERSION=3.9
|
||||
- LLVM_VERSION=3.6
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
- OVERRIDE_CC=gcc-4.7
|
||||
- OVERRIDE_CXX=g++-4.7
|
||||
# New binutils linker is required for llvm-3.9
|
||||
- OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS="r600,radeonsi"
|
||||
- GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx --disable-gallium-osmesa"
|
||||
# i915 most likely doesn't work with OpenCL.
|
||||
# Regardless - we're doing a quick build test here.
|
||||
- GALLIUM_DRIVERS="i915"
|
||||
- VULKAN_DRIVERS=""
|
||||
- LIBUNWIND_FLAGS="--enable-libunwind"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-3.9
|
||||
- llvm-toolchain-trusty-3.6
|
||||
packages:
|
||||
- binutils-2.26
|
||||
- libclc-dev
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
- g++-4.7
|
||||
# From sources above
|
||||
- llvm-3.9-dev
|
||||
- clang-3.9
|
||||
- libclang-3.9-dev
|
||||
# Common
|
||||
- xz-utils
|
||||
- x11proto-xf86vidmode-dev
|
||||
- libexpat1-dev
|
||||
- libx11-xcb-dev
|
||||
- libelf-dev
|
||||
- libunwind8-dev
|
||||
- env:
|
||||
# NOTE: Analogous to SWR above, building Clover is quite slow.
|
||||
- LABEL="make Gallium ST Clover LLVM-4.0"
|
||||
- BUILD=make
|
||||
- MAKEFLAGS="-j4"
|
||||
- MAKE_CHECK_COMMAND="true"
|
||||
- LLVM_VERSION=4.0
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
- OVERRIDE_CC=gcc-4.8
|
||||
- OVERRIDE_CXX=g++-4.8
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS="r600,radeonsi"
|
||||
- VULKAN_DRIVERS=""
|
||||
- LIBUNWIND_FLAGS="--enable-libunwind"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-4.0
|
||||
packages:
|
||||
- libclc-dev
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
- g++-4.8
|
||||
# From sources above
|
||||
- llvm-4.0-dev
|
||||
- clang-4.0
|
||||
- libclang-4.0-dev
|
||||
# Common
|
||||
- xz-utils
|
||||
- x11proto-xf86vidmode-dev
|
||||
- libexpat1-dev
|
||||
- libx11-xcb-dev
|
||||
- libelf-dev
|
||||
- libunwind8-dev
|
||||
- env:
|
||||
# NOTE: Analogous to SWR above, building Clover is quite slow.
|
||||
- LABEL="make Gallium ST Clover LLVM-5.0"
|
||||
- BUILD=make
|
||||
- MAKEFLAGS="-j4"
|
||||
- MAKE_CHECK_COMMAND="true"
|
||||
- LLVM_VERSION=5.0
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
- OVERRIDE_CC=gcc-4.8
|
||||
- OVERRIDE_CXX=g++-4.8
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS="r600,radeonsi"
|
||||
- VULKAN_DRIVERS=""
|
||||
- LIBUNWIND_FLAGS="--enable-libunwind"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-5.0
|
||||
packages:
|
||||
- libclc-dev
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
- g++-4.8
|
||||
# From sources above
|
||||
- llvm-5.0-dev
|
||||
- clang-5.0
|
||||
- libclang-5.0-dev
|
||||
- llvm-3.6-dev
|
||||
- clang-3.6
|
||||
- libclang-3.6-dev
|
||||
# Common
|
||||
- xz-utils
|
||||
- x11proto-xf86vidmode-dev
|
||||
@@ -273,7 +160,7 @@ matrix:
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --enable-xa --enable-nine --enable-xvmc --enable-vdpau --enable-va --enable-omx-bellagio --enable-gallium-osmesa"
|
||||
- GALLIUM_ST="--enable-dri --disable-opencl --enable-xa --enable-nine --enable-xvmc --enable-vdpau --enable-va --enable-omx --enable-gallium-osmesa"
|
||||
# We need swrast for osmesa and nine.
|
||||
# i915 most likely doesn't work with most ST.
|
||||
# Regardless - we're doing a quick build test here.
|
||||
@@ -307,11 +194,9 @@ matrix:
|
||||
- MAKE_CHECK_COMMAND="make -C src/gtest check && make -C src/intel check"
|
||||
- LLVM_VERSION=3.9
|
||||
- LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
|
||||
# New binutils linker is required for llvm-3.9
|
||||
- OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
|
||||
- DRI_LOADERS="--disable-glx --disable-gbm --disable-egl --with-platforms=x11,wayland"
|
||||
- DRI_DRIVERS=""
|
||||
- GALLIUM_ST="--enable-dri --enable-dri3 --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
|
||||
- GALLIUM_ST="--enable-dri --enable-dri3 --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx --disable-gallium-osmesa"
|
||||
- GALLIUM_DRIVERS=""
|
||||
- VULKAN_DRIVERS="intel,radeon"
|
||||
- LIBUNWIND_FLAGS="--disable-libunwind"
|
||||
@@ -320,7 +205,6 @@ matrix:
|
||||
sources:
|
||||
- llvm-toolchain-trusty-3.9
|
||||
packages:
|
||||
- binutils-2.26
|
||||
# LLVM packaging is broken and misses these dependencies
|
||||
- libedit-dev
|
||||
# From sources above
|
||||
@@ -398,46 +282,9 @@ matrix:
|
||||
- libexpat1-dev
|
||||
- libx11-xcb-dev
|
||||
- libelf-dev
|
||||
- env:
|
||||
- LABEL="macOS make"
|
||||
- BUILD=make
|
||||
- MAKEFLAGS="-j4"
|
||||
- MAKE_CHECK_COMMAND="make check"
|
||||
- DRI_LOADERS="--with-platforms=x11 --disable-egl"
|
||||
os: osx
|
||||
|
||||
before_install:
|
||||
- |
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 brew install python3 ninja expat gettext
|
||||
# Set PATH for homebrew pip3 installs
|
||||
PATH="$HOME/Library/Python/3.6/bin:${PATH}"
|
||||
# Set PKG_CONFIG_PATH for keg-only expat
|
||||
PKG_CONFIG_PATH="/usr/local/opt/expat/lib/pkgconfig:${PKG_CONFIG_PATH}"
|
||||
# Set PATH for keg-only gettext
|
||||
PATH="/usr/local/opt/gettext/bin:${PATH}"
|
||||
|
||||
# Install xquartz for prereqs ...
|
||||
XQUARTZ_VERSION="2.7.11"
|
||||
wget -nv https://dl.bintray.com/xquartz/downloads/XQuartz-${XQUARTZ_VERSION}.dmg
|
||||
hdiutil attach XQuartz-${XQUARTZ_VERSION}.dmg
|
||||
sudo installer -pkg /Volumes/XQuartz-${XQUARTZ_VERSION}/XQuartz.pkg -target /
|
||||
hdiutil detach /Volumes/XQuartz-${XQUARTZ_VERSION}
|
||||
# ... and set paths
|
||||
PATH="/opt/X11/bin:${PATH}"
|
||||
PKG_CONFIG_PATH="/opt/X11/share/pkgconfig:/opt/X11/lib/pkgconfig:${PKG_CONFIG_PATH}"
|
||||
ACLOCAL="aclocal -I /opt/X11/share/aclocal -I /usr/local/share/aclocal"
|
||||
fi
|
||||
|
||||
install:
|
||||
- pip2 install --user mako
|
||||
|
||||
# Install a more modern meson from pip, since the version in the
|
||||
# ubuntu repos is often quite old. Avoid >=0.45.0 as it needs python
|
||||
# 3.5+
|
||||
- if test "x$BUILD" = xmeson; then
|
||||
pip3 install --user "meson<0.45.0";
|
||||
fi
|
||||
- pip install --user mako
|
||||
|
||||
# Since libdrm gets updated in configure.ac regularly, try to pick up the
|
||||
# latest version from there.
|
||||
@@ -452,64 +299,70 @@ install:
|
||||
# Install dependencies where we require specific versions (or where
|
||||
# disallowed by Travis CI's package whitelisting).
|
||||
|
||||
- |
|
||||
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
||||
wget $XORG_RELEASES/util/$XORGMACROS_VERSION.tar.bz2
|
||||
tar -jxvf $XORGMACROS_VERSION.tar.bz2
|
||||
(cd $XORGMACROS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XORG_RELEASES/util/$XORGMACROS_VERSION.tar.bz2
|
||||
- tar -jxvf $XORGMACROS_VERSION.tar.bz2
|
||||
- (cd $XORGMACROS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget $XORG_RELEASES/proto/$GLPROTO_VERSION.tar.bz2
|
||||
tar -jxvf $GLPROTO_VERSION.tar.bz2
|
||||
(cd $GLPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XORG_RELEASES/proto/$GLPROTO_VERSION.tar.bz2
|
||||
- tar -jxvf $GLPROTO_VERSION.tar.bz2
|
||||
- (cd $GLPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget $XORG_RELEASES/proto/$DRI2PROTO_VERSION.tar.bz2
|
||||
tar -jxvf $DRI2PROTO_VERSION.tar.bz2
|
||||
(cd $DRI2PROTO_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XORG_RELEASES/proto/$DRI2PROTO_VERSION.tar.bz2
|
||||
- tar -jxvf $DRI2PROTO_VERSION.tar.bz2
|
||||
- (cd $DRI2PROTO_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget $XCB_RELEASES/$XCBPROTO_VERSION.tar.bz2
|
||||
tar -jxvf $XCBPROTO_VERSION.tar.bz2
|
||||
(cd $XCBPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XCB_RELEASES/$XCBPROTO_VERSION.tar.bz2
|
||||
- tar -jxvf $XCBPROTO_VERSION.tar.bz2
|
||||
- (cd $XCBPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget $XCB_RELEASES/$LIBXCB_VERSION.tar.bz2
|
||||
tar -jxvf $LIBXCB_VERSION.tar.bz2
|
||||
(cd $LIBXCB_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XCB_RELEASES/$LIBXCB_VERSION.tar.bz2
|
||||
- tar -jxvf $LIBXCB_VERSION.tar.bz2
|
||||
- (cd $LIBXCB_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget $XORG_RELEASES/lib/$LIBPCIACCESS_VERSION.tar.bz2
|
||||
tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2
|
||||
(cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XORG_RELEASES/lib/$LIBPCIACCESS_VERSION.tar.bz2
|
||||
- tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2
|
||||
- (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget http://dri.freedesktop.org/libdrm/$LIBDRM_VERSION.tar.bz2
|
||||
tar -jxvf $LIBDRM_VERSION.tar.bz2
|
||||
(cd $LIBDRM_VERSION && ./configure --prefix=$HOME/prefix --enable-vc4 --enable-freedreno --enable-etnaviv-experimental-api && make install)
|
||||
- wget http://dri.freedesktop.org/libdrm/$LIBDRM_VERSION.tar.bz2
|
||||
- tar -jxvf $LIBDRM_VERSION.tar.bz2
|
||||
- (cd $LIBDRM_VERSION && ./configure --prefix=$HOME/prefix --enable-vc4 --enable-freedreno --enable-etnaviv-experimental-api && make install)
|
||||
|
||||
wget $XORG_RELEASES/lib/$LIBXSHMFENCE_VERSION.tar.bz2
|
||||
tar -jxvf $LIBXSHMFENCE_VERSION.tar.bz2
|
||||
(cd $LIBXSHMFENCE_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $XORG_RELEASES/lib/$LIBXSHMFENCE_VERSION.tar.bz2
|
||||
- tar -jxvf $LIBXSHMFENCE_VERSION.tar.bz2
|
||||
- (cd $LIBXSHMFENCE_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget http://people.freedesktop.org/~aplattner/vdpau/$LIBVDPAU_VERSION.tar.bz2
|
||||
tar -jxvf $LIBVDPAU_VERSION.tar.bz2
|
||||
(cd $LIBVDPAU_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
# libtxc-dxtn uses the patented S3 Texture Compression
|
||||
# algorithm. Therefore, we don't want to use this library but it is
|
||||
# still possible through setting the USE_TXC_DXTN variable to yes in
|
||||
# the travis web UI.
|
||||
#
|
||||
# According to Wikipedia, the patent expires on October 2, 2017:
|
||||
# https://en.wikipedia.org/wiki/S3_Texture_Compression#Patent
|
||||
- if test "x$USE_TXC_DXTN" = xyes; then
|
||||
wget https://people.freedesktop.org/~cbrill/libtxc_dxtn/$LIBTXC_DXTN_VERSION.tar.bz2;
|
||||
tar -jxvf $LIBTXC_DXTN_VERSION.tar.bz2;
|
||||
(cd $LIBTXC_DXTN_VERSION && ./configure --prefix=$HOME/prefix && make install);
|
||||
fi
|
||||
|
||||
wget http://www.freedesktop.org/software/vaapi/releases/libva/$LIBVA_VERSION.tar.bz2
|
||||
tar -jxvf $LIBVA_VERSION.tar.bz2
|
||||
(cd $LIBVA_VERSION && ./configure --prefix=$HOME/prefix --disable-wayland --disable-dummy-driver && make install)
|
||||
- wget http://people.freedesktop.org/~aplattner/vdpau/$LIBVDPAU_VERSION.tar.bz2
|
||||
- tar -jxvf $LIBVDPAU_VERSION.tar.bz2
|
||||
- (cd $LIBVDPAU_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
wget $WAYLAND_RELEASES/$LIBWAYLAND_VERSION.tar.xz
|
||||
tar -axvf $LIBWAYLAND_VERSION.tar.xz
|
||||
(cd $LIBWAYLAND_VERSION && ./configure --prefix=$HOME/prefix --enable-libraries --without-host-scanner --disable-documentation --disable-dtd-validation && make install)
|
||||
- wget http://www.freedesktop.org/software/vaapi/releases/libva/$LIBVA_VERSION.tar.bz2
|
||||
- tar -jxvf $LIBVA_VERSION.tar.bz2
|
||||
- (cd $LIBVA_VERSION && ./configure --prefix=$HOME/prefix --disable-wayland --disable-dummy-driver && make install)
|
||||
|
||||
wget $WAYLAND_RELEASES/$WAYLAND_PROTOCOLS_VERSION.tar.xz
|
||||
tar -axvf $WAYLAND_PROTOCOLS_VERSION.tar.xz
|
||||
(cd $WAYLAND_PROTOCOLS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- wget $WAYLAND_RELEASES/$LIBWAYLAND_VERSION.tar.xz
|
||||
- tar -axvf $LIBWAYLAND_VERSION.tar.xz
|
||||
- (cd $LIBWAYLAND_VERSION && ./configure --prefix=$HOME/prefix --enable-libraries --without-host-scanner --disable-documentation --disable-dtd-validation && make install)
|
||||
|
||||
# Meson requires ninja >= 1.6, but trusty has 1.3.x
|
||||
wget https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-linux.zip
|
||||
unzip ninja-linux.zip
|
||||
mv ninja $HOME/prefix/bin/
|
||||
- wget $WAYLAND_RELEASES/$WAYLAND_PROTOCOLS_VERSION.tar.xz
|
||||
- tar -axvf $WAYLAND_PROTOCOLS_VERSION.tar.xz
|
||||
- (cd $WAYLAND_PROTOCOLS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
|
||||
# Generate this header since one is missing on the Travis instance
|
||||
mkdir -p linux
|
||||
printf "%s\n" \
|
||||
# Generate the header since one is missing on the Travis instance
|
||||
- mkdir -p linux
|
||||
- printf "%s\n" \
|
||||
"#ifndef _LINUX_MEMFD_H" \
|
||||
"#define _LINUX_MEMFD_H" \
|
||||
"" \
|
||||
@@ -520,15 +373,12 @@ install:
|
||||
"#define MFD_ALLOW_SEALING 0x0002U" \
|
||||
"" \
|
||||
"#endif /* _LINUX_MEMFD_H */" > linux/memfd.h
|
||||
fi
|
||||
|
||||
script:
|
||||
- if test "x$BUILD" = xmake; then
|
||||
test -n "$OVERRIDE_CC" && export CC="$OVERRIDE_CC";
|
||||
test -n "$OVERRIDE_CXX" && export CXX="$OVERRIDE_CXX";
|
||||
test -n "$OVERRIDE_PATH" && export PATH="$OVERRIDE_PATH:$PATH";
|
||||
|
||||
export CFLAGS="$CFLAGS -isystem`pwd`";
|
||||
export CC="$CC -isystem`pwd`";
|
||||
|
||||
./autogen.sh --enable-debug
|
||||
$LIBUNWIND_FLAGS
|
||||
@@ -547,29 +397,3 @@ script:
|
||||
test -n "$OVERRIDE_CXX" && export CXX="$OVERRIDE_CXX";
|
||||
scons $SCONS_TARGET && eval $SCONS_CHECK_COMMAND;
|
||||
fi
|
||||
|
||||
- |
|
||||
if test "x$BUILD" = xmeson; then
|
||||
|
||||
# Travis CI has moved to LLVM 5.0, and meson is detecting
|
||||
# automatically the available version in /usr/local/bin based on
|
||||
# the PATH env variable order preference.
|
||||
#
|
||||
# As for 0.44.x, Meson cannot receive the path to the
|
||||
# llvm-config binary as a configuration parameter. See
|
||||
# https://github.com/mesonbuild/meson/issues/2887 and
|
||||
# https://github.com/dcbaker/meson/commit/7c8b6ee3fa42f43c9ac7dcacc61a77eca3f1bcef
|
||||
#
|
||||
# We want to use the custom (APT) installed version. Therefore,
|
||||
# let's make Meson find our wanted version sooner than the one
|
||||
# at /usr/local/bin
|
||||
#
|
||||
# Once this is corrected, we would still need a patch similar
|
||||
# to:
|
||||
# https://lists.freedesktop.org/archives/mesa-dev/2017-December/180217.html
|
||||
test -f /usr/bin/$LLVM_CONFIG && ln -s /usr/bin/$LLVM_CONFIG $HOME/prefix/bin/llvm-config
|
||||
|
||||
export CFLAGS="$CFLAGS -isystem`pwd`"
|
||||
meson _build $MESON_OPTIONS
|
||||
ninja -C _build
|
||||
fi
|
||||
|
@@ -31,8 +31,8 @@ LOCAL_C_INCLUDES += \
|
||||
|
||||
MESA_VERSION := $(shell cat $(MESA_TOP)/VERSION)
|
||||
LOCAL_CFLAGS += \
|
||||
-Wno-error \
|
||||
-Wno-unused-parameter \
|
||||
-Wno-date-time \
|
||||
-Wno-pointer-arith \
|
||||
-Wno-missing-field-initializers \
|
||||
-Wno-initializer-overrides \
|
||||
@@ -57,9 +57,6 @@ LOCAL_CFLAGS += \
|
||||
-DHAVE_FUNC_ATTRIBUTE_FORMAT \
|
||||
-DHAVE_FUNC_ATTRIBUTE_PACKED \
|
||||
-DHAVE_FUNC_ATTRIBUTE_ALIAS \
|
||||
-DHAVE_FUNC_ATTRIBUTE_NORETURN \
|
||||
-DHAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL \
|
||||
-DHAVE_FUNC_ATTRIBUTE_WARN_UNUSED_RESULT \
|
||||
-DHAVE___BUILTIN_CTZ \
|
||||
-DHAVE___BUILTIN_POPCOUNT \
|
||||
-DHAVE___BUILTIN_POPCOUNTLL \
|
||||
@@ -67,11 +64,8 @@ LOCAL_CFLAGS += \
|
||||
-DHAVE___BUILTIN_CLZLL \
|
||||
-DHAVE___BUILTIN_UNREACHABLE \
|
||||
-DHAVE_PTHREAD=1 \
|
||||
-DHAVE_DLADDR \
|
||||
-DHAVE_DLOPEN \
|
||||
-DHAVE_DL_ITERATE_PHDR \
|
||||
-DHAVE_LINUX_FUTEX_H \
|
||||
-DHAVE_ENDIAN_H \
|
||||
-DHAVE_ZLIB \
|
||||
-DMAJOR_IN_SYSMACROS \
|
||||
-fvisibility=hidden \
|
||||
-Wno-sign-compare
|
||||
@@ -104,9 +98,8 @@ LOCAL_CFLAGS += -DHAVE_LIBDRM
|
||||
LOCAL_SHARED_LIBRARIES += libdrm
|
||||
endif
|
||||
|
||||
LOCAL_CFLAGS_32 += -DDEFAULT_DRIVER_DIR=\"/vendor/lib/$(MESA_DRI_MODULE_REL_PATH)\"
|
||||
LOCAL_CFLAGS_64 += -DDEFAULT_DRIVER_DIR=\"/vendor/lib64/$(MESA_DRI_MODULE_REL_PATH)\"
|
||||
LOCAL_PROPRIETARY_MODULE := true
|
||||
LOCAL_CFLAGS_32 += -DDEFAULT_DRIVER_DIR=\"/system/lib/$(MESA_DRI_MODULE_REL_PATH)\"
|
||||
LOCAL_CFLAGS_64 += -DDEFAULT_DRIVER_DIR=\"/system/lib64/$(MESA_DRI_MODULE_REL_PATH)\"
|
||||
|
||||
# uncomment to keep the debug symbols
|
||||
#LOCAL_STRIP_MODULE := false
|
||||
|
@@ -39,7 +39,6 @@ endif
|
||||
MESA_DRI_MODULE_REL_PATH := dri
|
||||
MESA_DRI_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/$(MESA_DRI_MODULE_REL_PATH)
|
||||
MESA_DRI_MODULE_UNSTRIPPED_PATH := $(TARGET_OUT_SHARED_LIBRARIES_UNSTRIPPED)/$(MESA_DRI_MODULE_REL_PATH)
|
||||
MESA_DRI_LDFLAGS := -Wl,--build-id=sha1
|
||||
|
||||
MESA_COMMON_MK := $(MESA_TOP)/Android.common.mk
|
||||
MESA_PYTHON2 := python
|
||||
@@ -76,10 +75,6 @@ $(foreach d, $(BOARD_GPU_DRIVERS), \
|
||||
MESA_BUILD_CLASSIC := $(strip $(foreach d, $(BOARD_GPU_DRIVERS), $(patsubst $(d).%,%, $(filter $(d).%, $(classic_drivers)))))
|
||||
MESA_BUILD_GALLIUM := $(strip $(foreach d, $(BOARD_GPU_DRIVERS), $(patsubst $(d).%,%, $(filter $(d).%, $(gallium_drivers)))))
|
||||
endif
|
||||
ifeq ($(filter x86%,$(TARGET_ARCH)),)
|
||||
MESA_BUILD_CLASSIC :=
|
||||
endif
|
||||
|
||||
$(foreach d, $(MESA_BUILD_CLASSIC) $(MESA_BUILD_GALLIUM), $(eval $(d) := true))
|
||||
|
||||
# host and target must be the same arch to generate matypes.h
|
||||
@@ -100,9 +95,7 @@ define mesa-build-with-llvm
|
||||
$(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0307 -DMESA_LLVM_VERSION_PATCH=0)) \
|
||||
$(if $(filter 7,$(MESA_ANDROID_MAJOR_VERSION)), \
|
||||
$(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0308 -DMESA_LLVM_VERSION_PATCH=0)) \
|
||||
$(if $(filter 8,$(MESA_ANDROID_MAJOR_VERSION)), \
|
||||
$(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0309 -DMESA_LLVM_VERSION_PATCH=0)) \
|
||||
$(if $(filter P,$(MESA_ANDROID_MAJOR_VERSION)), \
|
||||
$(if $(filter O,$(MESA_ANDROID_MAJOR_VERSION)), \
|
||||
$(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0309 -DMESA_LLVM_VERSION_PATCH=0)) \
|
||||
$(eval LOCAL_SHARED_LIBRARIES += libLLVM)
|
||||
endef
|
||||
|
13
Makefile.am
13
Makefile.am
@@ -35,7 +35,6 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \
|
||||
--enable-glx-tls \
|
||||
--enable-nine \
|
||||
--enable-opencl \
|
||||
--enable-opencl-icd \
|
||||
--enable-opengl \
|
||||
--enable-va \
|
||||
--enable-vdpau \
|
||||
@@ -55,17 +54,9 @@ EXTRA_DIST = \
|
||||
common.py \
|
||||
docs \
|
||||
doxygen \
|
||||
bin/git_sha1_gen.py \
|
||||
bin/git_sha1_gen.sh \
|
||||
scons \
|
||||
SConstruct \
|
||||
build-support/conftest.dyn \
|
||||
build-support/conftest.map \
|
||||
meson.build \
|
||||
meson_options.txt \
|
||||
bin/meson.build \
|
||||
include/meson.build \
|
||||
bin/install_megadrivers.py \
|
||||
bin/meson_get_version.py
|
||||
SConstruct
|
||||
|
||||
noinst_HEADERS = \
|
||||
include/c99_alloca.h \
|
||||
|
15
REVIEWERS
15
REVIEWERS
@@ -74,15 +74,6 @@ EGL
|
||||
R: Eric Engestrom <eric@engestrom.ch>
|
||||
F: src/egl/
|
||||
|
||||
HAIKU
|
||||
R: Alexander von Gluck IV <kallisti5@unixzen.com>
|
||||
F: include/HaikuGL/
|
||||
F: src/egl/drivers/haiku/
|
||||
F: src/gallium/state_trackers/hgl/
|
||||
F: src/gallium/targets/haiku-softpipe/
|
||||
F: src/gallium/winsys/sw/hgl/
|
||||
F: src/hgl/
|
||||
|
||||
GALLIUM LOADER
|
||||
R: Emil Velikov <emil.l.velikov@gmail.com>
|
||||
F: src/gallium/auxiliary/pipe-loader/
|
||||
@@ -112,12 +103,6 @@ F: CleanSpec.mk
|
||||
F: */Android.*mk
|
||||
F: */Makefile.sources
|
||||
|
||||
MESON BUILD
|
||||
R: Dylan Baker <dylan@pnwbakers.com>
|
||||
R: Eric Engestrom <eric@engestrom.ch>
|
||||
F: */meson.build
|
||||
F: meson_options.txt
|
||||
|
||||
ANDROID EGL SUPPORT
|
||||
R: Rob Herring <robh@kernel.org>
|
||||
R: Tomasz Figa <tfiga@chromium.org>
|
||||
|
@@ -152,7 +152,8 @@ try:
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
aliases = sorted(default_ans.keys())
|
||||
aliases = default_ans.keys()
|
||||
aliases.sort()
|
||||
env.Help('\n')
|
||||
env.Help('Recognized targets:\n')
|
||||
for alias in aliases:
|
||||
|
@@ -1,23 +1,86 @@
|
||||
# fixes: The following commits were applied without the "cherry-picked from" tag
|
||||
50265cd9ee4caffee853700bdcd75b92eedc0e7b automake: anv: ship anv_extensions_gen.py in the tarball
|
||||
ac4437b20b87c7285b89466f05b51518ae616873 automake: small cleanup after the meson.build inclusion
|
||||
# fixes: The commits are too invasive for stable. Instead the offending patches
|
||||
# causing regressions have been reverted.
|
||||
365d34540f331df57780dddf8da87235be0a6bcb mesa: correctly calculate the storage offset for i915
|
||||
de0e62e1065e2d9172acf3ab7c70bba0160125c8 st/mesa: correctly calculate the storage offset
|
||||
|
||||
# stable: The KHX extension is disabled all together in the stable branches.
|
||||
2ffe395cba0f7b3c1f1c41062f4376eae3a188b5 radv: Don't expose VK_KHX_multiview on android.
|
||||
# stable: Add loader::getCapability patches. It's rather invasive infra
|
||||
# not suitable as a bugfix.
|
||||
1bf703e4ea5c4f742bc7ba55d01e5afc3f4e11f9 dri_interface,egl,gallium: only expose RGBA visuals on Android
|
||||
be5773fa8dfe9255d9abaf5c7d5bbbd2d922da08 Android: fix compile error for DRI2 loader getCapability
|
||||
31a6750988d7dd431f72ff1ff11bfca83bde5d8c st/dri: NULL check before deref DRI loader .getCapability
|
||||
|
||||
# stable: There is a specific version for this patch for stable branches, but
|
||||
# it is causing regressions.
|
||||
85d0bec9616bc1ffa8e4ab5e7c5d12ff4e414872 anv: Be more careful about fast-clear colors
|
||||
# stable: The commit addresses code that did not land in the stable branch
|
||||
31bb8517a194af733deefe2d821537d994d39365 radv/gfx9: fix tile swizzle handling for gfx9
|
||||
|
||||
# fixes: The commit fixes earlier commit 1c57a6da5e3 which did not land in
|
||||
# branch.
|
||||
3401b028df1074a06a7fbc3fb1cda949646ef75d ac/shader: fix vertex input with components.
|
||||
# stable: Commit is not applicable when 4fab67a4415 is missing.
|
||||
d496780fb2c7f2cf0e32b6a79dc528e5156dfcb3 intel/eu/validate: Look up types on demand in execution_type()
|
||||
|
||||
# fixes: The commit requires earlier commits 639c4f2b54a6 and 2cfba40eea4c
|
||||
# which did not land in branch.
|
||||
8f052a3e257a61240cb311032497d016278117a8 radv: handle exporting view index to fragment shader. (v1.1)
|
||||
# fixes: Depend on preseding commit which adds new public GBM API
|
||||
3a5e3aa5a53cff55a5e31766d713a41ffa5a93d7 egl/drm: Fix misused x and y offsets in swrast_put_image2()
|
||||
fe2a6281b3b299998fe7399e7dbcc2077d773824 egl/drm: Fix misused x and y offsets in swrast_get_image()
|
||||
|
||||
# fixes: The commit fixes earlier commits 83d4a5d5aea5a8a05be2,
|
||||
# b2f2236dc565dd1460f0 and c62cf1f165919bc74296 which did not land in
|
||||
# branch.
|
||||
880c1718b6d14b33fe5ba918af70fea5be890c6b omx: always define ENABLE_ST_OMX_{BELLAGIO,TIZONIA}
|
||||
# fixes: This commit addressed an earlier commit c7e9ebb3ab8 which did not
|
||||
# land in branch
|
||||
45c5c444518b7e83d9accd9f44702fa49282a3b8 radeonsi/gfx9: proper workaround for LS/HS VGPR initialization bug
|
||||
|
||||
# fixes: This commit addressed earlier commits 61ad2f13 and 6dcc54b4 which did
|
||||
# not land in branch
|
||||
979978ee06867a531b8d56cee252f5c83920a339 radv: Check for GFX9 for 1D arrays in image_size intrinsic.
|
||||
|
||||
# fixes: This commit addressed earlier commits dcf46e99 and 60878dd0 which did
|
||||
# not land in branch
|
||||
8e9e339c530c7b82b5a29d4b3183e8f5a01eae28 radv: copy the number of viewports/scissors at pipeline bind time
|
||||
|
||||
# stable: The commit regresses a few dEQP tests. Namely:
|
||||
# dEQP-VK.api.copy_and_blit.core.buffer_to_buffer.partial
|
||||
# dEQP-VK.api.copy_and_blit.dedicated_allocation.buffer_to_buffer.partial
|
||||
14555d0b7a51bd3701764fd213c2459410143431 anv: Remove unreachable cases from isl_format_for_size()
|
||||
|
||||
# stable: The commit addresses earlier commit a62a9793357 which is no applicable
|
||||
# for the stable branch
|
||||
6c7720ed78db754d52f204cbb74897aa9e65ea7e anv/wsi: Allocate enough memory for the entire image
|
||||
|
||||
# stable: Commits are too invasive for 17.2.
|
||||
98fdff7247b6877d028d33284f9cc63189ee204e configure.ac: factor out detection for old and buggy llvm
|
||||
13a53c4f5cdd664fd155c9e78fb46a4387af006c configure.ac: rework llvm libs handling for 3.9+
|
||||
a7ecf7b86f4eae59f3ceac2125e5d1725c403c07 Travis: add binutils 2.26 for a few more LLVM 3.9 builds
|
||||
36d6d1e931936a80da327889862ba02942ac427b configure.ac: add llvm_add_optional_component helper
|
||||
df3a43018020c16c1dfa88a76c9a84c9fb85be38 configure.ac: add missing LLVM components for OpenCL
|
||||
|
||||
# stable: Commit is too big for stable at this point.
|
||||
4d24a7cb97641cacecd371d1968f6964785822e4 glsl: fix derived cs variables
|
||||
|
||||
# stable: 17.3 nomination only.
|
||||
fee9d05e2136b2b7c5a1ad2be7180b99f733f539 radv: Update code pointer correctly if a variant is already created
|
||||
|
||||
# stable: 17.3 nomination only.
|
||||
d8cefaa197f02944812ef535b1b303dd5bf26848 radv: use device name in cache creation like radeonsi.
|
||||
|
||||
# fixes: This commit addressed earlier commit 35ac13ed3 which did not
|
||||
# land in branch.
|
||||
11d688d9f0d2ee4d0178d1807c0075e5e8364b1d mesa/bufferobj: don't double negate the range
|
||||
|
||||
# extra: Commit is not applicable when ade416d0236 is missing.
|
||||
07bfdb478bf844a0ac9cf3679f51f83c4abea5a1 broadcom/vc5: Propagate vc4 aliasing fix to vc5.
|
||||
|
||||
# stable: This commit addressed earlier commit 8d90e28839 which did
|
||||
# not land in branch.
|
||||
446c5726ecb968d06a6607e0df42be1cb74948c4 i965: fix blorp stage_prog_data->param leak
|
||||
|
||||
# stable: This commit addressed earlier commit 78ade659569 which did
|
||||
# not land in branch.
|
||||
8fbd82f464f26a56167f7962174b2b69756a105a etnaviv: don't do resolve-in-place without valid TS
|
||||
|
||||
# stable: This commit addressed earlier commit 8d90e28839 which did
|
||||
# not land in branch.
|
||||
7b4387519c382cffef9c62bbbbefcfe71cfde905 intel/fs: Alloc pull constants off mem_ctx
|
||||
|
||||
# stable: 17.3 nomination only.
|
||||
3f8e3c2bd8f54ae6817f7496be47f4e1a8860d9c radeonsi: add a workaround for weird s_buffer_load_dword behavior on SI
|
||||
|
||||
# stable: 17.3 nomination only.
|
||||
7dae419aa7c34af820c08896acef3b65d855188e Android: move drivers' symlinks to /vendor (v2)
|
||||
|
||||
# fixes: This commit has more than one Fixes tag but the commit it
|
||||
# addresses didn't land in branch.
|
||||
e17e8934f9e4b008bdfb4f9abd8ed4faa604c7d9 automake: include git_sha1.h.in in release tarball
|
||||
|
@@ -1,49 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
"""
|
||||
Generate the contents of the git_sha1.h file.
|
||||
The output of this script goes to stdout.
|
||||
"""
|
||||
|
||||
|
||||
import argparse
|
||||
import os
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
|
||||
def get_git_sha1():
|
||||
"""Try to get the git SHA1 with git rev-parse."""
|
||||
git_dir = os.path.join(os.path.dirname(sys.argv[0]), '..', '.git')
|
||||
try:
|
||||
git_sha1 = subprocess.check_output([
|
||||
'git',
|
||||
'--git-dir=' + git_dir,
|
||||
'rev-parse',
|
||||
'HEAD',
|
||||
], stderr=open(os.devnull, 'w')).decode("ascii")
|
||||
except:
|
||||
# don't print anything if it fails
|
||||
git_sha1 = ''
|
||||
return git_sha1
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--output', help='File to write the #define in',
|
||||
required=True)
|
||||
args = parser.parse_args()
|
||||
|
||||
git_sha1 = os.environ.get('MESA_GIT_SHA1_OVERRIDE', get_git_sha1())[:10]
|
||||
if git_sha1:
|
||||
git_sha1_h_in_path = os.path.join(os.path.dirname(sys.argv[0]),
|
||||
'..', 'src', 'git_sha1.h.in')
|
||||
with open(git_sha1_h_in_path , 'r') as git_sha1_h_in:
|
||||
new_sha1 = git_sha1_h_in.read().replace('@VCS_TAG@', git_sha1)
|
||||
if os.path.isfile(args.output):
|
||||
with open(args.output, 'r') as git_sha1_h:
|
||||
if git_sha1_h.read() == new_sha1:
|
||||
quit()
|
||||
with open(args.output, 'w') as git_sha1_h:
|
||||
git_sha1_h.write(new_sha1)
|
||||
else:
|
||||
open(args.output, 'w').close()
|
12
bin/git_sha1_gen.sh
Executable file
12
bin/git_sha1_gen.sh
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
# run git from the sources directory
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
# don't print anything if git fails
|
||||
if ! git_sha1=$(git --git-dir=../.git rev-parse --short=10 HEAD 2>/dev/null)
|
||||
then
|
||||
exit
|
||||
fi
|
||||
|
||||
printf '#define MESA_GIT_SHA1 "git-%s"\n' "$git_sha1"
|
@@ -1,69 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# encoding=utf-8
|
||||
# Copyright © 2017 Intel Corporation
|
||||
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
"""Script to install megadriver symlinks for meson."""
|
||||
|
||||
from __future__ import print_function
|
||||
import argparse
|
||||
import os
|
||||
import shutil
|
||||
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('megadriver')
|
||||
parser.add_argument('libdir')
|
||||
parser.add_argument('drivers', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
to = os.path.join(os.environ.get('MESON_INSTALL_DESTDIR_PREFIX'), args.libdir)
|
||||
master = os.path.join(to, os.path.basename(args.megadriver))
|
||||
|
||||
if not os.path.exists(to):
|
||||
os.makedirs(to)
|
||||
shutil.copy(args.megadriver, master)
|
||||
|
||||
for each in args.drivers:
|
||||
driver = os.path.join(to, each)
|
||||
|
||||
if os.path.exists(driver):
|
||||
os.unlink(driver)
|
||||
print('installing {} to {}'.format(args.megadriver, driver))
|
||||
os.link(master, driver)
|
||||
|
||||
try:
|
||||
ret = os.getcwd()
|
||||
os.chdir(to)
|
||||
|
||||
name, ext = os.path.splitext(each)
|
||||
while ext != '.so':
|
||||
if os.path.exists(name):
|
||||
os.unlink(name)
|
||||
os.symlink(each, name)
|
||||
name, ext = os.path.splitext(name)
|
||||
finally:
|
||||
os.chdir(ret)
|
||||
os.unlink(master)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
@@ -1,21 +0,0 @@
|
||||
# Copyright © 2017 Eric Engestrom
|
||||
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
git_sha1_gen_py = files('git_sha1_gen.py')
|
@@ -1,35 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# encoding=utf-8
|
||||
# Copyright © 2017 Intel Corporation
|
||||
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
from __future__ import print_function
|
||||
import os
|
||||
|
||||
|
||||
def main():
|
||||
filename = os.path.join(os.environ['MESON_SOURCE_ROOT'], 'VERSION')
|
||||
with open(filename) as f:
|
||||
version = f.read().strip()
|
||||
print(version, end='')
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
@@ -1,3 +0,0 @@
|
||||
{
|
||||
radeon_drm_winsys_create;
|
||||
};
|
@@ -1,6 +0,0 @@
|
||||
VERSION_1 {
|
||||
global:
|
||||
main;
|
||||
local:
|
||||
*;
|
||||
};
|
520
configure.ac
520
configure.ac
@@ -74,11 +74,11 @@ AC_SUBST([OPENCL_VERSION])
|
||||
# in the first entry.
|
||||
LIBDRM_REQUIRED=2.4.75
|
||||
LIBDRM_RADEON_REQUIRED=2.4.71
|
||||
LIBDRM_AMDGPU_REQUIRED=2.4.89
|
||||
LIBDRM_AMDGPU_REQUIRED=2.4.82
|
||||
LIBDRM_INTEL_REQUIRED=2.4.75
|
||||
LIBDRM_NVVIEUX_REQUIRED=2.4.66
|
||||
LIBDRM_NOUVEAU_REQUIRED=2.4.66
|
||||
LIBDRM_FREEDRENO_REQUIRED=2.4.89
|
||||
LIBDRM_FREEDRENO_REQUIRED=2.4.74
|
||||
LIBDRM_ETNAVIV_REQUIRED=2.4.82
|
||||
|
||||
dnl Versions for external dependencies
|
||||
@@ -101,7 +101,7 @@ ZLIB_REQUIRED=1.2.3
|
||||
|
||||
dnl LLVM versions
|
||||
LLVM_REQUIRED_GALLIUM=3.3.0
|
||||
LLVM_REQUIRED_OPENCL=3.9.0
|
||||
LLVM_REQUIRED_OPENCL=3.6.0
|
||||
LLVM_REQUIRED_R600=3.9.0
|
||||
LLVM_REQUIRED_RADEONSI=3.9.0
|
||||
LLVM_REQUIRED_RADV=3.9.0
|
||||
@@ -111,10 +111,6 @@ dnl Check for progs
|
||||
AC_PROG_CPP
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
dnl add this here, so the help for this environmnet variable is close to
|
||||
dnl other CC/CXX flags related help
|
||||
AC_ARG_VAR([CXX11_CXXFLAGS], [Compiler flag to enable C++11 support (only needed if not
|
||||
enabled by default and different from -std=c++11)])
|
||||
AM_PROG_CC_C_O
|
||||
AM_PROG_AS
|
||||
AX_CHECK_GNU_MAKE
|
||||
@@ -124,7 +120,6 @@ AC_PROG_MKDIR_P
|
||||
|
||||
AC_SYS_LARGEFILE
|
||||
|
||||
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([disable-static])
|
||||
|
||||
@@ -250,7 +245,6 @@ AX_GCC_FUNC_ATTRIBUTE([visibility])
|
||||
AX_GCC_FUNC_ATTRIBUTE([warn_unused_result])
|
||||
AX_GCC_FUNC_ATTRIBUTE([weak])
|
||||
AX_GCC_FUNC_ATTRIBUTE([alias])
|
||||
AX_GCC_FUNC_ATTRIBUTE([noreturn])
|
||||
|
||||
AM_CONDITIONAL([GEN_ASM_OFFSETS], test "x$GEN_ASM_OFFSETS" = xyes)
|
||||
|
||||
@@ -288,100 +282,85 @@ esac
|
||||
|
||||
AM_CONDITIONAL(HAVE_ANDROID, test "x$android" = xyes)
|
||||
|
||||
dnl
|
||||
dnl Check compiler flags
|
||||
dnl
|
||||
AX_CHECK_COMPILE_FLAG([-Wall], [CFLAGS="$CFLAGS -Wall"])
|
||||
AX_CHECK_COMPILE_FLAG([-Werror=implicit-function-declaration], [CFLAGS="$CFLAGS -Werror=implicit-function-declaration"])
|
||||
AX_CHECK_COMPILE_FLAG([-Werror=missing-prototypes], [CFLAGS="$CFLAGS -Werror=missing-prototypes"])
|
||||
AX_CHECK_COMPILE_FLAG([-Wmissing-prototypes], [CFLAGS="$CFLAGS -Wmissing-prototypes"])
|
||||
AX_CHECK_COMPILE_FLAG([-fno-math-errno], [CFLAGS="$CFLAGS -fno-math-errno"])
|
||||
AX_CHECK_COMPILE_FLAG([-fno-trapping-math], [CFLAGS="$CFLAGS -fno-trapping-math"])
|
||||
AX_CHECK_COMPILE_FLAG([-fvisibility=hidden], [VISIBILITY_CFLAGS="-fvisibility=hidden"])
|
||||
|
||||
dnl
|
||||
dnl Check C++ compiler flags
|
||||
dnl
|
||||
AC_LANG_PUSH([C++])
|
||||
AX_CHECK_COMPILE_FLAG([-Wall], [CXXFLAGS="$CXXFLAGS -Wall"])
|
||||
AX_CHECK_COMPILE_FLAG([-fno-math-errno], [CXXFLAGS="$CXXFLAGS -fno-math-errno"])
|
||||
AX_CHECK_COMPILE_FLAG([-fno-trapping-math], [CXXFLAGS="$CXXFLAGS -fno-trapping-math"])
|
||||
AX_CHECK_COMPILE_FLAG([-fvisibility=hidden], [VISIBILITY_CXXFLAGS="-fvisibility=hidden"])
|
||||
AC_LANG_POP([C++])
|
||||
|
||||
# Flags to help ensure that certain portions of the code -- and only those
|
||||
# portions -- can be built with MSVC:
|
||||
# - src/util, src/gallium/auxiliary, rc/gallium/drivers/llvmpipe, and
|
||||
# - non-Linux/Posix OpenGL portions needs to build on MSVC 2013 (which
|
||||
# supports most of C99)
|
||||
# - the rest has no compiler compiler restrictions
|
||||
AX_CHECK_COMPILE_FLAG([-Werror=pointer-arith], [MSVC2013_COMPAT_CFLAGS="$MSVC2013_COMPAT_CFLAGS -Werror=pointer-arith"])
|
||||
AX_CHECK_COMPILE_FLAG([-Werror=vla], [MSVC2013_COMPAT_CFLAGS="$MSVC2013_COMPAT_CFLAGS -Werror=vla"])
|
||||
AC_LANG_PUSH([C++])
|
||||
AX_CHECK_COMPILE_FLAG([-Werror=pointer-arith], [MSVC2013_COMPAT_CXXFLAGS="$MSVC2013_COMPAT_CXXFLAGS -Werror=pointer-arith"])
|
||||
AX_CHECK_COMPILE_FLAG([-Werror=vla], [MSVC2013_COMPAT_CXXFLAGS="$MSVC2013_COMPAT_CXXFLAGS -Werror=vla"])
|
||||
AC_LANG_POP([C++])
|
||||
|
||||
AC_SUBST([MSVC2013_COMPAT_CFLAGS])
|
||||
AC_SUBST([MSVC2013_COMPAT_CXXFLAGS])
|
||||
|
||||
dnl Add flags for gcc and g++
|
||||
if test "x$GCC" = xyes; then
|
||||
CFLAGS="$CFLAGS -Wall"
|
||||
|
||||
if test "x$USE_GNU99" = xyes; then
|
||||
CFLAGS="$CFLAGS -std=gnu99"
|
||||
else
|
||||
CFLAGS="$CFLAGS -std=c99"
|
||||
fi
|
||||
|
||||
# Enable -Werror=implicit-function-declaration and
|
||||
# -Werror=missing-prototypes, if available, or otherwise, just
|
||||
# -Wmissing-prototypes. This is particularly useful to avoid
|
||||
# generating a loadable driver module that has undefined symbols.
|
||||
save_CFLAGS="$CFLAGS"
|
||||
AC_MSG_CHECKING([whether $CC supports -Werror=missing-prototypes])
|
||||
CFLAGS="$CFLAGS -Werror=implicit-function-declaration"
|
||||
CFLAGS="$CFLAGS -Werror=missing-prototypes"
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM()],
|
||||
AC_MSG_RESULT([yes]),
|
||||
[CFLAGS="$save_CFLAGS -Wmissing-prototypes";
|
||||
AC_MSG_RESULT([no])])
|
||||
|
||||
# Enable -fvisibility=hidden if using a gcc that supports it
|
||||
save_CFLAGS="$CFLAGS"
|
||||
AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
|
||||
VISIBILITY_CFLAGS="-fvisibility=hidden"
|
||||
CFLAGS="$CFLAGS $VISIBILITY_CFLAGS"
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
|
||||
[VISIBILITY_CFLAGS=""; AC_MSG_RESULT([no])])
|
||||
|
||||
# Restore CFLAGS; VISIBILITY_CFLAGS are added to it where needed.
|
||||
CFLAGS=$save_CFLAGS
|
||||
|
||||
# We don't want floating-point math functions to set errno or trap
|
||||
CFLAGS="$CFLAGS -fno-math-errno -fno-trapping-math"
|
||||
|
||||
# Flags to help ensure that certain portions of the code -- and only those
|
||||
# portions -- can be built with MSVC:
|
||||
# - src/util, src/gallium/auxiliary, rc/gallium/drivers/llvmpipe, and
|
||||
# - non-Linux/Posix OpenGL portions needs to build on MSVC 2013 (which
|
||||
# supports most of C99)
|
||||
# - the rest has no compiler compiler restrictions
|
||||
MSVC2013_COMPAT_CFLAGS="-Werror=pointer-arith"
|
||||
MSVC2013_COMPAT_CXXFLAGS="-Werror=pointer-arith"
|
||||
|
||||
# Enable -Werror=vla if compiler supports it
|
||||
save_CFLAGS="$CFLAGS"
|
||||
AC_MSG_CHECKING([whether $CC supports -Werror=vla])
|
||||
CFLAGS="$CFLAGS -Werror=vla"
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM()],
|
||||
[MSVC2013_COMPAT_CFLAGS="$MSVC2013_COMPAT_CFLAGS -Werror=vla";
|
||||
MSVC2013_COMPAT_CXXFLAGS="$MSVC2013_COMPAT_CXXFLAGS -Werror=vla";
|
||||
AC_MSG_RESULT([yes])],
|
||||
AC_MSG_RESULT([no]))
|
||||
CFLAGS="$save_CFLAGS"
|
||||
fi
|
||||
if test "x$GXX" = xyes; then
|
||||
CXXFLAGS="$CXXFLAGS -Wall"
|
||||
|
||||
# Enable -fvisibility=hidden if using a gcc that supports it
|
||||
save_CXXFLAGS="$CXXFLAGS"
|
||||
AC_MSG_CHECKING([whether $CXX supports -fvisibility=hidden])
|
||||
VISIBILITY_CXXFLAGS="-fvisibility=hidden"
|
||||
CXXFLAGS="$CXXFLAGS $VISIBILITY_CXXFLAGS"
|
||||
AC_LANG_PUSH([C++])
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
|
||||
[VISIBILITY_CXXFLAGS="" ; AC_MSG_RESULT([no])])
|
||||
AC_LANG_POP([C++])
|
||||
|
||||
# Restore CXXFLAGS; VISIBILITY_CXXFLAGS are added to it where needed.
|
||||
CXXFLAGS=$save_CXXFLAGS
|
||||
|
||||
# We don't want floating-point math functions to set errno or trap
|
||||
CXXFLAGS="$CXXFLAGS -fno-math-errno -fno-trapping-math"
|
||||
fi
|
||||
|
||||
dnl
|
||||
dnl Check whether C++11 is supported, if the environment variable
|
||||
dnl CXX11_CXXFLAGS is set it takes precedence.
|
||||
dnl
|
||||
|
||||
AC_LANG_PUSH([C++])
|
||||
|
||||
check_cxx11_available() {
|
||||
output_support=$1
|
||||
AC_COMPILE_IFELSE(
|
||||
[AC_LANG_PROGRAM([
|
||||
#if !(__cplusplus >= 201103L)
|
||||
#error
|
||||
#endif
|
||||
#include <tuple>
|
||||
])
|
||||
], [
|
||||
AC_MSG_RESULT(yes)
|
||||
cxx11_support=yes
|
||||
], AC_MSG_RESULT(no))
|
||||
eval "$output_support=\$cxx11_support"
|
||||
}
|
||||
|
||||
HAVE_CXX11=no
|
||||
save_CXXFLAGS="$CXXFLAGS"
|
||||
|
||||
dnl If the user provides a flag to enable c++11, then we test only this
|
||||
if test "x$CXX11_CXXFLAGS" != "x"; then
|
||||
CXXFLAGS="$CXXFLAGS $CXX11_CXXFLAGS"
|
||||
AC_MSG_CHECKING(whether c++11 is enabled by via $CXX11_CXXFLAGS)
|
||||
check_cxx11_available HAVE_CXX11
|
||||
else
|
||||
dnl test whether c++11 is enabled by default
|
||||
AC_MSG_CHECKING(whether c++11 is enabled by default)
|
||||
check_cxx11_available HAVE_CXX11
|
||||
|
||||
dnl C++11 not enabled by default, test whether -std=c++11 does the job
|
||||
if test "x$HAVE_CXX11" != "xyes"; then
|
||||
CXX11_CXXFLAGS=-std=c++11
|
||||
CXXFLAGS="$CXXFLAGS $CXX11_CXXFLAGS"
|
||||
AC_MSG_CHECKING(whether c++11 is enabled by via $CXX11_CXXFLAGS)
|
||||
check_cxx11_available HAVE_CXX11
|
||||
fi
|
||||
fi
|
||||
|
||||
CXXFLAGS="$save_CXXFLAGS"
|
||||
AM_CONDITIONAL(HAVE_STD_CXX11, test "x$HAVE_CXX11" = "xyes")
|
||||
AC_SUBST(CXX11_CXXFLAGS)
|
||||
AC_LANG_POP([C++])
|
||||
AC_SUBST([MSVC2013_COMPAT_CFLAGS])
|
||||
AC_SUBST([MSVC2013_COMPAT_CXXFLAGS])
|
||||
|
||||
dnl even if the compiler appears to support it, using visibility attributes isn't
|
||||
dnl going to do anything useful currently on cygwin apart from emit lots of warnings
|
||||
@@ -395,12 +374,6 @@ esac
|
||||
AC_SUBST([VISIBILITY_CFLAGS])
|
||||
AC_SUBST([VISIBILITY_CXXFLAGS])
|
||||
|
||||
dnl For some reason, the test for -Wno-foo always succeeds with gcc, even if the
|
||||
dnl option is not supported. Hence, check for -Wfoo instead.
|
||||
AX_CHECK_COMPILE_FLAG([-Woverride-init], [WNO_OVERRIDE_INIT="$WNO_OVERRIDE_INIT -Wno-override-init"]) # gcc
|
||||
AX_CHECK_COMPILE_FLAG([-Winitializer-overrides], [WNO_OVERRIDE_INIT="$WNO_OVERRIDE_INIT -Wno-initializer-overrides"]) # clang
|
||||
AC_SUBST([WNO_OVERRIDE_INIT])
|
||||
|
||||
dnl
|
||||
dnl Optional flags, check for compiler support
|
||||
dnl
|
||||
@@ -664,7 +637,16 @@ dnl Check if linker supports version scripts
|
||||
dnl
|
||||
AC_MSG_CHECKING([if the linker supports version-scripts])
|
||||
save_LDFLAGS=$LDFLAGS
|
||||
LDFLAGS="$LDFLAGS -Wl,--version-script=$srcdir/build-support/conftest.map"
|
||||
LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
|
||||
cat > conftest.map <<EOF
|
||||
VERSION_1 {
|
||||
global:
|
||||
main;
|
||||
|
||||
local:
|
||||
*;
|
||||
};
|
||||
EOF
|
||||
AC_LINK_IFELSE(
|
||||
[AC_LANG_SOURCE([int main() { return 0;}])],
|
||||
[have_ld_version_script=yes;AC_MSG_RESULT(yes)],
|
||||
@@ -677,7 +659,12 @@ dnl Check if linker supports dynamic list files
|
||||
dnl
|
||||
AC_MSG_CHECKING([if the linker supports --dynamic-list])
|
||||
save_LDFLAGS=$LDFLAGS
|
||||
LDFLAGS="$LDFLAGS -Wl,--dynamic-list=$srcdir/build-support/conftest.dyn"
|
||||
LDFLAGS="$LDFLAGS -Wl,--dynamic-list=conftest.dyn"
|
||||
cat > conftest.dyn <<EOF
|
||||
{
|
||||
radeon_drm_winsys_create;
|
||||
};
|
||||
EOF
|
||||
AC_LINK_IFELSE(
|
||||
[AC_LANG_SOURCE([int main() { return 0;}])],
|
||||
[have_ld_dynamic_list=yes;AC_MSG_RESULT(yes)],
|
||||
@@ -685,19 +672,6 @@ AC_LINK_IFELSE(
|
||||
LDFLAGS=$save_LDFLAGS
|
||||
AM_CONDITIONAL(HAVE_LD_DYNAMIC_LIST, test "$have_ld_dynamic_list" = "yes")
|
||||
|
||||
dnl
|
||||
dnl OSX linker does not support build-id
|
||||
dnl
|
||||
case "$host_os" in
|
||||
darwin*)
|
||||
LD_BUILD_ID=""
|
||||
;;
|
||||
*)
|
||||
LD_BUILD_ID="-Wl,--build-id=sha1"
|
||||
;;
|
||||
esac
|
||||
AC_SUBST([LD_BUILD_ID])
|
||||
|
||||
dnl
|
||||
dnl compatibility symlinks
|
||||
dnl
|
||||
@@ -862,11 +836,8 @@ fi
|
||||
AC_HEADER_MAJOR
|
||||
AC_CHECK_HEADER([xlocale.h], [DEFINES="$DEFINES -DHAVE_XLOCALE_H"])
|
||||
AC_CHECK_HEADER([sys/sysctl.h], [DEFINES="$DEFINES -DHAVE_SYS_SYSCTL_H"])
|
||||
AC_CHECK_HEADERS([endian.h])
|
||||
AC_CHECK_FUNC([strtof], [DEFINES="$DEFINES -DHAVE_STRTOF"])
|
||||
AC_CHECK_FUNC([mkostemp], [DEFINES="$DEFINES -DHAVE_MKOSTEMP"])
|
||||
AC_CHECK_FUNC([timespec_get], [DEFINES="$DEFINES -DHAVE_TIMESPEC_GET"])
|
||||
AC_CHECK_FUNC([memfd_create], [DEFINES="$DEFINES -DHAVE_MEMFD_CREATE"])
|
||||
|
||||
AC_MSG_CHECKING([whether strtod has locale support])
|
||||
AC_LINK_IFELSE([AC_LANG_SOURCE([[
|
||||
@@ -891,9 +862,9 @@ AC_LINK_IFELSE([AC_LANG_SOURCE([[
|
||||
|
||||
dnl Check to see if dlopen is in default libraries (like Solaris, which
|
||||
dnl has it in libc), or if libdl is needed to get it.
|
||||
AC_CHECK_FUNC([dlopen], [],
|
||||
AC_CHECK_FUNC([dlopen], [DEFINES="$DEFINES -DHAVE_DLOPEN"],
|
||||
[AC_CHECK_LIB([dl], [dlopen],
|
||||
[DLOPEN_LIBS="-ldl"])])
|
||||
[DEFINES="$DEFINES -DHAVE_DLOPEN"; DLOPEN_LIBS="-ldl"])])
|
||||
AC_SUBST([DLOPEN_LIBS])
|
||||
|
||||
dnl Check if that library also has dladdr
|
||||
@@ -920,7 +891,6 @@ AC_CHECK_FUNC([posix_memalign], [DEFINES="$DEFINES -DHAVE_POSIX_MEMALIGN"])
|
||||
|
||||
dnl Check for zlib
|
||||
PKG_CHECK_MODULES([ZLIB], [zlib >= $ZLIB_REQUIRED])
|
||||
DEFINES="$DEFINES -DHAVE_ZLIB"
|
||||
|
||||
dnl Check for pthreads
|
||||
AX_PTHREAD
|
||||
@@ -940,10 +910,10 @@ dnl In practise that should be sufficient for all platforms, since any
|
||||
dnl platforms build with GCC and Clang support the flag.
|
||||
PTHREAD_LIBS="$PTHREAD_LIBS -pthread"
|
||||
|
||||
dnl pthread-stubs is mandatory on some BSD platforms, due to the nature of the
|
||||
dnl pthread-stubs is mandatory on BSD platforms, due to the nature of the
|
||||
dnl project. Even then there's a notable issue as described in the project README
|
||||
case "$host_os" in
|
||||
linux* | cygwin* | darwin* | solaris* | *-gnu* | gnu* | openbsd*)
|
||||
linux* | cygwin* | darwin* | solaris* | *-gnu* | gnu*)
|
||||
pthread_stubs_possible="no"
|
||||
;;
|
||||
* )
|
||||
@@ -955,9 +925,6 @@ if test "x$pthread_stubs_possible" = xyes; then
|
||||
PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs >= 0.4)
|
||||
fi
|
||||
|
||||
dnl Check for futex for fast inline simple_mtx_t.
|
||||
AC_CHECK_HEADER([linux/futex.h], [DEFINES="$DEFINES -DHAVE_LINUX_FUTEX_H"])
|
||||
|
||||
dnl SELinux awareness.
|
||||
AC_ARG_ENABLE([selinux],
|
||||
[AS_HELP_STRING([--enable-selinux],
|
||||
@@ -1019,15 +986,6 @@ llvm_add_component() {
|
||||
fi
|
||||
}
|
||||
|
||||
llvm_add_optional_component() {
|
||||
new_llvm_component=$1
|
||||
driver_name=$2
|
||||
|
||||
if $LLVM_CONFIG --components | grep -iqw $new_llvm_component ; then
|
||||
LLVM_COMPONENTS="${LLVM_COMPONENTS} ${new_llvm_component}"
|
||||
fi
|
||||
}
|
||||
|
||||
llvm_add_default_components() {
|
||||
driver_name=$1
|
||||
|
||||
@@ -1038,7 +996,9 @@ llvm_add_default_components() {
|
||||
llvm_add_component "mcjit" $driver_name
|
||||
|
||||
# Optional default components
|
||||
llvm_add_optional_component "inteljitevents" $driver_name
|
||||
if $LLVM_CONFIG --components | grep -iqw inteljitevents ; then
|
||||
LLVM_COMPONENTS="$LLVM_COMPONENTS inteljitevents"
|
||||
fi
|
||||
}
|
||||
|
||||
llvm_add_target() {
|
||||
@@ -1284,10 +1244,10 @@ AC_ARG_ENABLE([xa],
|
||||
[enable_xa=no])
|
||||
AC_ARG_ENABLE([gbm],
|
||||
[AS_HELP_STRING([--enable-gbm],
|
||||
[enable gbm library @<:@default=yes except cygwin and macOS@:>@])],
|
||||
[enable gbm library @<:@default=yes except cygwin@:>@])],
|
||||
[enable_gbm="$enableval"],
|
||||
[case "$host_os" in
|
||||
cygwin* | darwin*)
|
||||
cygwin*)
|
||||
enable_gbm=no
|
||||
;;
|
||||
*)
|
||||
@@ -1312,14 +1272,9 @@ AC_ARG_ENABLE([vdpau],
|
||||
[enable_vdpau=auto])
|
||||
AC_ARG_ENABLE([omx],
|
||||
[AS_HELP_STRING([--enable-omx],
|
||||
[DEPRECATED: Use --enable-omx-bellagio instead @<:@default=auto@:>@])],
|
||||
[AC_MSG_ERROR([--enable-omx is deprecated. Use --enable-omx-bellagio instead.])],
|
||||
[])
|
||||
AC_ARG_ENABLE([omx-bellagio],
|
||||
[AS_HELP_STRING([--enable-omx-bellagio],
|
||||
[enable OpenMAX Bellagio library @<:@default=disabled@:>@])],
|
||||
[enable_omx_bellagio="$enableval"],
|
||||
[enable_omx_bellagio=no])
|
||||
[enable OpenMAX library @<:@default=disabled@:>@])],
|
||||
[enable_omx="$enableval"],
|
||||
[enable_omx=no])
|
||||
AC_ARG_ENABLE([va],
|
||||
[AS_HELP_STRING([--enable-va],
|
||||
[enable va library @<:@default=auto@:>@])],
|
||||
@@ -1333,9 +1288,9 @@ AC_ARG_ENABLE([opencl],
|
||||
AC_ARG_ENABLE([opencl_icd],
|
||||
[AS_HELP_STRING([--enable-opencl-icd],
|
||||
[Build an OpenCL ICD library to be loaded by an ICD implementation
|
||||
@<:@default=enabled@:>@])],
|
||||
@<:@default=disabled@:>@])],
|
||||
[enable_opencl_icd="$enableval"],
|
||||
[enable_opencl_icd=yes])
|
||||
[enable_opencl_icd=no])
|
||||
|
||||
AC_ARG_ENABLE([gallium-tests],
|
||||
[AS_HELP_STRING([--enable-gallium-tests],
|
||||
@@ -1351,7 +1306,7 @@ GALLIUM_DRIVERS_DEFAULT="r300,r600,svga,swrast"
|
||||
AC_ARG_WITH([gallium-drivers],
|
||||
[AS_HELP_STRING([--with-gallium-drivers@<:@=DIRS...@:>@],
|
||||
[comma delimited Gallium drivers list, e.g.
|
||||
"i915,nouveau,r300,r600,radeonsi,freedreno,pl111,svga,swrast,swr,vc4,vc5,virgl,etnaviv,imx"
|
||||
"i915,nouveau,r300,r600,radeonsi,freedreno,pl111,svga,swrast,swr,vc4,virgl,etnaviv,imx"
|
||||
@<:@default=r300,r600,svga,swrast@:>@])],
|
||||
[with_gallium_drivers="$withval"],
|
||||
[with_gallium_drivers="$GALLIUM_DRIVERS_DEFAULT"])
|
||||
@@ -1370,7 +1325,7 @@ if test "x$enable_opengl" = xno -a \
|
||||
"x$enable_xa" = xno -a \
|
||||
"x$enable_xvmc" = xno -a \
|
||||
"x$enable_vdpau" = xno -a \
|
||||
"x$enable_omx_bellagio" = xno -a \
|
||||
"x$enable_omx" = xno -a \
|
||||
"x$enable_va" = xno -a \
|
||||
"x$enable_opencl" = xno; then
|
||||
AC_MSG_ERROR([at least one API should be enabled])
|
||||
@@ -1461,10 +1416,18 @@ AC_ARG_ENABLE([libglvnd],
|
||||
AM_CONDITIONAL(USE_LIBGLVND, test "x$enable_libglvnd" = xyes)
|
||||
|
||||
if test "x$enable_libglvnd" = xyes ; then
|
||||
dnl XXX: update once we can handle more than libGL/glx.
|
||||
dnl Namely: we should error out if neither of the glvnd enabled libraries
|
||||
dnl are built
|
||||
case "x$enable_glx" in
|
||||
xno)
|
||||
AC_MSG_ERROR([cannot build libglvnd without GLX])
|
||||
;;
|
||||
xxlib | xgallium-xlib )
|
||||
AC_MSG_ERROR([cannot build libgvnd when Xlib-GLX or Gallium-Xlib-GLX is enabled])
|
||||
;;
|
||||
xdri)
|
||||
;;
|
||||
esac
|
||||
|
||||
PKG_CHECK_MODULES([GLVND], libglvnd >= 0.2.0)
|
||||
@@ -1473,10 +1436,6 @@ if test "x$enable_libglvnd" = xyes ; then
|
||||
|
||||
DEFINES="${DEFINES} -DUSE_LIBGLVND=1"
|
||||
DEFAULT_GL_LIB_NAME=GLX_mesa
|
||||
|
||||
if test "x$enable_glx" = xno -a "x$enable_egl" = xno; then
|
||||
AC_MSG_ERROR([cannot build libglvnd without GLX or EGL])
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_ARG_WITH([gl-lib-name],
|
||||
@@ -1612,7 +1571,7 @@ fi
|
||||
AC_ARG_ENABLE([driglx-direct],
|
||||
[AS_HELP_STRING([--disable-driglx-direct],
|
||||
[disable direct rendering in GLX and EGL for DRI \
|
||||
@<:@default=enabled@:>@])],
|
||||
@<:@default=auto@:>@])],
|
||||
[driglx_direct="$enableval"],
|
||||
[driglx_direct="yes"])
|
||||
|
||||
@@ -1790,8 +1749,7 @@ for plat in $platforms; do
|
||||
case "$plat" in
|
||||
wayland)
|
||||
|
||||
PKG_CHECK_MODULES([WAYLAND_CLIENT], [wayland-client >= $WAYLAND_REQUIRED])
|
||||
PKG_CHECK_MODULES([WAYLAND_SERVER], [wayland-server >= $WAYLAND_REQUIRED])
|
||||
PKG_CHECK_MODULES([WAYLAND], [wayland-client >= $WAYLAND_REQUIRED wayland-server >= $WAYLAND_REQUIRED])
|
||||
|
||||
if test "x$WAYLAND_SCANNER" = "x:"; then
|
||||
AC_MSG_ERROR([wayland-scanner is needed to compile the wayland platform])
|
||||
@@ -1799,7 +1757,7 @@ for plat in $platforms; do
|
||||
if test "x$have_wayland_protocols" = xno; then
|
||||
AC_MSG_ERROR([wayland-protocols >= $WAYLAND_PROTOCOLS_REQUIRED is needed to compile the wayland platform])
|
||||
fi
|
||||
DEFINES="$DEFINES -DHAVE_WAYLAND_PLATFORM -DWL_HIDE_DEPRECATED"
|
||||
DEFINES="$DEFINES -DHAVE_WAYLAND_PLATFORM"
|
||||
;;
|
||||
|
||||
x11)
|
||||
@@ -1889,11 +1847,6 @@ if test "x$with_dri_drivers" = xno; then
|
||||
with_dri_drivers=''
|
||||
fi
|
||||
|
||||
# Check for expat
|
||||
PKG_CHECK_MODULES([EXPAT], [expat],,
|
||||
[PKG_CHECK_MODULES([EXPAT], [expat21])]
|
||||
)
|
||||
|
||||
dnl If $with_dri_drivers is yes, drivers will be added through
|
||||
dnl platform checks. Set DEFINES and LIB_DEPS
|
||||
if test "x$enable_dri" = xyes; then
|
||||
@@ -1927,6 +1880,15 @@ if test "x$enable_dri" = xyes; then
|
||||
with_dri_drivers="i915 i965 nouveau r200 radeon swrast"
|
||||
fi
|
||||
|
||||
# Check for expat
|
||||
PKG_CHECK_MODULES([EXPAT], [expat], [],
|
||||
# expat version 2.0 and earlier do not provide expat.pc
|
||||
[AC_CHECK_HEADER([expat.h],[],
|
||||
[AC_MSG_ERROR([Expat headers required for DRI not found])])
|
||||
AC_CHECK_LIB([expat],[XML_ParserCreate],[],
|
||||
[AC_MSG_ERROR([Expat library required for DRI not found])])
|
||||
EXPAT_LIBS="-lexpat"])
|
||||
|
||||
# put all the necessary libs together
|
||||
DRI_LIB_DEPS="$DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
|
||||
fi
|
||||
@@ -2212,8 +2174,8 @@ if test -n "$with_gallium_drivers" -a "x$with_gallium_drivers" != xswrast; then
|
||||
PKG_CHECK_EXISTS([vdpau >= $VDPAU_REQUIRED], [enable_vdpau=yes], [enable_vdpau=no])
|
||||
fi
|
||||
|
||||
if test "x$enable_omx_bellagio" = xauto -a "x$have_omx_platform" = xyes; then
|
||||
PKG_CHECK_EXISTS([libomxil-bellagio >= $LIBOMXIL_BELLAGIO_REQUIRED], [enable_omx_bellagio=yes], [enable_omx_bellagio=no])
|
||||
if test "x$enable_omx" = xauto -a "x$have_omx_platform" = xyes; then
|
||||
PKG_CHECK_EXISTS([libomxil-bellagio >= $LIBOMXIL_BELLAGIO_REQUIRED], [enable_omx=yes], [enable_omx=no])
|
||||
fi
|
||||
|
||||
if test "x$enable_va" = xauto -a "x$have_va_platform" = xyes; then
|
||||
@@ -2224,7 +2186,7 @@ fi
|
||||
if test "x$enable_dri" = xyes -o \
|
||||
"x$enable_xvmc" = xyes -o \
|
||||
"x$enable_vdpau" = xyes -o \
|
||||
"x$enable_omx_bellagio" = xyes -o \
|
||||
"x$enable_omx" = xyes -o \
|
||||
"x$enable_va" = xyes; then
|
||||
need_gallium_vl=yes
|
||||
fi
|
||||
@@ -2232,11 +2194,9 @@ AM_CONDITIONAL(NEED_GALLIUM_VL, test "x$need_gallium_vl" = xyes)
|
||||
|
||||
if test "x$enable_xvmc" = xyes -o \
|
||||
"x$enable_vdpau" = xyes -o \
|
||||
"x$enable_omx_bellagio" = xyes -o \
|
||||
"x$enable_omx" = xyes -o \
|
||||
"x$enable_va" = xyes; then
|
||||
if echo $platforms | grep -q "x11"; then
|
||||
PKG_CHECK_MODULES([VL], [x11-xcb xcb xcb-dri2 >= $XCBDRI2_REQUIRED])
|
||||
fi
|
||||
PKG_CHECK_MODULES([VL], [x11-xcb xcb xcb-dri2 >= $XCBDRI2_REQUIRED])
|
||||
need_gallium_vl_winsys=yes
|
||||
fi
|
||||
AM_CONDITIONAL(NEED_GALLIUM_VL_WINSYS, test "x$need_gallium_vl_winsys" = xyes)
|
||||
@@ -2260,14 +2220,14 @@ if test "x$enable_vdpau" = xyes; then
|
||||
fi
|
||||
AM_CONDITIONAL(HAVE_ST_VDPAU, test "x$enable_vdpau" = xyes)
|
||||
|
||||
if test "x$enable_omx_bellagio" = xyes; then
|
||||
if test "x$enable_omx" = xyes; then
|
||||
if test "x$have_omx_platform" != xyes; then
|
||||
AC_MSG_ERROR([OMX requires at least one of the x11 or drm platforms])
|
||||
fi
|
||||
PKG_CHECK_MODULES([OMX_BELLAGIO], [libomxil-bellagio >= $LIBOMXIL_BELLAGIO_REQUIRED])
|
||||
gallium_st="$gallium_st omx_bellagio"
|
||||
PKG_CHECK_MODULES([OMX], [libomxil-bellagio >= $LIBOMXIL_BELLAGIO_REQUIRED])
|
||||
gallium_st="$gallium_st omx"
|
||||
fi
|
||||
AM_CONDITIONAL(HAVE_ST_OMX_BELLAGIO, test "x$enable_omx_bellagio" = xyes)
|
||||
AM_CONDITIONAL(HAVE_ST_OMX, test "x$enable_omx" = xyes)
|
||||
|
||||
if test "x$enable_va" = xyes; then
|
||||
if test "x$have_va_platform" != xyes; then
|
||||
@@ -2317,8 +2277,8 @@ if test "x$enable_opencl" = xyes; then
|
||||
AC_MSG_ERROR([cannot enable OpenCL without Gallium])
|
||||
fi
|
||||
|
||||
if test "x$HAVE_CXX11" != "xyes"; then
|
||||
AC_MSG_ERROR([clover requires c++11 support])
|
||||
if test $GCC_VERSION_MAJOR -lt 4 -o $GCC_VERSION_MAJOR -eq 4 -a $GCC_VERSION_MINOR -lt 7; then
|
||||
AC_MSG_ERROR([gcc >= 4.7 is required to build clover])
|
||||
fi
|
||||
|
||||
if test "x$have_libclc" = xno; then
|
||||
@@ -2363,16 +2323,13 @@ if test "x$enable_opencl" = xyes; then
|
||||
|
||||
llvm_add_default_components "opencl"
|
||||
llvm_add_component "all-targets" "opencl"
|
||||
llvm_add_component "coverage" "opencl"
|
||||
llvm_add_component "linker" "opencl"
|
||||
llvm_add_component "instrumentation" "opencl"
|
||||
llvm_add_component "ipo" "opencl"
|
||||
llvm_add_component "irreader" "opencl"
|
||||
llvm_add_component "lto" "opencl"
|
||||
llvm_add_component "option" "opencl"
|
||||
llvm_add_component "objcarcopts" "opencl"
|
||||
llvm_add_component "profiledata" "opencl"
|
||||
llvm_add_optional_component "coroutines" "opencl"
|
||||
|
||||
dnl Check for Clang internal headers
|
||||
if test -z "$CLANG_LIBDIR"; then
|
||||
@@ -2432,15 +2389,15 @@ AC_ARG_WITH([vdpau-libdir],
|
||||
[VDPAU_LIB_INSTALL_DIR='${libdir}/vdpau'])
|
||||
AC_SUBST([VDPAU_LIB_INSTALL_DIR])
|
||||
|
||||
dnl Directory for OMX_BELLAGIO libs
|
||||
dnl Directory for OMX libs
|
||||
|
||||
AC_ARG_WITH([omx-bellagio-libdir],
|
||||
[AS_HELP_STRING([--with-omx-bellagio-libdir=DIR],
|
||||
[directory for the OMX_BELLAGIO libraries])],
|
||||
[OMX_BELLAGIO_LIB_INSTALL_DIR="$withval"],
|
||||
[OMX_BELLAGIO_LIB_INSTALL_DIR=`$PKG_CONFIG --exists libomxil-bellagio && \
|
||||
$PKG_CONFIG --define-variable=libdir=\$libdir --variable=pluginsdir libomxil-bellagio`])
|
||||
AC_SUBST([OMX_BELLAGIO_LIB_INSTALL_DIR])
|
||||
AC_ARG_WITH([omx-libdir],
|
||||
[AS_HELP_STRING([--with-omx-libdir=DIR],
|
||||
[directory for the OMX libraries])],
|
||||
[OMX_LIB_INSTALL_DIR="$withval"],
|
||||
[OMX_LIB_INSTALL_DIR=`$PKG_CONFIG --exists libomxil-bellagio && \
|
||||
$PKG_CONFIG --define-variable=libdir=\$libdir --variable=pluginsdir libomxil-bellagio`])
|
||||
AC_SUBST([OMX_LIB_INSTALL_DIR])
|
||||
|
||||
dnl Directory for VA libs
|
||||
|
||||
@@ -2486,13 +2443,12 @@ dnl Surfaceless is an alternative for the last one.
|
||||
dnl
|
||||
require_basic_egl() {
|
||||
case "$with_platforms" in
|
||||
*drm*|*surfaceless*|*android*)
|
||||
*drm*|*surfaceless*)
|
||||
;;
|
||||
*)
|
||||
AC_MSG_ERROR([$1 requires one of these:
|
||||
1) --with-platforms=drm (X, Wayland, offscreen rendering based on DRM)
|
||||
2) --with-platforms=surfaceless (offscreen only)
|
||||
3) --with-platforms=android (Android only)
|
||||
Recommended options: drm,x11])
|
||||
;;
|
||||
esac
|
||||
@@ -2572,14 +2528,6 @@ if test -n "$with_gallium_drivers"; then
|
||||
HAVE_GALLIUM_RADEONSI=yes
|
||||
PKG_CHECK_MODULES([RADEON], [libdrm >= $LIBDRM_RADEON_REQUIRED libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
|
||||
PKG_CHECK_MODULES([AMDGPU], [libdrm >= $LIBDRM_AMDGPU_REQUIRED libdrm_amdgpu >= $LIBDRM_AMDGPU_REQUIRED])
|
||||
|
||||
# Blacklist libdrm_amdgpu 2.4.90 because it causes a crash in older
|
||||
# radeonsi with pretty much any app.
|
||||
libdrm_version=`pkg-config libdrm_amdgpu --modversion`
|
||||
if test "x$libdrm_version" = x2.4.90; then
|
||||
AC_MSG_ERROR([radeonsi can't use libdrm 2.4.90 due to a compatibility issue. Use a newer or older version.])
|
||||
fi
|
||||
|
||||
require_libdrm "radeonsi"
|
||||
radeon_llvm_check $LLVM_REQUIRED_RADEONSI "radeonsi"
|
||||
if test "x$enable_egl" = xyes; then
|
||||
@@ -2613,12 +2561,13 @@ if test -n "$with_gallium_drivers"; then
|
||||
xswr)
|
||||
llvm_require_version $LLVM_REQUIRED_SWR "swr"
|
||||
|
||||
if test "x$HAVE_CXX11" != "xyes"; then
|
||||
AC_MSG_ERROR([swr requires c++11 support])
|
||||
fi
|
||||
swr_require_cxx_feature_flags "C++11" "__cplusplus >= 201103L" \
|
||||
",-std=c++11" \
|
||||
SWR_CXX11_CXXFLAGS
|
||||
AC_SUBST([SWR_CXX11_CXXFLAGS])
|
||||
|
||||
swr_require_cxx_feature_flags "AVX" "defined(__AVX__)" \
|
||||
",-target-cpu=sandybridge,-mavx,-march=core-avx,-tp=sandybridge" \
|
||||
",-mavx,-march=core-avx" \
|
||||
SWR_AVX_CXXFLAGS
|
||||
AC_SUBST([SWR_AVX_CXXFLAGS])
|
||||
|
||||
@@ -2630,21 +2579,21 @@ if test -n "$with_gallium_drivers"; then
|
||||
;;
|
||||
xavx2)
|
||||
swr_require_cxx_feature_flags "AVX2" "defined(__AVX2__)" \
|
||||
",-target-cpu=haswell,-mavx2 -mfma -mbmi2 -mf16c,-march=core-avx2,-tp=haswell" \
|
||||
",-mavx2 -mfma -mbmi2 -mf16c,-march=core-avx2" \
|
||||
SWR_AVX2_CXXFLAGS
|
||||
AC_SUBST([SWR_AVX2_CXXFLAGS])
|
||||
HAVE_SWR_AVX2=yes
|
||||
;;
|
||||
xknl)
|
||||
swr_require_cxx_feature_flags "KNL" "defined(__AVX512F__) && defined(__AVX512ER__)" \
|
||||
",-target-cpu=mic-knl,-march=knl,-xMIC-AVX512" \
|
||||
",-march=knl,-xMIC-AVX512" \
|
||||
SWR_KNL_CXXFLAGS
|
||||
AC_SUBST([SWR_KNL_CXXFLAGS])
|
||||
HAVE_SWR_KNL=yes
|
||||
;;
|
||||
xskx)
|
||||
swr_require_cxx_feature_flags "SKX" "defined(__AVX512F__) && defined(__AVX512BW__)" \
|
||||
",-target-cpu=x86-skylake,-march=skylake-avx512,-xCORE-AVX512" \
|
||||
",-march=skylake-avx512,-xCORE-AVX512" \
|
||||
SWR_SKX_CXXFLAGS
|
||||
AC_SUBST([SWR_SKX_CXXFLAGS])
|
||||
HAVE_SWR_SKX=yes
|
||||
@@ -2662,11 +2611,6 @@ if test -n "$with_gallium_drivers"; then
|
||||
AC_MSG_ERROR([swr enabled but no swr architectures selected])
|
||||
fi
|
||||
|
||||
# test if more than one swr arch configured
|
||||
if test `echo $swr_archs | wc -w` -eq 1; then
|
||||
HAVE_SWR_BUILTIN=yes
|
||||
fi
|
||||
|
||||
HAVE_GALLIUM_SWR=yes
|
||||
;;
|
||||
xvc4)
|
||||
@@ -2678,14 +2622,6 @@ if test -n "$with_gallium_drivers"; then
|
||||
DEFINES="$DEFINES -DUSE_VC4_SIMULATOR"],
|
||||
[USE_VC4_SIMULATOR=no])
|
||||
;;
|
||||
xvc5)
|
||||
HAVE_GALLIUM_VC5=yes
|
||||
|
||||
PKG_CHECK_MODULES([VC5_SIMULATOR], [v3dv3],
|
||||
[USE_VC5_SIMULATOR=yes;
|
||||
DEFINES="$DEFINES -DUSE_VC5_SIMULATOR"],
|
||||
[AC_MSG_ERROR([vc5 requires the simulator])])
|
||||
;;
|
||||
xpl111)
|
||||
HAVE_GALLIUM_PL111=yes
|
||||
;;
|
||||
@@ -2716,7 +2652,6 @@ AM_CONDITIONAL(HAVE_SWR_AVX, test "x$HAVE_SWR_AVX" = xyes)
|
||||
AM_CONDITIONAL(HAVE_SWR_AVX2, test "x$HAVE_SWR_AVX2" = xyes)
|
||||
AM_CONDITIONAL(HAVE_SWR_KNL, test "x$HAVE_SWR_KNL" = xyes)
|
||||
AM_CONDITIONAL(HAVE_SWR_SKX, test "x$HAVE_SWR_SKX" = xyes)
|
||||
AM_CONDITIONAL(HAVE_SWR_BUILTIN, test "x$HAVE_SWR_BUILTIN" = xyes)
|
||||
|
||||
dnl We need to validate some needed dependencies for renderonly drivers.
|
||||
|
||||
@@ -2728,39 +2663,6 @@ if test "x$HAVE_GALLIUM_VC4" != xyes -a "x$HAVE_GALLIUM_PL111" = xyes ; then
|
||||
AC_MSG_ERROR([Building with pl111 requires vc4])
|
||||
fi
|
||||
|
||||
|
||||
detect_old_buggy_llvm() {
|
||||
dnl llvm-config may not give the right answer when llvm is a built as a
|
||||
dnl single shared library, so we must work the library name out for
|
||||
dnl ourselves.
|
||||
dnl (See https://llvm.org/bugs/show_bug.cgi?id=6823)
|
||||
dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
|
||||
LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version`
|
||||
AS_IF([test -f "$LLVM_LIBDIR/lib$LLVM_SO_NAME.$IMP_LIB_EXT"], [llvm_have_one_so=yes])
|
||||
|
||||
if test "x$llvm_have_one_so" = xyes; then
|
||||
dnl LLVM was built using auto*, so there is only one shared object.
|
||||
LLVM_LIBS="-l$LLVM_SO_NAME"
|
||||
else
|
||||
dnl If LLVM was built with CMake, there will be one shared object per
|
||||
dnl component.
|
||||
AS_IF([test ! -f "$LLVM_LIBDIR/libLLVMTarget.$IMP_LIB_EXT"],
|
||||
[AC_MSG_ERROR([Could not find llvm shared libraries:
|
||||
Please make sure you have built llvm with the --enable-shared option
|
||||
and that your llvm libraries are installed in $LLVM_LIBDIR
|
||||
If you have installed your llvm libraries to a different directory you
|
||||
can use the --with-llvm-prefix= configure flag to specify this directory.
|
||||
NOTE: Mesa is attempting to use llvm shared libraries by default.
|
||||
If you do not want to build with llvm shared libraries and instead want to
|
||||
use llvm static libraries then add --disable-llvm-shared-libs to your configure
|
||||
invocation and rebuild.])])
|
||||
|
||||
dnl We don't need to update LLVM_LIBS in this case because the LLVM
|
||||
dnl install uses a shared object for each component and we have
|
||||
dnl already added all of these objects to LLVM_LIBS.
|
||||
fi
|
||||
}
|
||||
|
||||
dnl
|
||||
dnl Set defines and buildtime variables only when using LLVM.
|
||||
dnl
|
||||
@@ -2778,42 +2680,49 @@ if test "x$enable_llvm" = xyes; then
|
||||
dnl this was causing the same libraries to be appear multiple times
|
||||
dnl in LLVM_LIBS.
|
||||
|
||||
if test $LLVM_VERSION_MAJOR -ge 4 -o $LLVM_VERSION_MAJOR -eq 3 -a $LLVM_VERSION_MINOR -ge 9; then
|
||||
if test "x$enable_llvm_shared_libs" = xyes; then
|
||||
LLVM_LIBS="`$LLVM_CONFIG --link-shared --libs ${LLVM_COMPONENTS}`"
|
||||
if ! $LLVM_CONFIG --libs ${LLVM_COMPONENTS} >/dev/null; then
|
||||
AC_MSG_ERROR([Calling ${LLVM_CONFIG} failed])
|
||||
fi
|
||||
LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
|
||||
|
||||
dnl llvm-config may not give the right answer when llvm is a built as a
|
||||
dnl single shared library, so we must work the library name out for
|
||||
dnl ourselves.
|
||||
dnl (See https://llvm.org/bugs/show_bug.cgi?id=6823)
|
||||
if test "x$enable_llvm_shared_libs" = xyes; then
|
||||
dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
|
||||
LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version`
|
||||
AS_IF([test -f "$LLVM_LIBDIR/lib$LLVM_SO_NAME.$IMP_LIB_EXT"], [llvm_have_one_so=yes])
|
||||
|
||||
if test "x$llvm_have_one_so" = xyes; then
|
||||
dnl LLVM was built using auto*, so there is only one shared object.
|
||||
LLVM_LIBS="-l$LLVM_SO_NAME"
|
||||
else
|
||||
dnl Invoking llvm-config with both -libs and --system-libs produces the
|
||||
dnl two separate lines - each for the set of libraries.
|
||||
dnl Call the program twice, effectively folding them into a single line.
|
||||
LLVM_LIBS="`$LLVM_CONFIG --link-static --libs ${LLVM_COMPONENTS}`"
|
||||
dnl We need to link to llvm system libs when using static libs
|
||||
LLVM_LIBS="$LLVM_LIBS `$LLVM_CONFIG --link-static --system-libs`"
|
||||
dnl If LLVM was built with CMake, there will be one shared object per
|
||||
dnl component.
|
||||
AS_IF([test ! -f "$LLVM_LIBDIR/libLLVMTarget.$IMP_LIB_EXT"],
|
||||
[AC_MSG_ERROR([Could not find llvm shared libraries:
|
||||
Please make sure you have built llvm with the --enable-shared option
|
||||
and that your llvm libraries are installed in $LLVM_LIBDIR
|
||||
If you have installed your llvm libraries to a different directory you
|
||||
can use the --with-llvm-prefix= configure flag to specify this directory.
|
||||
NOTE: Mesa is attempting to use llvm shared libraries by default.
|
||||
If you do not want to build with llvm shared libraries and instead want to
|
||||
use llvm static libraries then add --disable-llvm-shared-libs to your configure
|
||||
invocation and rebuild.])])
|
||||
|
||||
dnl We don't need to update LLVM_LIBS in this case because the LLVM
|
||||
dnl install uses a shared object for each component and we have
|
||||
dnl already added all of these objects to LLVM_LIBS.
|
||||
fi
|
||||
else
|
||||
LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
|
||||
if test "x$enable_llvm_shared_libs" = xyes; then
|
||||
detect_old_buggy_llvm
|
||||
else
|
||||
AC_MSG_WARN([Building mesa with statically linked LLVM may cause compilation issues])
|
||||
dnl We need to link to llvm system libs when using static libs
|
||||
dnl However, only llvm 3.5+ provides --system-libs
|
||||
if test $LLVM_VERSION_MAJOR -ge 4 -o $LLVM_VERSION_MAJOR -eq 3 -a $LLVM_VERSION_MINOR -ge 5; then
|
||||
LLVM_LIBS="$LLVM_LIBS `$LLVM_CONFIG --system-libs`"
|
||||
fi
|
||||
AC_MSG_WARN([Building mesa with statically linked LLVM may cause compilation issues])
|
||||
dnl We need to link to llvm system libs when using static libs
|
||||
dnl However, only llvm 3.5+ provides --system-libs
|
||||
if test $LLVM_VERSION_MAJOR -ge 4 -o $LLVM_VERSION_MAJOR -eq 3 -a $LLVM_VERSION_MINOR -ge 5; then
|
||||
LLVM_LIBS="$LLVM_LIBS `$LLVM_CONFIG --system-libs`"
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl The gallium-xlib GLX and gallium OSMesa targets directly embed the
|
||||
dnl swr/llvmpipe driver into the final binary. Adding LLVM_LIBS results in
|
||||
dnl the LLVM library propagated in the Libs.private of the respective .pc
|
||||
dnl file which ensures complete dependency information when statically
|
||||
dnl linking.
|
||||
if test "x$enable_glx" == xgallium-xlib; then
|
||||
GL_PC_LIB_PRIV="$GL_PC_LIB_PRIV $LLVM_LIBS"
|
||||
fi
|
||||
if test "x$enable_gallium_osmesa" = xyes; then
|
||||
OSMESA_PC_LIB_PRIV="$OSMESA_PC_LIB_PRIV $LLVM_LIBS"
|
||||
fi
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_SVGA, test "x$HAVE_GALLIUM_SVGA" = xyes)
|
||||
@@ -2822,7 +2731,8 @@ AM_CONDITIONAL(HAVE_GALLIUM_PL111, test "x$HAVE_GALLIUM_PL111" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_R300, test "x$HAVE_GALLIUM_R300" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_R600, test "x$HAVE_GALLIUM_R600" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_RADEONSI, test "x$HAVE_GALLIUM_RADEONSI" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_RADEON_COMMON, test "x$HAVE_GALLIUM_RADEONSI" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_RADEON_COMMON, test "x$HAVE_GALLIUM_R600" = xyes -o \
|
||||
"x$HAVE_GALLIUM_RADEONSI" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_NOUVEAU, test "x$HAVE_GALLIUM_NOUVEAU" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_FREEDRENO, test "x$HAVE_GALLIUM_FREEDRENO" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_ETNAVIV, test "x$HAVE_GALLIUM_ETNAVIV" = xyes)
|
||||
@@ -2834,7 +2744,6 @@ AM_CONDITIONAL(HAVE_GALLIUM_SWRAST, test "x$HAVE_GALLIUM_SOFTPIPE" = xyes -o \
|
||||
"x$HAVE_GALLIUM_LLVMPIPE" = xyes -o \
|
||||
"x$HAVE_GALLIUM_SWR" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_VC4, test "x$HAVE_GALLIUM_VC4" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_VC5, test "x$HAVE_GALLIUM_VC5" = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_VIRGL, test "x$HAVE_GALLIUM_VIRGL" = xyes)
|
||||
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_STATIC_TARGETS, test "x$enable_shared_pipe_drivers" = xno)
|
||||
@@ -2861,9 +2770,6 @@ AM_CONDITIONAL(HAVE_INTEL_VULKAN, test "x$HAVE_INTEL_VULKAN" = xyes)
|
||||
AM_CONDITIONAL(HAVE_AMD_DRIVERS, test "x$HAVE_GALLIUM_RADEONSI" = xyes -o \
|
||||
"x$HAVE_RADEON_VULKAN" = xyes)
|
||||
|
||||
AM_CONDITIONAL(HAVE_BROADCOM_DRIVERS, test "x$HAVE_GALLIUM_VC4" = xyes -o \
|
||||
"x$HAVE_GALLIUM_VC5" = xyes)
|
||||
|
||||
AM_CONDITIONAL(HAVE_INTEL_DRIVERS, test "x$HAVE_INTEL_VULKAN" = xyes -o \
|
||||
"x$HAVE_I965_DRI" = xyes)
|
||||
|
||||
@@ -2874,7 +2780,6 @@ AM_CONDITIONAL(NEED_WINSYS_XLIB, test "x$enable_glx" = xgallium-xlib)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_COMPUTE, test x$enable_opencl = xyes)
|
||||
AM_CONDITIONAL(HAVE_GALLIUM_LLVM, test "x$enable_llvm" = xyes)
|
||||
AM_CONDITIONAL(USE_VC4_SIMULATOR, test x$USE_VC4_SIMULATOR = xyes)
|
||||
AM_CONDITIONAL(USE_VC5_SIMULATOR, test x$USE_VC5_SIMULATOR = xyes)
|
||||
|
||||
AM_CONDITIONAL(HAVE_LIBDRM, test "x$have_libdrm" = xyes)
|
||||
AM_CONDITIONAL(HAVE_OSMESA, test "x$enable_osmesa" = xyes)
|
||||
@@ -2891,8 +2796,8 @@ AM_CONDITIONAL(HAVE_ARM_ASM, test "x$asm_arch" = xarm)
|
||||
|
||||
AC_SUBST([NINE_MAJOR], 1)
|
||||
AC_SUBST([NINE_MINOR], 0)
|
||||
AC_SUBST([NINE_PATCH], 0)
|
||||
AC_SUBST([NINE_VERSION], "$NINE_MAJOR.$NINE_MINOR.$NINE_PATCH")
|
||||
AC_SUBST([NINE_TINY], 0)
|
||||
AC_SUBST([NINE_VERSION], "$NINE_MAJOR.$NINE_MINOR.$NINE_TINY")
|
||||
|
||||
AC_SUBST([VDPAU_MAJOR], 1)
|
||||
AC_SUBST([VDPAU_MINOR], 0)
|
||||
@@ -2909,10 +2814,15 @@ AM_CONDITIONAL(HAVE_VULKAN_COMMON, test "x$VULKAN_DRIVERS" != "x")
|
||||
AC_SUBST([XVMC_MAJOR], 1)
|
||||
AC_SUBST([XVMC_MINOR], 0)
|
||||
|
||||
AC_SUBST([XA_MAJOR], 2)
|
||||
AC_SUBST([XA_MINOR], 3)
|
||||
AC_SUBST([XA_PATCH], 0)
|
||||
AC_SUBST([XA_VERSION], "$XA_MAJOR.$XA_MINOR.$XA_PATCH")
|
||||
XA_HEADER="$srcdir/src/gallium/state_trackers/xa/xa_tracker.h"
|
||||
XA_MAJOR=`grep "#define XA_TRACKER_VERSION_MAJOR" $XA_HEADER | $SED 's/^#define XA_TRACKER_VERSION_MAJOR //'`
|
||||
XA_MINOR=`grep "#define XA_TRACKER_VERSION_MINOR" $XA_HEADER | $SED 's/^#define XA_TRACKER_VERSION_MINOR //'`
|
||||
XA_TINY=`grep "#define XA_TRACKER_VERSION_PATCH" $XA_HEADER | $SED 's/^#define XA_TRACKER_VERSION_PATCH //'`
|
||||
|
||||
AC_SUBST([XA_MAJOR], $XA_MAJOR)
|
||||
AC_SUBST([XA_MINOR], $XA_MINOR)
|
||||
AC_SUBST([XA_TINY], $XA_TINY)
|
||||
AC_SUBST([XA_VERSION], "$XA_MAJOR.$XA_MINOR.$XA_TINY")
|
||||
|
||||
AC_ARG_ENABLE(valgrind,
|
||||
[AS_HELP_STRING([--enable-valgrind],
|
||||
@@ -2983,24 +2893,22 @@ AC_CONFIG_FILES([Makefile
|
||||
src/gallium/drivers/etnaviv/Makefile
|
||||
src/gallium/drivers/imx/Makefile
|
||||
src/gallium/drivers/vc4/Makefile
|
||||
src/gallium/drivers/vc5/Makefile
|
||||
src/gallium/drivers/virgl/Makefile
|
||||
src/gallium/state_trackers/clover/Makefile
|
||||
src/gallium/state_trackers/dri/Makefile
|
||||
src/gallium/state_trackers/glx/xlib/Makefile
|
||||
src/gallium/state_trackers/nine/Makefile
|
||||
src/gallium/state_trackers/omx_bellagio/Makefile
|
||||
src/gallium/state_trackers/omx/Makefile
|
||||
src/gallium/state_trackers/osmesa/Makefile
|
||||
src/gallium/state_trackers/va/Makefile
|
||||
src/gallium/state_trackers/vdpau/Makefile
|
||||
src/gallium/state_trackers/xa/Makefile
|
||||
src/gallium/state_trackers/xa/xa_tracker.h
|
||||
src/gallium/state_trackers/xvmc/Makefile
|
||||
src/gallium/targets/d3dadapter9/Makefile
|
||||
src/gallium/targets/d3dadapter9/d3d.pc
|
||||
src/gallium/targets/dri/Makefile
|
||||
src/gallium/targets/libgl-xlib/Makefile
|
||||
src/gallium/targets/omx-bellagio/Makefile
|
||||
src/gallium/targets/omx/Makefile
|
||||
src/gallium/targets/opencl/Makefile
|
||||
src/gallium/targets/opencl/mesa.icd
|
||||
src/gallium/targets/osmesa/Makefile
|
||||
@@ -3028,7 +2936,6 @@ AC_CONFIG_FILES([Makefile
|
||||
src/gallium/winsys/sw/wrapper/Makefile
|
||||
src/gallium/winsys/sw/xlib/Makefile
|
||||
src/gallium/winsys/vc4/drm/Makefile
|
||||
src/gallium/winsys/vc5/drm/Makefile
|
||||
src/gallium/winsys/virgl/drm/Makefile
|
||||
src/gallium/winsys/virgl/vtest/Makefile
|
||||
src/gbm/Makefile
|
||||
@@ -3049,6 +2956,7 @@ AC_CONFIG_FILES([Makefile
|
||||
src/mesa/gl.pc
|
||||
src/mesa/drivers/dri/dri.pc
|
||||
src/mesa/drivers/dri/common/Makefile
|
||||
src/mesa/drivers/dri/common/xmlpool/Makefile
|
||||
src/mesa/drivers/dri/i915/Makefile
|
||||
src/mesa/drivers/dri/i965/Makefile
|
||||
src/mesa/drivers/dri/Makefile
|
||||
@@ -3060,11 +2968,8 @@ AC_CONFIG_FILES([Makefile
|
||||
src/mesa/drivers/osmesa/osmesa.pc
|
||||
src/mesa/drivers/x11/Makefile
|
||||
src/mesa/main/tests/Makefile
|
||||
src/mesa/state_tracker/tests/Makefile
|
||||
src/util/Makefile
|
||||
src/util/tests/hash_table/Makefile
|
||||
src/util/tests/string_buffer/Makefile
|
||||
src/util/xmlpool/Makefile
|
||||
src/vulkan/Makefile])
|
||||
|
||||
AC_OUTPUT
|
||||
@@ -3073,8 +2978,6 @@ AC_OUTPUT
|
||||
# source file
|
||||
$SED -i -e 's/brw_blorp.cpp/brw_blorp.c/' src/mesa/drivers/dri/i965/.deps/brw_blorp.Plo
|
||||
|
||||
rm -f src/compiler/spirv/spirv_info.lo
|
||||
echo "# dummy" > src/compiler/spirv/.deps/spirv_info.Plo
|
||||
|
||||
dnl
|
||||
dnl Output some configuration info for the user
|
||||
@@ -3193,11 +3096,7 @@ fi
|
||||
|
||||
echo ""
|
||||
if test "x$HAVE_GALLIUM_SWR" != x; then
|
||||
if test "x$HAVE_SWR_BUILTIN" = xyes; then
|
||||
echo " SWR archs: $swr_archs (builtin)"
|
||||
else
|
||||
echo " SWR archs: $swr_archs"
|
||||
fi
|
||||
echo " SWR archs: $swr_archs"
|
||||
fi
|
||||
|
||||
dnl Libraries
|
||||
@@ -3217,7 +3116,6 @@ defines=`echo $DEFINES | $SED 's/^ *//;s/ */ /;s/ *$//'`
|
||||
echo ""
|
||||
echo " CFLAGS: $cflags"
|
||||
echo " CXXFLAGS: $cxxflags"
|
||||
echo " CXX11_CXXFLAGS: $CXX11_CXXFLAGS"
|
||||
echo " LDFLAGS: $ldflags"
|
||||
echo " Macros: $defines"
|
||||
echo ""
|
||||
|
@@ -43,7 +43,6 @@
|
||||
<li><a href="install.html" target="_parent">Compiling / Installing</a>
|
||||
<ul>
|
||||
<li><a href="autoconf.html" target="_parent">Autoconf</a></li>
|
||||
<li><a href="meson.html" target="_parent">Meson</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="precompiled.html" target="_parent">Precompiled Libraries</a>
|
||||
|
@@ -130,6 +130,16 @@ mesa/demos repository.</p>
|
||||
runtime</p>
|
||||
|
||||
<dl>
|
||||
<dt><code>EGL_DRIVER</code></dt>
|
||||
<dd>
|
||||
|
||||
<p>This variable specifies a full path to or the name of an EGL driver. It
|
||||
forces the specified EGL driver to be loaded. It comes in handy when one wants
|
||||
to test a specific driver. This variable is ignored for setuid/setgid
|
||||
binaries.</p>
|
||||
|
||||
</dd>
|
||||
|
||||
<dt><code>EGL_PLATFORM</code></dt>
|
||||
<dd>
|
||||
|
||||
|
@@ -29,12 +29,12 @@ sometimes be useful for debugging end-user issues.
|
||||
<li>LIBGL_DEBUG - If defined debug information will be printed to stderr.
|
||||
If set to 'verbose' additional information will be printed.
|
||||
<li>LIBGL_DRIVERS_PATH - colon-separated list of paths to search for DRI drivers
|
||||
<li>LIBGL_ALWAYS_INDIRECT - if set to `true`, forces an indirect rendering context/connection.
|
||||
<li>LIBGL_ALWAYS_SOFTWARE - if set to `true`, always use software rendering
|
||||
<li>LIBGL_NO_DRAWARRAYS - if set to `true`, do not use DrawArrays GLX protocol (for debugging)
|
||||
<li>LIBGL_ALWAYS_INDIRECT - forces an indirect rendering context/connection.
|
||||
<li>LIBGL_ALWAYS_SOFTWARE - if set, always use software rendering
|
||||
<li>LIBGL_NO_DRAWARRAYS - if set do not use DrawArrays GLX protocol (for debugging)
|
||||
<li>LIBGL_SHOW_FPS - print framerate to stdout based on the number of glXSwapBuffers
|
||||
calls per second.
|
||||
<li>LIBGL_DRI3_DISABLE - disable DRI3 if set to `true`.
|
||||
<li>LIBGL_DRI3_DISABLE - disable DRI3 if set (the value does not matter)
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ sometimes be useful for debugging end-user issues.
|
||||
<li>MESA_NO_MMX - if set, disables Intel MMX optimizations
|
||||
<li>MESA_NO_3DNOW - if set, disables AMD 3DNow! optimizations
|
||||
<li>MESA_NO_SSE - if set, disables Intel SSE optimizations
|
||||
<li>MESA_NO_ERROR - if set to 1, error checking is disabled as per KHR_no_error.
|
||||
<li>MESA_NO_ERROR - if set error checking is disabled as per KHR_no_error.
|
||||
This will result in undefined behaviour for invalid use of the api, but
|
||||
can reduce CPU use for apps that are known to be error free.</li>
|
||||
<li>MESA_DEBUG - if set, error messages are printed to stderr. For example,
|
||||
@@ -88,40 +88,22 @@ This is a work-around for that.
|
||||
<li>MESA_GL_VERSION_OVERRIDE - changes the value returned by
|
||||
glGetString(GL_VERSION) and possibly the GL API type.
|
||||
<ul>
|
||||
<li>The format should be MAJOR.MINOR[FC|COMPAT]
|
||||
<li>FC is an optional suffix that indicates a forward compatible
|
||||
context. This is only valid for versions >= 3.0.
|
||||
<li>COMPAT is an optional suffix that indicates a compatibility
|
||||
context or GL_ARB_compatibility support. This is only valid for
|
||||
versions >= 3.1.
|
||||
<li>GL versions <= 3.0 are set to a compatibility (non-Core)
|
||||
profile
|
||||
<li>GL versions = 3.1, depending on the driver, it may or may not
|
||||
have the ARB_compatibility extension enabled.
|
||||
<li>GL versions >= 3.2 are set to a Core profile
|
||||
<li>Examples: 2.1, 3.0, 3.0FC, 3.1, 3.1FC, 3.1COMPAT, X.Y, X.YFC,
|
||||
X.YCOMPAT.
|
||||
<ul>
|
||||
<li>2.1 - select a compatibility (non-Core) profile with GL
|
||||
version 2.1.
|
||||
<li>3.0 - select a compatibility (non-Core) profile with GL
|
||||
version 3.0.
|
||||
<li>3.0FC - select a Core+Forward Compatible profile with GL
|
||||
version 3.0.
|
||||
<li>3.1 - select GL version 3.1 with GL_ARB_compatibility enabled
|
||||
per the driver default.
|
||||
<li>3.1FC - select GL version 3.1 with forward compatibility and
|
||||
GL_ARB_compatibility disabled.
|
||||
<li>3.1COMPAT - select GL version 3.1 with GL_ARB_compatibility
|
||||
enabled.
|
||||
<li>X.Y - override GL version to X.Y without changing the profile.
|
||||
<li>X.YFC - select a Core+Forward Compatible profile with GL
|
||||
version X.Y.
|
||||
<li>X.YCOMPAT - select a Compatibility profile with GL version
|
||||
X.Y.
|
||||
</ul>
|
||||
<li>Mesa may not really implement all the features of the given
|
||||
version. (for developers only)
|
||||
<li> The format should be MAJOR.MINOR[FC]
|
||||
<li> FC is an optional suffix that indicates a forward compatible context.
|
||||
This is only valid for versions >= 3.0.
|
||||
<li> GL versions < 3.0 are set to a compatibility (non-Core) profile
|
||||
<li> GL versions = 3.0, see below
|
||||
<li> GL versions > 3.0 are set to a Core profile
|
||||
<li> Examples: 2.1, 3.0, 3.0FC, 3.1, 3.1FC
|
||||
<ul>
|
||||
<li> 2.1 - select a compatibility (non-Core) profile with GL version 2.1
|
||||
<li> 3.0 - select a compatibility (non-Core) profile with GL version 3.0
|
||||
<li> 3.0FC - select a Core+Forward Compatible profile with GL version 3.0
|
||||
<li> 3.1 - select a Core profile with GL version 3.1
|
||||
<li> 3.1FC - select a Core+Forward Compatible profile with GL version 3.1
|
||||
</ul>
|
||||
<li> Mesa may not really implement all the features of the given version.
|
||||
(for developers only)
|
||||
</ul>
|
||||
<li>MESA_GLES_VERSION_OVERRIDE - changes the value returned by
|
||||
glGetString(GL_VERSION) for OpenGL ES.
|
||||
@@ -135,7 +117,7 @@ glGetString(GL_VERSION) for OpenGL ES.
|
||||
glGetString(GL_SHADING_LANGUAGE_VERSION). Valid values are integers, such as
|
||||
"130". Mesa will not really implement all the features of the given language version
|
||||
if it's higher than what's normally reported. (for developers only)
|
||||
<li>MESA_GLSL_CACHE_DISABLE - if set to `true`, disables the GLSL shader cache
|
||||
<li>MESA_GLSL_CACHE_DISABLE - if set, disables the GLSL shader cache
|
||||
<li>MESA_GLSL_CACHE_MAX_SIZE - if set, determines the maximum size of
|
||||
the on-disk cache of compiled GLSL programs. Should be set to a number
|
||||
optionally followed by 'K', 'M', or 'G' to specify a size in
|
||||
@@ -151,8 +133,6 @@ that variable is set), or else within .cache/mesa within the user's
|
||||
home directory.
|
||||
<li>MESA_GLSL - <a href="shading.html#envvars">shading language compiler options</a>
|
||||
<li>MESA_NO_MINMAX_CACHE - when set, the minmax index cache is globally disabled.
|
||||
<li>MESA_SHADER_CAPTURE_PATH - see <a href="shading.html#capture">Capturing Shaders</a></li>
|
||||
<li>MESA_SHADER_DUMP_PATH and MESA_SHADER_READ_PATH - see <a href="shading.html#replacement">Experimenting with Shader Replacements</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -210,13 +190,11 @@ See the <a href="xlibdriver.html">Xlib software driver page</a> for details.
|
||||
<li>perfmon - emit messages about AMD_performance_monitor</li>
|
||||
<li>pix - emit messages about pixel operations</li>
|
||||
<li>prim - emit messages about drawing primitives</li>
|
||||
<li>reemit - mark all state dirty on each draw call</li>
|
||||
<li>sf - emit messages about the strips & fans unit (for old gens, includes the SF program)</li>
|
||||
<li>shader_time - record how much GPU time is spent in each shader</li>
|
||||
<li>spill_fs - force spilling of all registers in the scalar backend (useful to debug spilling code)</li>
|
||||
<li>spill_vec4 - force spilling of all registers in the vec4 backend (useful to debug spilling code)</li>
|
||||
<li>state - emit messages about state flag tracking</li>
|
||||
<li>submit - emit batchbuffer usage statistics</li>
|
||||
<li>sync - after sending each batch, emit a message and wait for that batch to finish rendering</li>
|
||||
<li>tcs - dump shader assembly for tessellation control shaders</li>
|
||||
<li>tes - dump shader assembly for tessellation evaluation shaders</li>
|
||||
@@ -262,7 +240,7 @@ Mesa EGL supports different sets of environment variables. See the
|
||||
Use kill -10 <pid> to toggle the hud as desired.
|
||||
<li>GALLIUM_HUD_DUMP_DIR - specifies a directory for writing the displayed
|
||||
hud values into files.
|
||||
<li>GALLIUM_DRIVER - useful in combination with LIBGL_ALWAYS_SOFTWARE=true for
|
||||
<li>GALLIUM_DRIVER - useful in combination with LIBGL_ALWAYS_SOFTWARE=1 for
|
||||
choosing one of the software renderers "softpipe", "llvmpipe" or "swr".
|
||||
<li>GALLIUM_LOG_FILE - specifies a file for logging all errors, warnings, etc.
|
||||
rather than stderr.
|
||||
|
@@ -23,7 +23,7 @@ The specifications follow.
|
||||
|
||||
|
||||
<ul>
|
||||
<li><a href="specs/OLD/MESA_agp_offset.spec">MESA_agp_offset.spec</a>
|
||||
<li><a href="specs/MESA_agp_offset.spec">MESA_agp_offset.spec</a>
|
||||
<li><a href="specs/MESA_copy_sub_buffer.spec">MESA_copy_sub_buffer.spec</a>
|
||||
<li><a href="specs/MESA_drm_image.spec">MESA_drm_image.spec</a>
|
||||
<li><a href="specs/MESA_multithread_makecurrent.spec">MESA_multithread_makecurrent.spec</a>
|
||||
@@ -33,7 +33,7 @@ The specifications follow.
|
||||
<li><a href="specs/OLD/MESA_program_debug.spec">MESA_program_debug.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_release_buffers.spec">MESA_release_buffers.spec</a>
|
||||
<li><a href="specs/OLD/MESA_resize_buffers.spec">MESA_resize_buffers.spec</a> (obsolete)
|
||||
<li><a href="specs/OLD/MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</a>
|
||||
<li><a href="specs/MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</a>
|
||||
<li><a href="specs/MESA_shader_debug.spec">MESA_shader_debug.spec</a>
|
||||
<li><a href="specs/OLD/MESA_sprite_point.spec">MESA_sprite_point.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_swap_control.spec">MESA_swap_control.spec</a>
|
||||
|
@@ -102,7 +102,7 @@ GL 3.3, GLSL 3.30 --- all DONE: i965, nv50, nvc0, r600, radeonsi, llvmpipe, soft
|
||||
GL_ARB_shader_bit_encoding DONE (freedreno, swr)
|
||||
GL_ARB_texture_rgb10_a2ui DONE (freedreno, swr)
|
||||
GL_ARB_texture_swizzle DONE (freedreno, swr)
|
||||
GL_ARB_timer_query DONE (freedreno, swr)
|
||||
GL_ARB_timer_query DONE (swr)
|
||||
GL_ARB_instanced_arrays DONE (freedreno, swr)
|
||||
GL_ARB_vertex_type_2_10_10_10_rev DONE (freedreno, swr)
|
||||
|
||||
@@ -110,7 +110,7 @@ GL 3.3, GLSL 3.30 --- all DONE: i965, nv50, nvc0, r600, radeonsi, llvmpipe, soft
|
||||
GL 4.0, GLSL 4.00 --- all DONE: i965/gen7+, nvc0, r600, radeonsi
|
||||
|
||||
GL_ARB_draw_buffers_blend DONE (freedreno, i965/gen6+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_draw_indirect DONE (freedreno, i965/gen7+, llvmpipe, softpipe, swr)
|
||||
GL_ARB_draw_indirect DONE (i965/gen7+, llvmpipe, softpipe, swr)
|
||||
GL_ARB_gpu_shader5 DONE (i965/gen7+)
|
||||
- 'precise' qualifier DONE
|
||||
- Dynamically uniform sampler array indices DONE (softpipe)
|
||||
@@ -126,138 +126,122 @@ GL 4.0, GLSL 4.00 --- all DONE: i965/gen7+, nvc0, r600, radeonsi
|
||||
- New overload resolution rules DONE
|
||||
GL_ARB_gpu_shader_fp64 DONE (i965/gen7+, llvmpipe, softpipe)
|
||||
GL_ARB_sample_shading DONE (i965/gen6+, nv50)
|
||||
GL_ARB_shader_subroutine DONE (freedreno, i965/gen6+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_shader_subroutine DONE (i965/gen6+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_tessellation_shader DONE (i965/gen7+)
|
||||
GL_ARB_texture_buffer_object_rgb32 DONE (freedreno, i965/gen6+, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_buffer_object_rgb32 DONE (i965/gen6+, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_cube_map_array DONE (i965/gen6+, nv50, llvmpipe, softpipe)
|
||||
GL_ARB_texture_gather DONE (freedreno, i965/gen6+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_query_lod DONE (freedreno, i965, nv50, llvmpipe, softpipe)
|
||||
GL_ARB_texture_gather DONE (i965/gen6+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_query_lod DONE (i965, nv50, softpipe)
|
||||
GL_ARB_transform_feedback2 DONE (i965/gen6+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_transform_feedback3 DONE (i965/gen7+, llvmpipe, softpipe, swr)
|
||||
|
||||
|
||||
GL 4.1, GLSL 4.10 --- all DONE: i965/gen7+, nvc0, r600, radeonsi
|
||||
|
||||
GL_ARB_ES2_compatibility DONE (freedreno, i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_get_program_binary DONE (0 or 1 binary formats)
|
||||
GL_ARB_ES2_compatibility DONE (i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_get_program_binary DONE (0 binary formats)
|
||||
GL_ARB_separate_shader_objects DONE (all drivers)
|
||||
GL_ARB_shader_precision DONE (i965/gen7+, all drivers that support GLSL 4.10)
|
||||
GL_ARB_vertex_attrib_64bit DONE (i965/gen7+, llvmpipe, softpipe)
|
||||
GL_ARB_viewport_array DONE (i965, nv50, llvmpipe, softpipe)
|
||||
|
||||
|
||||
GL 4.2, GLSL 4.20 -- all DONE: i965/gen7+, nvc0, r600, radeonsi
|
||||
GL 4.2, GLSL 4.20 -- all DONE: i965/gen7+, nvc0, radeonsi
|
||||
|
||||
GL_ARB_texture_compression_bptc DONE (freedreno, i965)
|
||||
GL_ARB_texture_compression_bptc DONE (i965, r600)
|
||||
GL_ARB_compressed_texture_pixel_storage DONE (all drivers)
|
||||
GL_ARB_shader_atomic_counters DONE (freedreno/a5xx, i965, softpipe)
|
||||
GL_ARB_shader_atomic_counters DONE (i965, softpipe)
|
||||
GL_ARB_texture_storage DONE (all drivers)
|
||||
GL_ARB_transform_feedback_instanced DONE (freedreno, i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_base_instance DONE (freedreno, i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_shader_image_load_store DONE (freedreno/a5xx, i965, softpipe)
|
||||
GL_ARB_transform_feedback_instanced DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_base_instance DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_shader_image_load_store DONE (i965, softpipe)
|
||||
GL_ARB_conservative_depth DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_shading_language_420pack DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_shading_language_packing DONE (all drivers)
|
||||
GL_ARB_internalformat_query DONE (freedreno, i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_internalformat_query DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_map_buffer_alignment DONE (all drivers)
|
||||
|
||||
|
||||
GL 4.3, GLSL 4.30 -- all DONE: i965/gen8+, nvc0, r600, radeonsi
|
||||
GL 4.3, GLSL 4.30 -- all DONE: i965/gen8+, nvc0, radeonsi
|
||||
|
||||
GL_ARB_arrays_of_arrays DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_ES3_compatibility DONE (all drivers that support GLSL 3.30)
|
||||
GL_ARB_clear_buffer_object DONE (all drivers)
|
||||
GL_ARB_compute_shader DONE (freedreno/a5xx, i965, softpipe)
|
||||
GL_ARB_copy_image DONE (i965, nv50, softpipe, llvmpipe)
|
||||
GL_ARB_compute_shader DONE (i965, softpipe)
|
||||
GL_ARB_copy_image DONE (i965, nv50, r600, softpipe, llvmpipe)
|
||||
GL_KHR_debug DONE (all drivers)
|
||||
GL_ARB_explicit_uniform_location DONE (all drivers that support GLSL)
|
||||
GL_ARB_fragment_layer_viewport DONE (i965, nv50, llvmpipe, softpipe)
|
||||
GL_ARB_framebuffer_no_attachments DONE (freedreno, i965, softpipe)
|
||||
GL_ARB_fragment_layer_viewport DONE (i965, nv50, r600, llvmpipe, softpipe)
|
||||
GL_ARB_framebuffer_no_attachments DONE (i965, r600, softpipe)
|
||||
GL_ARB_internalformat_query2 DONE (all drivers)
|
||||
GL_ARB_invalidate_subdata DONE (all drivers)
|
||||
GL_ARB_multi_draw_indirect DONE (freedreno, i965, llvmpipe, softpipe, swr)
|
||||
GL_ARB_multi_draw_indirect DONE (i965, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_program_interface_query DONE (all drivers)
|
||||
GL_ARB_robust_buffer_access_behavior DONE (i965)
|
||||
GL_ARB_shader_image_size DONE (freedreno/a5xx, i965, softpipe)
|
||||
GL_ARB_shader_storage_buffer_object DONE (freedreno/a5xx, i965, softpipe)
|
||||
GL_ARB_stencil_texturing DONE (freedreno, i965/hsw+, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_buffer_range DONE (freedreno, nv50, i965, llvmpipe)
|
||||
GL_ARB_shader_image_size DONE (i965, softpipe)
|
||||
GL_ARB_shader_storage_buffer_object DONE (i965, softpipe)
|
||||
GL_ARB_stencil_texturing DONE (i965/hsw+, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_buffer_range DONE (nv50, i965, r600, llvmpipe)
|
||||
GL_ARB_texture_query_levels DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_texture_storage_multisample DONE (all drivers that support GL_ARB_texture_multisample)
|
||||
GL_ARB_texture_view DONE (freedreno, i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_view DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_vertex_attrib_binding DONE (all drivers)
|
||||
|
||||
|
||||
GL 4.4, GLSL 4.40 -- all DONE: i965/gen8+, nvc0, radeonsi
|
||||
|
||||
GL_MAX_VERTEX_ATTRIB_STRIDE DONE (all drivers)
|
||||
GL_ARB_buffer_storage DONE (freedreno, i965, nv50, r600, llvmpipe, swr)
|
||||
GL_ARB_buffer_storage DONE (i965, nv50, r600, llvmpipe, swr)
|
||||
GL_ARB_clear_texture DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_enhanced_layouts DONE (i965, nv50, r600, llvmpipe, softpipe)
|
||||
GL_ARB_enhanced_layouts DONE (i965, nv50, llvmpipe, softpipe)
|
||||
- compile-time constant expressions DONE
|
||||
- explicit byte offsets for blocks DONE
|
||||
- forced alignment within blocks DONE
|
||||
- specified vec4-slot component numbers DONE
|
||||
- specified vec4-slot component numbers DONE (i965, nv50, llvmpipe, softpipe)
|
||||
- specified transform/feedback layout DONE
|
||||
- input/output block locations DONE
|
||||
GL_ARB_multi_bind DONE (all drivers)
|
||||
GL_ARB_query_buffer_object DONE (i965/hsw+)
|
||||
GL_ARB_texture_mirror_clamp_to_edge DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_stencil8 DONE (freedreno, i965/hsw+, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_stencil8 DONE (i965/hsw+, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_vertex_type_10f_11f_11f_rev DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
|
||||
GL 4.5, GLSL 4.50 -- all DONE: nvc0, radeonsi
|
||||
|
||||
GL_ARB_ES3_1_compatibility DONE (i965/hsw+, r600)
|
||||
GL_ARB_clip_control DONE (freedreno, i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_conditional_render_inverted DONE (freedreno, i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_cull_distance DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_ES3_1_compatibility DONE (i965/hsw+)
|
||||
GL_ARB_clip_control DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_conditional_render_inverted DONE (i965, nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_cull_distance DONE (i965, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_derivative_control DONE (i965, nv50, r600)
|
||||
GL_ARB_direct_state_access DONE (all drivers)
|
||||
GL_ARB_get_texture_sub_image DONE (all drivers)
|
||||
GL_ARB_shader_texture_image_samples DONE (i965, nv50, r600)
|
||||
GL_ARB_texture_barrier DONE (freedreno, i965, nv50, r600)
|
||||
GL_ARB_texture_barrier DONE (i965, nv50, r600)
|
||||
GL_KHR_context_flush_control DONE (all - but needs GLX/EGL extension to be useful)
|
||||
GL_KHR_robustness DONE (i965)
|
||||
GL_EXT_shader_integer_mix DONE (all drivers that support GLSL)
|
||||
|
||||
GL 4.6, GLSL 4.60
|
||||
|
||||
GL_ARB_gl_spirv in progress (Nicolai Hähnle, Ian Romanick)
|
||||
GL_ARB_indirect_parameters DONE (i965/gen7+, nvc0, radeonsi)
|
||||
GL_ARB_pipeline_statistics_query DONE (i965, nvc0, r600, radeonsi, llvmpipe, softpipe, swr)
|
||||
GL_ARB_polygon_offset_clamp DONE (freedreno, i965, nv50, nvc0, r600, radeonsi, llvmpipe, swr)
|
||||
GL_ARB_shader_atomic_counter_ops DONE (freedreno/a5xx, i965/gen7+, nvc0, r600, radeonsi, softpipe)
|
||||
GL_ARB_shader_draw_parameters DONE (i965, nvc0, radeonsi)
|
||||
GL_ARB_shader_group_vote DONE (i965, nvc0, radeonsi)
|
||||
GL_ARB_spirv_extensions in progress (Nicolai Hähnle, Ian Romanick)
|
||||
GL_ARB_texture_filter_anisotropic DONE (freedreno, i965, nv50, nvc0, r600, radeonsi, softpipe (*), llvmpipe (*))
|
||||
GL_ARB_transform_feedback_overflow_query DONE (i965/gen6+, radeonsi, llvmpipe, softpipe)
|
||||
GL_KHR_no_error DONE (all drivers)
|
||||
|
||||
(*) softpipe and llvmpipe advertise 16x anisotropy but simply ignore the setting
|
||||
|
||||
These are the extensions cherry-picked to make GLES 3.1
|
||||
GLES3.1, GLSL ES 3.1 -- all DONE: i965/hsw+, nvc0, r600, radeonsi
|
||||
GLES3.1, GLSL ES 3.1 -- all DONE: i965/hsw+, nvc0, radeonsi
|
||||
|
||||
GL_ARB_arrays_of_arrays DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_compute_shader DONE (freedreno/a5xx, i965/gen7+, softpipe)
|
||||
GL_ARB_draw_indirect DONE (freedreno, i965/gen7+, llvmpipe, softpipe, swr)
|
||||
GL_ARB_compute_shader DONE (i965/gen7+, softpipe)
|
||||
GL_ARB_draw_indirect DONE (i965/gen7+, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_explicit_uniform_location DONE (all drivers that support GLSL)
|
||||
GL_ARB_framebuffer_no_attachments DONE (freedreno, i965/gen7+, softpipe)
|
||||
GL_ARB_framebuffer_no_attachments DONE (i965/gen7+, r600, softpipe)
|
||||
GL_ARB_program_interface_query DONE (all drivers)
|
||||
GL_ARB_shader_atomic_counters DONE (freedreno/a5xx, i965/gen7+, softpipe)
|
||||
GL_ARB_shader_image_load_store DONE (freedreno/a5xx, i965/gen7+, softpipe)
|
||||
GL_ARB_shader_image_size DONE (freedreno/a5xx, i965/gen7+, softpipe)
|
||||
GL_ARB_shader_storage_buffer_object DONE (freedreno/a5xx, i965/gen7+, softpipe)
|
||||
GL_ARB_shader_atomic_counters DONE (i965/gen7+, softpipe)
|
||||
GL_ARB_shader_image_load_store DONE (i965/gen7+, softpipe)
|
||||
GL_ARB_shader_image_size DONE (i965/gen7+, softpipe)
|
||||
GL_ARB_shader_storage_buffer_object DONE (i965/gen7+, softpipe)
|
||||
GL_ARB_shading_language_packing DONE (all drivers)
|
||||
GL_ARB_separate_shader_objects DONE (all drivers)
|
||||
GL_ARB_stencil_texturing DONE (freedreno, nv50, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_multisample (Multisample textures) DONE (i965/gen7+, nv50, llvmpipe, softpipe)
|
||||
GL_ARB_stencil_texturing DONE (nv50, r600, llvmpipe, softpipe, swr)
|
||||
GL_ARB_texture_multisample (Multisample textures) DONE (i965/gen7+, nv50, r600, llvmpipe, softpipe)
|
||||
GL_ARB_texture_storage_multisample DONE (all drivers that support GL_ARB_texture_multisample)
|
||||
GL_ARB_vertex_attrib_binding DONE (all drivers)
|
||||
GS5 Enhanced textureGather DONE (freedreno, i965/gen7+,)
|
||||
GS5 Packing/bitfield/conversion functions DONE (i965/gen6+)
|
||||
GS5 Enhanced textureGather DONE (i965/gen7+, r600)
|
||||
GS5 Packing/bitfield/conversion functions DONE (i965/gen6+, r600)
|
||||
GL_EXT_shader_integer_mix DONE (all drivers that support GLSL)
|
||||
|
||||
Additional functionality not covered above:
|
||||
@@ -272,7 +256,7 @@ GLES3.2, GLSL ES 3.2 -- all DONE: i965/gen9+
|
||||
GL_KHR_blend_equation_advanced DONE (i965, nvc0)
|
||||
GL_KHR_debug DONE (all drivers)
|
||||
GL_KHR_robustness DONE (i965, nvc0, radeonsi)
|
||||
GL_KHR_texture_compression_astc_ldr DONE (freedreno, i965/gen9+)
|
||||
GL_KHR_texture_compression_astc_ldr DONE (i965/gen9+)
|
||||
GL_OES_copy_image DONE (all drivers)
|
||||
GL_OES_draw_buffers_indexed DONE (all drivers that support GL_ARB_draw_buffers_blend)
|
||||
GL_OES_draw_elements_base_vertex DONE (all drivers)
|
||||
@@ -293,45 +277,47 @@ GLES3.2, GLSL ES 3.2 -- all DONE: i965/gen9+
|
||||
|
||||
Khronos, ARB, and OES extensions that are not part of any OpenGL or OpenGL ES version:
|
||||
|
||||
GL_ARB_bindless_texture DONE (nvc0, radeonsi)
|
||||
GL_ARB_bindless_texture DONE (radeonsi)
|
||||
GL_ARB_cl_event not started
|
||||
GL_ARB_compute_variable_group_size DONE (nvc0, radeonsi)
|
||||
GL_ARB_ES3_2_compatibility DONE (i965/gen8+)
|
||||
GL_ARB_fragment_shader_interlock not started
|
||||
GL_ARB_gl_spirv not started
|
||||
GL_ARB_gpu_shader_int64 DONE (i965/gen8+, nvc0, radeonsi, softpipe, llvmpipe)
|
||||
GL_ARB_indirect_parameters DONE (nvc0, radeonsi)
|
||||
GL_ARB_parallel_shader_compile not started, but Chia-I Wu did some related work in 2014
|
||||
GL_ARB_pipeline_statistics_query DONE (i965, nvc0, radeonsi, softpipe, swr)
|
||||
GL_ARB_post_depth_coverage DONE (i965)
|
||||
GL_ARB_robustness_isolation not started
|
||||
GL_ARB_sample_locations not started
|
||||
GL_ARB_seamless_cubemap_per_texture DONE (i965, nvc0, radeonsi, r600, softpipe, swr)
|
||||
GL_ARB_shader_atomic_counter_ops DONE (i965/gen7+, nvc0, radeonsi, softpipe)
|
||||
GL_ARB_shader_ballot DONE (i965/gen8+, nvc0, radeonsi)
|
||||
GL_ARB_shader_clock DONE (i965/gen7+, nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_shader_stencil_export DONE (i965/gen9+, r600, radeonsi, softpipe, llvmpipe, swr)
|
||||
GL_ARB_shader_clock DONE (i965/gen7+, nv50, nvc0, radeonsi)
|
||||
GL_ARB_shader_draw_parameters DONE (i965, nvc0, radeonsi)
|
||||
GL_ARB_shader_group_vote DONE (i965, nvc0, radeonsi)
|
||||
GL_ARB_shader_stencil_export DONE (i965/gen9+, radeonsi, softpipe, llvmpipe, swr)
|
||||
GL_ARB_shader_viewport_layer_array DONE (i965/gen6+, nvc0, radeonsi)
|
||||
GL_ARB_sparse_buffer DONE (radeonsi/CIK+)
|
||||
GL_ARB_sparse_texture not started
|
||||
GL_ARB_sparse_texture2 not started
|
||||
GL_ARB_sparse_texture_clamp not started
|
||||
GL_ARB_texture_filter_minmax not started
|
||||
GL_EXT_memory_object DONE (radeonsi)
|
||||
GL_EXT_memory_object_fd DONE (radeonsi)
|
||||
GL_EXT_memory_object_win32 not started
|
||||
GL_EXT_semaphore not started
|
||||
GL_EXT_semaphore_fd not started
|
||||
GL_EXT_semaphore_win32 not started
|
||||
GL_ARB_transform_feedback_overflow_query DONE (i965/gen6+)
|
||||
GL_KHR_blend_equation_advanced_coherent DONE (i965/gen9+)
|
||||
GL_KHR_no_error started (Timothy Arceri)
|
||||
GL_KHR_texture_compression_astc_hdr DONE (i965/bxt)
|
||||
GL_KHR_texture_compression_astc_sliced_3d DONE (i965/gen9+)
|
||||
GL_OES_depth_texture_cube_map DONE (all drivers that support GLSL 1.30+)
|
||||
GL_OES_EGL_image DONE (all drivers)
|
||||
GL_OES_EGL_image_external_essl3 not started
|
||||
GL_OES_required_internalformat DONE (all drivers)
|
||||
GL_OES_required_internalformat not started - GLES2 extension based on OpenGL ES 3.0 feature
|
||||
GL_OES_surfaceless_context DONE (all drivers)
|
||||
GL_OES_texture_compression_astc DONE (core only)
|
||||
GL_OES_texture_float DONE (freedreno, i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_float_linear DONE (freedreno, i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_half_float DONE (freedreno, i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_half_float_linear DONE (freedreno, i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_float DONE (i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_float_linear DONE (i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_half_float DONE (i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_half_float_linear DONE (i965, r300, r600, radeonsi, nv30, nv50, nvc0, softpipe, llvmpipe)
|
||||
GL_OES_texture_view not started - based on GL_ARB_texture_view
|
||||
GL_OES_viewport_array DONE (i965, nvc0, radeonsi)
|
||||
GLX_ARB_context_flush_control not started
|
||||
@@ -347,47 +333,6 @@ we DO NOT WANT implementations of these extensions for Mesa.
|
||||
GL_ARB_shadow_ambient Superseded by GL_ARB_fragment_program
|
||||
GL_ARB_vertex_blend Superseded by GL_ARB_vertex_program
|
||||
|
||||
Vulkan 1.0 -- all DONE: anv, radv
|
||||
|
||||
Khronos extensions that are not part of any Vulkan version:
|
||||
VK_KHR_16bit_storage in progress (Alejandro)
|
||||
VK_KHR_android_surface not started
|
||||
VK_KHR_dedicated_allocation DONE (anv, radv)
|
||||
VK_KHR_descriptor_update_template DONE (anv, radv)
|
||||
VK_KHR_display not started
|
||||
VK_KHR_display_swapchain not started
|
||||
VK_KHR_external_fence not started
|
||||
VK_KHR_external_fence_capabilities not started
|
||||
VK_KHR_external_fence_fd not started
|
||||
VK_KHR_external_fence_win32 not started
|
||||
VK_KHR_external_memory DONE (anv, radv)
|
||||
VK_KHR_external_memory_capabilities DONE (anv, radv)
|
||||
VK_KHR_external_memory_fd DONE (anv, radv)
|
||||
VK_KHR_external_memory_win32 not started
|
||||
VK_KHR_external_semaphore DONE (radv)
|
||||
VK_KHR_external_semaphore_capabilities DONE (radv)
|
||||
VK_KHR_external_semaphore_fd DONE (radv)
|
||||
VK_KHR_external_semaphore_win32 not started
|
||||
VK_KHR_get_memory_requirements2 DONE (anv, radv)
|
||||
VK_KHR_get_physical_device_properties2 DONE (anv, radv)
|
||||
VK_KHR_get_surface_capabilities2 DONE (anv)
|
||||
VK_KHR_incremental_present DONE (anv, radv)
|
||||
VK_KHR_maintenance1 DONE (anv, radv)
|
||||
VK_KHR_mir_surface not started
|
||||
VK_KHR_push_descriptor DONE (anv, radv)
|
||||
VK_KHR_sampler_mirror_clamp_to_edge DONE (anv, radv)
|
||||
VK_KHR_shader_draw_parameters DONE (anv, radv)
|
||||
VK_KHR_shared_presentable_image not started
|
||||
VK_KHR_storage_buffer_storage_class DONE (anv, radv)
|
||||
VK_KHR_surface DONE (anv, radv)
|
||||
VK_KHR_swapchain DONE (anv, radv)
|
||||
VK_KHR_variable_pointers DONE (anv, radv)
|
||||
VK_KHR_wayland_surface DONE (anv, radv)
|
||||
VK_KHR_win32_keyed_mutex not started
|
||||
VK_KHR_win32_surface not started
|
||||
VK_KHR_xcb_surface DONE (anv, radv)
|
||||
VK_KHR_xlib_surface DONE (anv, radv)
|
||||
|
||||
|
||||
A graphical representation of this information can be found at
|
||||
https://mesamatrix.net/
|
||||
|
@@ -35,8 +35,17 @@ There are plenty of open bugs in the <a href="https://bugs.freedesktop.org/descr
|
||||
Enable gcc -Wstrict-aliasing=2 -fstrict-aliasing and track down aliasing
|
||||
issues in the code.
|
||||
<li>
|
||||
<b>Windows driver building, testing and maintenance.</b>
|
||||
Fixing MSVC builds.
|
||||
<li>
|
||||
<b>Contribute more tests to
|
||||
<a href="https://piglit.freedesktop.org/">Piglit</a>.</b>
|
||||
<li>
|
||||
<b>Automatic testing.
|
||||
</b>
|
||||
It would be great if someone would set up an automated system for grabbing
|
||||
the latest Mesa code and run tests (such as piglit) then report issues to
|
||||
the mailing list.
|
||||
</ol>
|
||||
|
||||
<p>
|
||||
@@ -49,16 +58,24 @@ You can find some further To-do lists here:
|
||||
<ul>
|
||||
<li><a href="https://cgit.freedesktop.org/mesa/mesa/tree/docs/features.txt">
|
||||
<b>features.txt</b></a> - Status of OpenGL 3.x / 4.x features in Mesa.</li>
|
||||
<li><a href="https://dri.freedesktop.org/wiki/MissingFunctionality">
|
||||
<b>MissingFunctionality</b></a> - Detailed information about missing OpenGL features.</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
<b>Legacy Driver specific To-Do lists:</b>
|
||||
<b>Driver specific To-Do lists:</b>
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/docs/llvm-todo.txt">
|
||||
<b>LLVMpipe</b></a> - Software driver using LLVM for runtime code generation.</li>
|
||||
<li><a href="https://dri.freedesktop.org/wiki/RadeonsiToDo">
|
||||
<b>radeonsi</b></a> - Driver for AMD Southern Island.</li>
|
||||
<li><a href="https://dri.freedesktop.org/wiki/R600ToDo">
|
||||
<b>r600g</b></a> - Driver for ATI/AMD R600 - Northern Island.</li>
|
||||
<li><a href="https://dri.freedesktop.org/wiki/R300ToDo">
|
||||
<b>r300g</b></a> - Driver for ATI R300 - R500.</li>
|
||||
<li><a href="https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/i915/TODO">
|
||||
<b>i915g</b></a> - Driver for Intel i915/i945.</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
|
118
docs/index.html
118
docs/index.html
@@ -16,124 +16,6 @@
|
||||
|
||||
<h1>News</h1>
|
||||
|
||||
<h2>January 18, 2018</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.3.3.html">Mesa 17.3.3</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>January 8, 2018</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.3.2.html">Mesa 17.3.2</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>December 22, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.8.html">Mesa 17.2.8</a> is released.
|
||||
This is a bug-fix release.
|
||||
<br>
|
||||
NOTE: It is anticipated that 17.2.8 will be the final release in the
|
||||
17.2 series. Users of 17.2 are encouraged to migrate to the 17.3
|
||||
series in order to obtain future fixes.
|
||||
</p>
|
||||
|
||||
<h2>December 21, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.3.1.html">Mesa 17.3.1</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>December 14, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.7.html">Mesa 17.2.7</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>December 8, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.3.0.html">Mesa 17.3.0</a> is released. This is a
|
||||
new development release. See the release notes for more information
|
||||
about the release.
|
||||
</p>
|
||||
|
||||
<h2>November 25, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.6.html">Mesa 17.2.6</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>November 10, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.5.html">Mesa 17.2.5</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>October 30, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.4.html">Mesa 17.2.4</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>October 19, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.3.html">Mesa 17.2.3</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>October 2, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.2.html">Mesa 17.2.2</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>September 25, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.1.10.html">Mesa 17.1.10</a> is released.
|
||||
This is a bug-fix release.
|
||||
<br>
|
||||
NOTE: It is anticipated that 17.1.10 will be the final release in the
|
||||
17.1 series. Users of 17.1 are encouraged to migrate to the 17.2
|
||||
series in order to obtain future fixes.
|
||||
</p>
|
||||
|
||||
<h2>September 17, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.1.html">Mesa 17.2.1</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>September 8, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.1.9.html">Mesa 17.1.9</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>September 4, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.2.0.html">Mesa 17.2.0</a> is released. This is a
|
||||
new development release. See the release notes for more information
|
||||
about the release.
|
||||
</p>
|
||||
|
||||
<h2>August 28, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.1.8.html">Mesa 17.1.8</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>August 21, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.1.7.html">Mesa 17.1.7</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>August 7, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.1.6.html">Mesa 17.1.6</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>July 14, 2017</h2>
|
||||
<p>
|
||||
<a href="relnotes/17.1.5.html">Mesa 17.1.5</a> is released.
|
||||
|
@@ -59,7 +59,7 @@ to learn if it is thread safe.
|
||||
Indirect Rendering
|
||||
|
||||
You can force indirect rendering mode by setting the LIBGL_ALWAYS_INDIRECT
|
||||
environment variable to `true`. Hardware acceleration will not be used.
|
||||
environment variable. Hardware acceleration will not be used.
|
||||
|
||||
|
||||
|
||||
|
@@ -20,7 +20,7 @@
|
||||
The Gallium llvmpipe driver is a software rasterizer that uses LLVM to
|
||||
do runtime code generation.
|
||||
Shaders, point/line/triangle rasterization and vertex processing are
|
||||
implemented with LLVM IR which is translated to x86, x86-64, or ppc64le machine
|
||||
implemented with LLVM IR which is translated to x86 or x86-64 machine
|
||||
code.
|
||||
Also, the driver is multithreaded to take advantage of multiple CPU cores
|
||||
(up to 8 at this time).
|
||||
@@ -32,36 +32,24 @@ It's the fastest software rasterizer for Mesa.
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<p>An x86 or amd64 processor; 64-bit mode recommended.</p>
|
||||
<p>
|
||||
For x86 or amd64 processors, 64-bit mode is recommended.
|
||||
Support for SSE2 is strongly encouraged. Support for SSE3 and SSE4.1 will
|
||||
yield the most efficient code. The fewer features the CPU has the more
|
||||
likely it is that you will run into underperforming, buggy, or incomplete code.
|
||||
</p>
|
||||
<p>
|
||||
For ppc64le processors, use of the Altivec feature (the Vector
|
||||
Facility) is recommended if supported; use of the VSX feature (the
|
||||
Vector-Scalar Facility) is recommended if supported AND Mesa is
|
||||
built with LLVM version 4.0 or later.
|
||||
likely is that you run into underperforming, buggy, or incomplete code.
|
||||
</p>
|
||||
<p>
|
||||
See /proc/cpuinfo to know what your CPU supports.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>Unless otherwise stated, LLVM version 3.4 is recommended; 3.3 or later is required.</p>
|
||||
<p>LLVM: version 3.4 recommended; 3.3 or later required.</p>
|
||||
<p>
|
||||
For Linux, on a recent Debian based distribution do:
|
||||
</p>
|
||||
<pre>
|
||||
aptitude install llvm-dev
|
||||
</pre>
|
||||
<p>
|
||||
If you want development snapshot builds of LLVM for Debian and derived
|
||||
distributions like Ubuntu, you can use the APT repository at <a
|
||||
href="https://apt.llvm.org/" title="Debian Development packages for LLVM"
|
||||
>apt.llvm.org</a>, which are maintained by Debian's LLVM maintainer.
|
||||
</p>
|
||||
<p>
|
||||
For a RPM-based distribution do:
|
||||
</p>
|
||||
@@ -120,10 +108,10 @@ To build everything on Linux invoke scons as:
|
||||
scons build=debug libgl-xlib
|
||||
</pre>
|
||||
|
||||
Alternatively, you can build it with autoconf/make with:
|
||||
Alternatively, you can build it with GNU make, if you prefer, by invoking it as
|
||||
|
||||
<pre>
|
||||
./configure --enable-glx=gallium-xlib --with-gallium-drivers=swrast --disable-dri --disable-gbm --disable-egl
|
||||
make
|
||||
make linux-llvm
|
||||
</pre>
|
||||
|
||||
but the rest of these instructions assume that scons is used.
|
||||
@@ -240,8 +228,8 @@ build/linux-???-debug/gallium/drivers/llvmpipe:
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
Some of these tests can output results and benchmarks to a tab-separated file
|
||||
for later analysis, e.g.:
|
||||
Some of this tests can output results and benchmarks to a tab-separated-file
|
||||
for posterior analysis, e.g.:
|
||||
</p>
|
||||
<pre>
|
||||
build/linux-x86_64-debug/gallium/drivers/llvmpipe/lp_test_blend -o blend.tsv
|
||||
@@ -252,8 +240,8 @@ for later analysis, e.g.:
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
When looking at this code for the first time, start in lp_state_fs.c, and
|
||||
then skim through the lp_bld_* functions called there, and the comments
|
||||
When looking to this code by the first time start in lp_state_fs.c, and
|
||||
then skim through the lp_bld_* functions called in there, and the comments
|
||||
at the top of the lp_bld_*.c functions.
|
||||
</li>
|
||||
<li>
|
||||
|
168
docs/meson.html
168
docs/meson.html
@@ -1,168 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Compilation and Installation using Meson</title>
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Compilation and Installation using Meson</h1>
|
||||
|
||||
<h2 id="basic">1. Basic Usage</h2>
|
||||
|
||||
<p><strong>The Meson build system for Mesa is still under active development,
|
||||
and should not be used in production environments.</strong></p>
|
||||
|
||||
<p>The meson build is currently only tested on linux, and is known to not work
|
||||
on macOS, Windows, and haiku. This will be fixed.</p>
|
||||
|
||||
<p>
|
||||
The meson program is used to configure the source directory and generates
|
||||
either a ninja build file or Visual Studio® build files. The latter must
|
||||
be enabled via the --backend switch, as ninja is the default backend on all
|
||||
operating systems. Meson only supports out-of-tree builds, and must be passed a
|
||||
directory to put built and generated sources into. We'll call that directory
|
||||
"build" for examples.
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
meson build/
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
To see a description of your options you can run <code>meson configure</code>
|
||||
along with a build directory to view the selected options for. This will show
|
||||
your meson global arguments and project arguments, along with their defaults
|
||||
and your local settings.
|
||||
|
||||
Moes does not currently support listing options before configure a build
|
||||
directory, but this feature is being discussed upstream.
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
meson configure build/
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
With additional arguments <code>meson configure</code> is used to change
|
||||
options on already configured build directory. All options passed to this
|
||||
command are in the form -D "command"="value".
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
meson configure build/ -Dprefix=/tmp/install -Dglx=true
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
Once you've run the initial <code>meson</code> command successfully you can use
|
||||
your configured backend to build the project. With ninja, the -C option can be
|
||||
be used to point at a directory to build.
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
ninja -C build/
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
Without arguments, it will produce libGL.so and/or several other libraries
|
||||
depending on the options you have chosen. Later, if you want to rebuild for a
|
||||
different configuration, you should run <code>ninja clean</code> before
|
||||
changing the configuration, or create a new out of tree build directory for
|
||||
each configuration you want to build.
|
||||
|
||||
http://mesonbuild.com/Using-multiple-build-directories.html
|
||||
</p>
|
||||
|
||||
<dt><code>Environment Variables</code></dt>
|
||||
<dd><p>Meson supports the standard CC and CXX envrionment variables for
|
||||
changing the default compiler, and CFLAGS, CXXFLAGS, and LDFLAGS for setting
|
||||
options to the compiler and linker.
|
||||
|
||||
The default compilers depends on your operating system. Meson supports most of
|
||||
the popular compilers, a complete list is available
|
||||
<a href="http://mesonbuild.com/Reference-tables.html#compiler-ids">here</a>.
|
||||
|
||||
These arguments are consumed and stored by meson when it is initialized or
|
||||
re-initialized. Therefore passing them to meson configure will not do anything,
|
||||
and passing them to ninja will only do something if ninja decides to
|
||||
re-initialze meson, for example, if a meson.build file has been changed.
|
||||
Changing these variables will not cause all targets to be rebuilt, so running
|
||||
ninja clean is recomended when changing CFLAGS or CXXFLAGS. meson will never
|
||||
change compiler in a configured build directory.
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
CC=clang CXX=clang++ meson build-clang
|
||||
ninja -C build-clang
|
||||
ninja -C build-clang clean
|
||||
touch meson.build
|
||||
CFLAGS=-Wno-typedef-redefinition ninja -C build-clang
|
||||
</pre>
|
||||
|
||||
<p>Meson also honors DESTDIR for installs</p>
|
||||
</dd>
|
||||
|
||||
|
||||
<dt><code>LLVM</code></dt>
|
||||
<dd><p>Meson includes upstream logic to wrap llvm-config using it's standard
|
||||
dependncy interface. It will search $PATH (or %PATH% on windows) for
|
||||
llvm-config, so using an LLVM from a non-standard path is as easy as
|
||||
<code>PATH=/path/with/llvm-config:$PATH meson build</code>.
|
||||
</p></dd>
|
||||
</dl>
|
||||
|
||||
<dt><code>PKG_CONFIG_PATH</code></dt>
|
||||
<dd><p>The
|
||||
<code>pkg-config</code> utility is a hard requirement for configuring and
|
||||
building Mesa on Linux and *BSD. It is used to search for external libraries
|
||||
on the system. This environment variable is used to control the search
|
||||
path for <code>pkg-config</code>. For instance, setting
|
||||
<code>PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig</code> will search for
|
||||
package metadata in <code>/usr/X11R6</code> before the standard
|
||||
directories.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<p>
|
||||
One of the oddities of meson is that some options are different when passed to
|
||||
the <code>meson</code> than to <code>meson configure</code>. These options are
|
||||
passed as --option=foo to <code>meson</code>, but -Doption=foo to <code>meson
|
||||
configure</code>. Mesa defined options are always passed as -Doption=foo.
|
||||
<p>
|
||||
|
||||
<p>For those coming from autotools be aware of the following:</p>
|
||||
|
||||
<dl>
|
||||
<dt><code>--buildtype/-Dbuildtype</code></dt>
|
||||
<dd><p>This option will set the compiler debug/optimisation levels to aid
|
||||
debugging the Mesa libraries.</p>
|
||||
|
||||
<p>Note that in meson this defaults to "debugoptimized", and not setting it to
|
||||
"release" will yield non-optimal performance and binary size. Not using "debug"
|
||||
may interfer with debbugging as some code and validation will be optimized
|
||||
away.
|
||||
</p>
|
||||
|
||||
<p> For those wishing to pass their own -O option, use the "plain" buildtype,
|
||||
which cuases meson to inject no additional compiler arguments, only those in
|
||||
the C/CXXFLAGS and those that mesa itself defines.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt><code>-Db_ndebug</code></dt>
|
||||
<dd><p>This option controls assertions in meson projects. When set to false
|
||||
(the default) assertions are enabled, when set to true they are disabled. This
|
||||
is unrelated to the <code>buildtype</code>; setting the latter to
|
||||
<code>release</code> will not turn off assertions.
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
@@ -39,67 +39,54 @@ if you'd like to nominate a patch in the next stable release.
|
||||
<th>Notes</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="3">17.3</td>
|
||||
<td>2018-01-26</td>
|
||||
<td>17.3.4</td>
|
||||
<td rowspan="3">17.1</td>
|
||||
<td>2017-07-28</td>
|
||||
<td>17.1.6</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-02-09</td>
|
||||
<td>17.3.5</td>
|
||||
<td>2017-08-11</td>
|
||||
<td>17.1.7</td>
|
||||
<td>Juan A. Suarez Romero</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-02-23</td>
|
||||
<td>17.3.6</td>
|
||||
<td>Juan A. Suarez Romero</td>
|
||||
<td>Final planned release for the 17.3 series</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="7">18.0</td>
|
||||
<td>2018-01-19</td>
|
||||
<td>18.0.0-rc1</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-01-26</td>
|
||||
<td>18.0.0-rc2</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-02-02</td>
|
||||
<td>18.0.0-rc3</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-02-09</td>
|
||||
<td>18.0.0-rc4</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td>May be promoted to 18.0.0 final</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-02-23</td>
|
||||
<td>18.0.1</td>
|
||||
<td>2017-08-25</td>
|
||||
<td>17.1.8</td>
|
||||
<td>Andres Gomez</td>
|
||||
<td>Final planned release for the 17.1 series</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="5">17.2</td>
|
||||
<td>2017-07-21</td>
|
||||
<td>17.2.0-rc1</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-03-09</td>
|
||||
<td>18.0.2</td>
|
||||
<td>Andres Gomez</td>
|
||||
<td>2017-07-28</td>
|
||||
<td>17.2.0-rc2</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2018-03-23</td>
|
||||
<td>18.0.3</td>
|
||||
<td>Andres Gomez</td>
|
||||
<td>2017-08-04</td>
|
||||
<td>17.2.0-rc3</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2017-08-11</td>
|
||||
<td>17.2.0-rc4</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td>May be promoted to 17.2.0 final</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2017-08-25</td>
|
||||
<td>17.2.1</td>
|
||||
<td>Emil Velikov</td>
|
||||
<td></td>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
@@ -96,7 +96,7 @@ described in the same section.
|
||||
|
||||
<p>
|
||||
Nomination happens in the mesa-stable@ mailing list. However,
|
||||
maintainer is responsible of checking for forgotten candidates in the
|
||||
maintainer is resposible of checking for forgotten candidates in the
|
||||
master branch. This is achieved by a combination of ad-hoc scripts and
|
||||
a casual search for terms such as regression, fix, broken and similar.
|
||||
</p>
|
||||
@@ -272,11 +272,6 @@ It is followed by a brief period (normally 24 or 48 hours) before the actual
|
||||
release is made.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Be aware to add a note to warn about a final release in a series, if
|
||||
that is the case.
|
||||
</p>
|
||||
|
||||
<h2>Terminology used</h2>
|
||||
|
||||
<ul><li>Nominated</ul>
|
||||
@@ -316,10 +311,6 @@ The candidate for the Mesa X.Y.Z is now available. Currently we have:
|
||||
- NUMBER nominated (outstanding)
|
||||
- and NUMBER rejected patches
|
||||
|
||||
[If applicable:
|
||||
Note: this is the final anticipated release in the SERIES series. Users are
|
||||
encouraged to migrate to the NEXT_SERIES series in order to obtain future fixes.]
|
||||
|
||||
BRIEF SUMMARY OF CHANGES
|
||||
|
||||
Take a look at section "Mesa stable queue" for more information.
|
||||
@@ -383,9 +374,6 @@ Queued (NUMBER)
|
||||
|
||||
AUTHOR (NUMBER):
|
||||
COMMIT SUMMARY
|
||||
[If applicable:
|
||||
Squashed with
|
||||
COMMIT SUMMARY]
|
||||
|
||||
For example:
|
||||
|
||||
@@ -394,21 +382,16 @@ Jonas Pfeil (1):
|
||||
Squashed with
|
||||
ralloc: don't leave out the alignment factor
|
||||
|
||||
|
||||
Rejected (NUMBER)
|
||||
=================
|
||||
|
||||
Rejected (11)
|
||||
=============
|
||||
|
||||
AUTHOR (NUMBER):
|
||||
SHA COMMIT SUMMARY
|
||||
|
||||
Reason: ...
|
||||
|
||||
For example:
|
||||
|
||||
Emil Velikov (1)
|
||||
a39ad18 configure.ac: honour LLVM_LIBDIR when linking against LLVM
|
||||
|
||||
Reason: The patch was reverted shortly after it was merged.
|
||||
</pre>
|
||||
|
||||
|
||||
@@ -445,7 +428,6 @@ Here is one solution that I've been using.
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
# Set MAKEFLAGS if you haven't already
|
||||
git clean -fXd; git clean -nxd
|
||||
read # quick cross check any outstanding files
|
||||
export __version=`cat VERSION`
|
||||
@@ -454,12 +436,9 @@ Here is one solution that I've been using.
|
||||
chmod 755 -fR $__build_root; rm -rf $__build_root
|
||||
mkdir -p $__build_root && cd $__build_root
|
||||
|
||||
# For the native builds - such as distcheck, scons, sanity test, you
|
||||
# may want to specify which LLVM to use:
|
||||
# For the distcheck, you may want to specify which LLVM to use:
|
||||
# export LLVM_CONFIG=/usr/lib/llvm-3.9/bin/llvm-config
|
||||
|
||||
# Do a full distcheck
|
||||
$__mesa_root/autogen.sh && make distcheck
|
||||
$__mesa_root/autogen.sh && make -j2 distcheck
|
||||
|
||||
# Build check the tarballs (scons, linux)
|
||||
tar -xaf mesa-$__version.tar.xz && cd mesa-$__version
|
||||
@@ -467,31 +446,27 @@ Here is one solution that I've been using.
|
||||
cd .. && rm -rf mesa-$__version
|
||||
|
||||
# Build check the tarballs (scons, windows/mingw)
|
||||
# Temporary drop LLVM_CONFIG, unless you have a Windows/mingw one.
|
||||
# save_LLVM_CONFIG=`echo $LLVM_CONFIG`; unset LLVM_CONFIG
|
||||
# You may need to unset LLVM if you set it before:
|
||||
# unset LLVM_CONFIG
|
||||
tar -xaf mesa-$__version.tar.xz && cd mesa-$__version
|
||||
scons platform=windows toolchain=crossmingw
|
||||
cd .. && rm -rf mesa-$__version
|
||||
|
||||
# Test the automake binaries
|
||||
# Restore LLVM_CONFIG, if applicable:
|
||||
# export LLVM_CONFIG=`echo $save_LLVM_CONFIG`; unset save_LLVM_CONFIG
|
||||
tar -xaf mesa-$__version.tar.xz && cd mesa-$__version
|
||||
# You may want to specify which LLVM to use:
|
||||
./configure \
|
||||
--with-dri-drivers=i965,swrast \
|
||||
--with-gallium-drivers=swrast \
|
||||
--with-vulkan-drivers=intel \
|
||||
--enable-llvm-shared-libs \
|
||||
--enable-llvm \
|
||||
--with-llvm-prefix=/usr/lib/llvm-3.9 \
|
||||
--enable-glx-tls \
|
||||
--enable-gbm \
|
||||
--enable-egl \
|
||||
--with-platforms=x11,drm,wayland,surfaceless
|
||||
make && DESTDIR=`pwd`/test make install
|
||||
|
||||
# Drop LLVM_CONFIG, if applicable:
|
||||
# unset LLVM_CONFIG
|
||||
|
||||
make -j2 && DESTDIR=`pwd`/test make -j6 install
|
||||
__glxinfo_cmd='glxinfo 2>&1 | egrep -o "Mesa.*|Gallium.*|.*dri\.so"'
|
||||
__glxgears_cmd='glxgears 2>&1 | grep -v "configuration file"'
|
||||
__es2info_cmd='es2_info 2>&1 | egrep "GL_VERSION|GL_RENDERER|.*dri\.so"'
|
||||
@@ -504,12 +479,12 @@ Here is one solution that I've been using.
|
||||
eval $__glxgears_cmd
|
||||
eval $__es2info_cmd
|
||||
eval $__es2gears_cmd
|
||||
export LIBGL_ALWAYS_SOFTWARE=true
|
||||
export LIBGL_ALWAYS_SOFTWARE=1
|
||||
eval $__glxinfo_cmd
|
||||
eval $__glxgears_cmd
|
||||
eval $__es2info_cmd
|
||||
eval $__es2gears_cmd
|
||||
export LIBGL_ALWAYS_SOFTWARE=true
|
||||
export LIBGL_ALWAYS_SOFTWARE=1
|
||||
export GALLIUM_DRIVER=softpipe
|
||||
eval $__glxinfo_cmd
|
||||
eval $__glxgears_cmd
|
||||
@@ -521,10 +496,8 @@ Here is one solution that I've been using.
|
||||
unset LIBGL_DRIVERS_PATH
|
||||
unset LIBGL_DEBUG
|
||||
unset LIBGL_ALWAYS_SOFTWARE
|
||||
unset GALLIUM_DRIVER
|
||||
export VK_ICD_FILENAMES=`pwd`/src/intel/vulkan/dev_icd.json
|
||||
steam steam://rungameid/570 -vconsole -vulkan
|
||||
unset VK_ICD_FILENAMES
|
||||
</pre>
|
||||
|
||||
<h3>Update version in file VERSION</h3>
|
||||
@@ -603,8 +576,7 @@ Something like the following steps will do the trick:
|
||||
|
||||
<p>
|
||||
Also, edit docs/relnotes.html to add a link to the new release notes,
|
||||
edit docs/index.html to add a news entry and a note in case of the
|
||||
last release in a series, and remove the version from
|
||||
edit docs/index.html to add a news entry, and remove the version from
|
||||
docs/release-calendar.html. Then commit and push:
|
||||
</p>
|
||||
|
||||
@@ -620,11 +592,6 @@ docs/release-calendar.html. Then commit and push:
|
||||
Use the generated template during the releasing process.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Again, pay attention to add a note to warn about a final release in a
|
||||
series, if that is the case.
|
||||
</p>
|
||||
|
||||
|
||||
<h1 id="website">Update the mesa3d.org website</h1>
|
||||
|
||||
|
@@ -21,24 +21,6 @@ The release notes summarize what's new or changed in each Mesa release.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="relnotes/17.3.2.html">17.3.3 release notes</a>
|
||||
<li><a href="relnotes/17.3.2.html">17.3.2 release notes</a>
|
||||
<li><a href="relnotes/17.2.8.html">17.2.8 release notes</a>
|
||||
<li><a href="relnotes/17.3.1.html">17.3.1 release notes</a>
|
||||
<li><a href="relnotes/17.2.7.html">17.2.7 release notes</a>
|
||||
<li><a href="relnotes/17.3.0.html">17.3.0 release notes</a>
|
||||
<li><a href="relnotes/17.2.6.html">17.2.6 release notes</a>
|
||||
<li><a href="relnotes/17.2.5.html">17.2.5 release notes</a>
|
||||
<li><a href="relnotes/17.2.4.html">17.2.4 release notes</a>
|
||||
<li><a href="relnotes/17.2.3.html">17.2.3 release notes</a>
|
||||
<li><a href="relnotes/17.2.2.html">17.2.2 release notes</a>
|
||||
<li><a href="relnotes/17.1.10.html">17.1.10 release notes</a>
|
||||
<li><a href="relnotes/17.2.1.html">17.2.1 release notes</a>
|
||||
<li><a href="relnotes/17.1.9.html">17.1.9 release notes</a>
|
||||
<li><a href="relnotes/17.2.0.html">17.2.0 release notes</a>
|
||||
<li><a href="relnotes/17.1.8.html">17.1.8 release notes</a>
|
||||
<li><a href="relnotes/17.1.7.html">17.1.7 release notes</a>
|
||||
<li><a href="relnotes/17.1.6.html">17.1.6 release notes</a>
|
||||
<li><a href="relnotes/17.1.5.html">17.1.5 release notes</a>
|
||||
<li><a href="relnotes/17.1.4.html">17.1.4 release notes</a>
|
||||
<li><a href="relnotes/17.1.3.html">17.1.3 release notes</a>
|
||||
|
@@ -1,155 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.1.10 Release Notes / September 25, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.1.10 is a bug fix release which fixes bugs found since the 17.1.9 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.1.10 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
a48ce6b643a728b2b0f926151930525b3670fbff1fb688527fd9051eab9f30a4 mesa-17.1.10.tar.gz
|
||||
cbc0d681cc4df47d8deb5a36f45b420978128522fd665b2cd4c7096316f11bdb mesa-17.1.10.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102844">Bug 102844</a> - memory leak with glDeleteProgram for shader program type GL_COMPUTE_SHADER</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Alexandre Demers (1):</p>
|
||||
<ul>
|
||||
<li>osmesa: link with libunwind if enabled (v2)</li>
|
||||
</ul>
|
||||
|
||||
<p>Andres Gomez (12):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.1.9</li>
|
||||
<li>cherry-ignore: add "st/mesa: skip draw calls with pipe_draw_info::count == 0"</li>
|
||||
<li>cherry-ignore: add "radv: use amdgpu_bo_va_op_raw."</li>
|
||||
<li>cherry-ignore: add "radv: use simpler indirect packet 3 if possible."</li>
|
||||
<li>cherry-ignore: add "radeonsi: don't always apply the PrimID instancing bug workaround on SI"</li>
|
||||
<li>cherry-ignore: add "intel/eu/validate: Look up types on demand in execution_type()"</li>
|
||||
<li>cherry-ignore: add "radv: gfx9 fixes"</li>
|
||||
<li>cherry-ignore: add "radv/gfx9: set mip0-depth correctly for 2d arrays/3d images"</li>
|
||||
<li>cherry-ignore: add "radv/gfx9: fix image resource handling."</li>
|
||||
<li>cherry-ignore: add "docs/egl: remove reference to EGL_DRIVERS_PATH"</li>
|
||||
<li>cherry-ignore: add "radv: Disable multilayer & multilevel DCC."</li>
|
||||
<li>cherry-ignore: add "radv: Don't allocate CMASK for linear images."</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (2):</p>
|
||||
<ul>
|
||||
<li>radv/ac: bump params array for image atomic comp swap</li>
|
||||
<li>st/glsl->tgsi: fix u64 to bool comparisons.</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (2):</p>
|
||||
<ul>
|
||||
<li>egl/x11/dri3: adding missing __DRI_BACKGROUND_CALLABLE extension</li>
|
||||
<li>automake: enable libunwind in `make distcheck'</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (3):</p>
|
||||
<ul>
|
||||
<li>broadcom/vc4: Fix use-after-free for flushing when writing to a texture.</li>
|
||||
<li>broadcom/vc4: Fix use-after-free trying to mix a quad and tile clear.</li>
|
||||
<li>broadcom/vc4: Fix use-after-free when deleting a program.</li>
|
||||
</ul>
|
||||
|
||||
<p>George Kyriazis (1):</p>
|
||||
<ul>
|
||||
<li>swr: invalidate attachment on transition change</li>
|
||||
</ul>
|
||||
|
||||
<p>Gert Wollny (2):</p>
|
||||
<ul>
|
||||
<li>travis: force llvm-3.3 for "make Gallium ST Other"</li>
|
||||
<li>travis: Add libunwind-dev to gallium/make builds</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (1):</p>
|
||||
<ul>
|
||||
<li>i965/blorp: Set r8stencil_needs_update when writing stencil</li>
|
||||
</ul>
|
||||
|
||||
<p>Juan A. Suarez Romero (9):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore: add "ac/surface: match Z and stencil tile config"</li>
|
||||
<li>cherry-ignore: add "radv/nir: call opt_remove_phis after trivial continues."</li>
|
||||
<li>cherry-ignore: add "amd/common: add workaround for cube map array layer clamping"</li>
|
||||
<li>cherry-ignore: add "radeonsi: workaround for gather4 on integer cube maps"</li>
|
||||
<li>cherry-ignore: add "Scons: Add LLVM 5.0 support"</li>
|
||||
<li>cherry-ignore: add "ac/surface: handle S8 on gfx9"</li>
|
||||
<li>cherry-ignore: add "radv: Check for GFX9 for 1D arrays in image_size intrinsic."</li>
|
||||
<li>cherry-ignore: add "glsl/linker: fix output variable overlap check"</li>
|
||||
<li>Update version to 17.1.10</li>
|
||||
</ul>
|
||||
|
||||
<p>Józef Kucia (1):</p>
|
||||
<ul>
|
||||
<li>anv: Fix descriptors copying</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (2):</p>
|
||||
<ul>
|
||||
<li>util: Link libmesautil into u_atomic_test</li>
|
||||
<li>util/u_atomic: Add implementation of __sync_val_compare_and_swap_8</li>
|
||||
</ul>
|
||||
|
||||
<p>Nicolai Hähnle (1):</p>
|
||||
<ul>
|
||||
<li>radeonsi: apply a mask to gl_SampleMaskIn in the PS prolog</li>
|
||||
</ul>
|
||||
|
||||
<p>Nicolai Hähnle (4):</p>
|
||||
<ul>
|
||||
<li>st/glsl_to_tgsi: only the first (inner-most) array reference can be a 2D index</li>
|
||||
<li>amd/common: round cube array slice in ac_prepare_cube_coords</li>
|
||||
<li>radeonsi: set MIP_POINT_PRECLAMP to 0</li>
|
||||
<li>radeonsi: fix array textures layer coordinate</li>
|
||||
</ul>
|
||||
|
||||
<p>Tapani Pälli (1):</p>
|
||||
<ul>
|
||||
<li>mesa: free current ComputeProgram state in _mesa_free_context_data</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,225 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.1.6 Release Notes / August 7, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.1.6 is a bug fix release which fixes bugs found since the 17.1.5 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.1.6 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
971831bc1e748b3e8367eee6b9eb509bad2970e3c2f8520ad25f5caa12ca5491 mesa-17.1.6.tar.gz
|
||||
0686deadde1f126b20aa67e47e8c50502043eee4ecdf60d5009ffda3cebfee50 mesa-17.1.6.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97957">Bug 97957</a> - Awful screen tearing in a separate X server with DRI3</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101683">Bug 101683</a> - Some games hang while loading when compositing is shut off or absent</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101867">Bug 101867</a> - Launch options window renders black in Feral Games in current Mesa trunk</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Andres Gomez (1):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.1.5</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (1):</p>
|
||||
<ul>
|
||||
<li>radv: Don't underflow non-visible VRAM size.</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (1):</p>
|
||||
<ul>
|
||||
<li>svga: fix texture swizzle writemasking</li>
|
||||
</ul>
|
||||
|
||||
<p>Chad Versace (1):</p>
|
||||
<ul>
|
||||
<li>anv/image: Fix VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT</li>
|
||||
</ul>
|
||||
|
||||
<p>Chris Wilson (1):</p>
|
||||
<ul>
|
||||
<li>i965: Resolve framebuffers before signaling the fence</li>
|
||||
</ul>
|
||||
|
||||
<p>Connor Abbott (1):</p>
|
||||
<ul>
|
||||
<li>nir: fix algebraic optimizations</li>
|
||||
</ul>
|
||||
|
||||
<p>Daniel Stone (1):</p>
|
||||
<ul>
|
||||
<li>st/dri: Check get-handle return value in queryImage</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (5):</p>
|
||||
<ul>
|
||||
<li>radv: fix non-0 based layer clears.</li>
|
||||
<li>radv: fix buffer views on SI/CIK.</li>
|
||||
<li>radv/ac: realign SI workaround with radeonsi.</li>
|
||||
<li>radv/ac: port SI TC L1 write corruption fix.</li>
|
||||
<li>radv: for stencil only set Z tile mode index to same value</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (23):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore: add "anv: Round u_vector element sizes to a power of two"</li>
|
||||
<li>anv: advertise v6 of the wayland surface extension</li>
|
||||
<li>radv: advertise v6 of the wayland surface extension</li>
|
||||
<li>swrast: add dri2ConfigQueryExtension to the correct extension list</li>
|
||||
<li>cherry-ignore: add "anv: Transition MCS buffers from the undefined layout"</li>
|
||||
<li>swr: don't forget to link AVX/AVX2 against pthreads</li>
|
||||
<li>cherry-ignore: add "i965: Fix offset addition in get_isl_surf"</li>
|
||||
<li>cherry-ignore: add "i965: Fix = vs == in MCS aux usage assert."</li>
|
||||
<li>cherry-ignore: add a couple of radeon commits</li>
|
||||
<li>cherry-ignore: add "swr/rast: non-regex knob fallback code for gcc < 4.9"</li>
|
||||
<li>cherry-ignore: add "swr: fix transform feedback logic"</li>
|
||||
<li>cherry-ignore: add a couple of radeonsi/gfx9 commits</li>
|
||||
<li>cherry-ignore: ignore reverted st/mesa commit</li>
|
||||
<li>cherry-ignore: add bindless textures fix</li>
|
||||
<li>cherry-ignore: add "st/glsl_to_tgsi: fix getting the image type for array of structs"</li>
|
||||
<li>cherry-ignore: add yet another bindless textures fix</li>
|
||||
<li>bin/cherry-ignore: add radeonsi "fix of a fix"</li>
|
||||
<li>travis: lower SWR requirement to GCC 4.8, aka std=c++11</li>
|
||||
<li>i965: use strtol to convert the integer deviceID override</li>
|
||||
<li>swr: remove unneeded fallback strcasecmp define</li>
|
||||
<li>cherry-ignore: add a bunch more commits to the list</li>
|
||||
<li>fixup! cherry-ignore: add a bunch more commits to the list</li>
|
||||
<li>Update version to 17.1.6</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>broadcom/vc4: Prefer blit via rendering to the software fallback.</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Engestrom (1):</p>
|
||||
<ul>
|
||||
<li>configure: only install khrplatform.h if needed</li>
|
||||
</ul>
|
||||
|
||||
<p>Iago Toral Quiroga (2):</p>
|
||||
<ul>
|
||||
<li>anv/cmd_buffer: fix off by one error in assertion</li>
|
||||
<li>anv: only expose up to 28 vertex attributes</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (1):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: fix threads calculation for non-compute shaders</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (5):</p>
|
||||
<ul>
|
||||
<li>anv/cmd_buffer: Properly handle render passes with 0 attachments</li>
|
||||
<li>anv: Stop leaking the no_aux sampler surface state</li>
|
||||
<li>anv/image: Add INPUT_ATTACHMENT to the list of required usages</li>
|
||||
<li>nir/vars_to_ssa: Handle missing struct members in foreach_deref_node</li>
|
||||
<li>spirv: Fix SpvImageFormatR16ui</li>
|
||||
</ul>
|
||||
|
||||
<p>Juan A. Suarez Romero (2):</p>
|
||||
<ul>
|
||||
<li>anv/pipeline: use unsigned long long constant to check enable vertex inputs</li>
|
||||
<li>anv/pipeline: do not use BITFIELD64_BIT()</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (1):</p>
|
||||
<ul>
|
||||
<li>nir: Use nir_src_copy instead of direct assignments.</li>
|
||||
</ul>
|
||||
|
||||
<p>Lionel Landwerlin (1):</p>
|
||||
<ul>
|
||||
<li>i965: perf: flush batchbuffers at the beginning of queries</li>
|
||||
</ul>
|
||||
|
||||
<p>Lucas Stach (1):</p>
|
||||
<ul>
|
||||
<li>etnaviv: fix memory leak when BO allocation fails</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (2):</p>
|
||||
<ul>
|
||||
<li>st/mesa: always unconditionally revalidate main framebuffer after SwapBuffers</li>
|
||||
<li>gallium/radeon: make S_FIXED function signed and move it to shared code</li>
|
||||
</ul>
|
||||
|
||||
<p>Mark Thompson (1):</p>
|
||||
<ul>
|
||||
<li>st/va: Fix scaling list ordering for H.265</li>
|
||||
</ul>
|
||||
|
||||
<p>Nicolai Hähnle (4):</p>
|
||||
<ul>
|
||||
<li>radeonsi/gfx9: fix crash building monolithic merged ES-GS shader</li>
|
||||
<li>radeonsi: fix detection of DRAW_INDIRECT_MULTI on SI</li>
|
||||
<li>radeonsi/gfx9: reduce max threads per block to 1024 on gfx9+</li>
|
||||
<li>gallium/radeon: fix ARB_query_buffer_object conversion to boolean</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (2):</p>
|
||||
<ul>
|
||||
<li>loader/dri3: Use dri3_find_back in loader_dri3_swap_buffers_msc</li>
|
||||
<li>dri3: Wait for all pending swapbuffers to be scheduled before touching the front</li>
|
||||
</ul>
|
||||
|
||||
<p>Tim Rowley (3):</p>
|
||||
<ul>
|
||||
<li>gallium/util: fix nondeterministic avx512 detection</li>
|
||||
<li>swr/rast: quit using linux-specific gettid()</li>
|
||||
<li>swr/rast: fix scons gen_knobs.h dependency</li>
|
||||
</ul>
|
||||
|
||||
<p>Timothy Arceri (1):</p>
|
||||
<ul>
|
||||
<li>nir: fix nir_opt_copy_prop_vars() for arrays of arrays</li>
|
||||
</ul>
|
||||
|
||||
<p>Wladimir J. van der Laan (1):</p>
|
||||
<ul>
|
||||
<li>etnaviv: Clear lbl_usage array correctly</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,148 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.1.7 Release Notes / August 21, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.1.7 is a bug fix release which fixes bugs found since the 17.1.6 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.1.7 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
7ca484fe3194e8185d9a20261845bfd284cc40d0f3fda690d317f85ac7b91af5 mesa-17.1.7.tar.gz
|
||||
69f472a874b1122404fa0bd13e2d6bf87eb3b9ad9c21d2f39872a96d83d9e5f5 mesa-17.1.7.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101334">Bug 101334</a> - AMD SI cards: Some vulkan apps freeze the system</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101766">Bug 101766</a> - Assertion `!"invalid type"' failed when constant expression involves literal of different type</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102024">Bug 102024</a> - FORMAT_FEATURE_SAMPLED_IMAGE_BIT not supported for D16_UNORM and D32_SFLOAT</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102148">Bug 102148</a> - Crash when running qopenglwidget example on mesa llvmpipe win32</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102241">Bug 102241</a> - gallium/wgl: SwapBuffers freezing regularly with swap interval enabled</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Andres Gomez (8):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore: add "swr: use the correct variable for no undefined symbols"</li>
|
||||
<li>cherry-ignore: add "radeon/ac: use ds_swizzle for derivs on si/cik."</li>
|
||||
<li>cherry-ignore: add "configure: remove trailing "-a" in swr architecture teststable: 17.2 nomination only."</li>
|
||||
<li>cherry-ignore: added 17.2 nominations.</li>
|
||||
<li>cherry-ignore: add "radv: Handle VK_ATTACHMENT_UNUSED in color attachments."</li>
|
||||
<li>cherry-ignore: add "virgl: drop precise modifier."</li>
|
||||
<li>cherry-ignore: add "radv: handle 10-bit format clamping workaround."</li>
|
||||
<li>Update version to 17.1.7</li>
|
||||
</ul>
|
||||
|
||||
<p>Chris Wilson (1):</p>
|
||||
<ul>
|
||||
<li>i965/blit: Remember to include miptree buffer offset in relocs</li>
|
||||
</ul>
|
||||
|
||||
<p>Connor Abbott (1):</p>
|
||||
<ul>
|
||||
<li>ac/nir: fix lsb emission</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (5):</p>
|
||||
<ul>
|
||||
<li>intel/vec4/gs: reset nr_pull_param if DUAL_INSTANCED compile failed.</li>
|
||||
<li>radv: avoid GPU hangs if someone does a resolve with non-multisample src (v2)</li>
|
||||
<li>radv: fix f16->f32 denorm handling for SI/CIK. (v2)</li>
|
||||
<li>radv: fix MSAA on SI gpus.</li>
|
||||
<li>radv: force cs/ps/l2 flush at end of command stream. (v2)</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.1.6</li>
|
||||
<li>egl/x11: don't leak xfixes_query in the error path</li>
|
||||
<li>egl: avoid eglCreatePlatform*Surface{EXT,} crash with invalid dpy</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>util: Fix build on old glibc.</li>
|
||||
</ul>
|
||||
|
||||
<p>Frank Richter (3):</p>
|
||||
<ul>
|
||||
<li>st/mesa: fix a null pointer access</li>
|
||||
<li>st/wgl: check for negative delta in wait_swap_interval()</li>
|
||||
<li>gallium/os: fix os_time_get_nano() to roll over less</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (3):</p>
|
||||
<ul>
|
||||
<li>glsl/ast: update rhs in addition to the var's constant_value</li>
|
||||
<li>nv50/ir: fix srcMask computation for TG4 and TXF</li>
|
||||
<li>nv50/ir: fix TXQ srcMask</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (1):</p>
|
||||
<ul>
|
||||
<li>anv/formats: Allow sampling on depth-only formats on gen7</li>
|
||||
</ul>
|
||||
|
||||
<p>Karol Herbst (1):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: fix ConstantFolding with saturation</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (1):</p>
|
||||
<ul>
|
||||
<li>i965: Delete pitch alignment assertion in get_blit_intratile_offset_el.</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (2):</p>
|
||||
<ul>
|
||||
<li>ac: fail shader compilation if libelf is replaced by an incompatible version</li>
|
||||
<li>radeonsi: disable CE by default</li>
|
||||
</ul>
|
||||
|
||||
<p>Tim Rowley (1):</p>
|
||||
<ul>
|
||||
<li>swr/rast: Fix invalid casting for calls to Interlocked* functions</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,115 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.1.8 Release Notes / August 28, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.1.8 is a bug fix release which fixes bugs found since the 17.1.7 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.1.8 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
faa59a677e88fd5224cdfebcdb6ca9ad3e3c64bd562baa8d5c3c1faeef1066b6 mesa-17.1.8.tar.gz
|
||||
75ed2eaeae26ddd536150f294386468ae2e1a7717948c41cd14b7875be5269db mesa-17.1.8.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101910">Bug 101910</a> - [BYT] ES31-CTS.functional.copy_image.non_compressed.viewclass_96_bits.rgb32f_rgb32f</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102308">Bug 102308</a> - segfault in glCompressedTextureSubImage3D</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Andres Gomez (6):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.1.7</li>
|
||||
<li>cherry-ignore: cherry-ignore: added 17.2 nominations.</li>
|
||||
<li>cherry-ignore: add "i965/tex: Don't pass samples to miptree_create_for_teximage"</li>
|
||||
<li>cherry-ignore: add "i965: Make a BRW_NEW_FAST_CLEAR_COLOR dirty bit."</li>
|
||||
<li>cherry-ignore: add "egl/drm: Fix misused x and y offsets in swrast_*_image*"</li>
|
||||
<li>Update version to 17.1.8</li>
|
||||
</ul>
|
||||
|
||||
<p>Christoph Haag (1):</p>
|
||||
<ul>
|
||||
<li>mesa: only copy requested compressed teximage cubemap faces</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (1):</p>
|
||||
<ul>
|
||||
<li>radv: don't crash if we have no framebuffer</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (2):</p>
|
||||
<ul>
|
||||
<li>glsl: add a few missing int64 constant propagation cases</li>
|
||||
<li>nv50/ir: properly set sType for TXF ops to U32</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (1):</p>
|
||||
<ul>
|
||||
<li>i965: Stop looking at NewDriverState when emitting 3DSTATE_URB</li>
|
||||
</ul>
|
||||
|
||||
<p>Kai Chen (1):</p>
|
||||
<ul>
|
||||
<li>egl/wayland: Use roundtrips when awaiting buffer release</li>
|
||||
</ul>
|
||||
|
||||
<p>Lionel Landwerlin (1):</p>
|
||||
<ul>
|
||||
<li>i965: perf: minimize the chances to spread queries across batchbuffers</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (1):</p>
|
||||
<ul>
|
||||
<li>radeonsi/gfx9: add a temporary workaround for a tessellation driver bug</li>
|
||||
</ul>
|
||||
|
||||
<p>Tim Rowley (1):</p>
|
||||
<ul>
|
||||
<li>swr/rast: switch gen_knobs.cpp license</li>
|
||||
</ul>
|
||||
|
||||
<p>Topi Pohjolainen (1):</p>
|
||||
<ul>
|
||||
<li>intel/blorp: Adjust intra-tile x when faking rgb with red-only</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,144 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.1.9 Release Notes / September 8, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.1.9 is a bug fix release which fixes bugs found since the 17.1.8 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.1.9 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
4325401b07b5f44759da781bc8d7c0a4a7244e09a702d16c037090986e07ee22 mesa-17.1.9.tar.gz
|
||||
5f51ad94341696097d5df7b838183534478216858ac0fc8de183671a36ffea1a mesa-17.1.9.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=100613">Bug 100613</a> - Regression in Mesa 17 on s390x (zSystems)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102454">Bug 102454</a> - glibc 2.26 doesn't provide anymore xlocale.h</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102467">Bug 102467</a> - src/mesa/state_tracker/st_cb_readpixels.c:178]: (warning) Redundant assignment</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Andres Gomez (8):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.1.8</li>
|
||||
<li>cherry-ignore: added 17.2 nominations.</li>
|
||||
<li>cherry-ignore: add "nir: Fix system_value_from_intrinsic for subgroups"</li>
|
||||
<li>cherry-ignore: add "i965: Fix crash in fallback GTT mapping."</li>
|
||||
<li>cherry-ignore: add "radeonsi/gfx9: always flush DB metadata on framebuffer changes"</li>
|
||||
<li>cherry-ignore: add "radv: Fix vkCopyImage with both depth and stencil aspects."</li>
|
||||
<li>cherry-ignore: add "radeonsi/gfx9: proper workaround for LS/HS VGPR initialization bug"</li>
|
||||
<li>Update version to 17.1.9</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (3):</p>
|
||||
<ul>
|
||||
<li>radv: Fix off by one in MAX_VBS assert.</li>
|
||||
<li>radv: Fix sparse BO mapping merging.</li>
|
||||
<li>radv: Actually set the cmd_buffer usage_flags.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ben Crocker (1):</p>
|
||||
<ul>
|
||||
<li>llvmpipe: lp_build_gather_elem_vec BE fix for 3x16 load</li>
|
||||
</ul>
|
||||
|
||||
<p>Charmaine Lee (1):</p>
|
||||
<ul>
|
||||
<li>vbo: fix offset in minmax cache key</li>
|
||||
</ul>
|
||||
|
||||
<p>Christian Gmeiner (1):</p>
|
||||
<ul>
|
||||
<li>etnaviv: use correct param for etna_compatible_rs_format(..)</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>egl: don't NULL deref the .get_capabilities function pointer</li>
|
||||
<li>egl/wayland: plug leaks in dri2_wl_create_window_surface() error path</li>
|
||||
<li>egl/wayland: polish object teardown in dri2_wl_destroy_surface</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Engestrom (1):</p>
|
||||
<ul>
|
||||
<li>util: improve compiler guard</li>
|
||||
</ul>
|
||||
|
||||
<p>Grazvydas Ignotas (2):</p>
|
||||
<ul>
|
||||
<li>radv: clear dynamic_shader_stages on create</li>
|
||||
<li>radv: don't assert on empty hash table</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (2):</p>
|
||||
<ul>
|
||||
<li>glsl: fix counting of vertex shader output slots used by explicit vars</li>
|
||||
<li>st/mesa: fix handling of vertex array double inputs</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (2):</p>
|
||||
<ul>
|
||||
<li>anv/formats: Nicely handle unknown VkFormat enums</li>
|
||||
<li>spirv: Add support for the HelperInvocation builtin</li>
|
||||
</ul>
|
||||
|
||||
<p>Karol Herbst (1):</p>
|
||||
<ul>
|
||||
<li>nvc0: write 0 to pipeline_statistics.cs_invocations</li>
|
||||
</ul>
|
||||
|
||||
<p>Michael Olbrich (1):</p>
|
||||
<ul>
|
||||
<li>egl/dri2: only destroy created objects</li>
|
||||
</ul>
|
||||
|
||||
<p>Ray Strode (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: correct channel shift logic on big endian</li>
|
||||
</ul>
|
||||
|
||||
<p>Roland Scheidegger (1):</p>
|
||||
<ul>
|
||||
<li>st/mesa: fix view template initialization in try_pbo_readpixels</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -31,8 +31,7 @@ because compatibility contexts are not supported.
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
25b40e72fad64b096c2d8d6fe9579369954debe7970d4ad53e5033c7eec2918b mesa-17.2.5.tar.gz
|
||||
7f7f914b7b9ea0b15f2d9d01a4375e311b0e90e55683b8e8a67ce8691eb1070f mesa-17.2.5.tar.xz
|
||||
TBD
|
||||
</pre>
|
||||
|
||||
|
||||
|
@@ -1,187 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.2.6 Release Notes / November 25, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.2.6 is a bug fix release which fixes bugs found since the 17.2.5 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.2.6 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
a9ed76702ffb14ad674ad48899f5c8c7e3a0f987911878a5dfdc4117dce5b415 mesa-17.2.6.tar.gz
|
||||
6ad85224620330be26ab68c8fc78381b12b38b610ade2db8716b38faaa8f30de mesa-17.2.6.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=100438">Bug 100438</a> - glsl/ir.cpp:1376: ir_dereference_variable::ir_dereference_variable(ir_variable*): Assertion `var != NULL' failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102177">Bug 102177</a> - [SKL] ES31-CTS.core.sepshaderobjs.StateInteraction fails sporadically</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103115">Bug 103115</a> - [BSW BXT GLK] dEQP-VK.spirv_assembly.instruction.compute.sconvert.int32_to_int64</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103519">Bug 103519</a> - wayland egl apps crash on start with mesa 17.2</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103529">Bug 103529</a> - [GM45] GPU hang with mpv fullscreen (bisected)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103628">Bug 103628</a> - [BXT, GLK, BSW] KHR-GL46.shader_ballot_tests.ShaderBallotBitmasks</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103787">Bug 103787</a> - [BDW,BSW] gpu hang on spec.arb_pipeline_statistics_query.arb_pipeline_statistics_query-comp</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
<p>Adam Jackson (2):</p>
|
||||
<ul>
|
||||
<li>glx/drisw: Fix glXMakeCurrent(dpy, None, ctx)</li>
|
||||
<li>glx/dri3: Fix passing renderType into glXCreateContext</li>
|
||||
</ul>
|
||||
|
||||
<p>Alex Smith (2):</p>
|
||||
<ul>
|
||||
<li>spirv: Use correct type for sampled images</li>
|
||||
<li>nir/spirv: tg4 requires a sampler</li>
|
||||
</ul>
|
||||
|
||||
<p>Andres Gomez (14):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.2.5</li>
|
||||
<li>cherry-ignore: intel/fs: Use a pure vertical stride for large register strides</li>
|
||||
<li>cherry-ignore: intel/nir: Use the correct indirect lowering masks in link_shaders</li>
|
||||
<li>cherry-ignore: intel/fs: Use the original destination region for int MUL lowering</li>
|
||||
<li>cherry-ignore: intel/fs: refactors</li>
|
||||
<li>cherry-ignore: r600/shader: reserve first register of vertex shader.</li>
|
||||
<li>cherry-ignore: anv/cmd_buffer: Advance the address when initializing clear colors</li>
|
||||
<li>cherry-ignore: anv/cmd_buffer: Take bo_offset into account in fast clear state addresses</li>
|
||||
<li>cherry-ignore: i965: Mark BOs as external when we export their handle</li>
|
||||
<li>cherry-ignore: added 17.3 nominations.</li>
|
||||
<li>cherry-ignore: glsl: Fix typo fragement -> fragment</li>
|
||||
<li>cherry-ignore: egl: pass the dri2_dpy to the $plat_teardown functions</li>
|
||||
<li>cherry-ignore: Revert "intel/fs: Use a pure vertical stride for large register strides"</li>
|
||||
<li>Update version to 17.2.6</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (2):</p>
|
||||
<ul>
|
||||
<li>i965: Program DWord Length in MI_FLUSH_DW</li>
|
||||
<li>i965/gen8+: Fix the number of dwords programmed in MI_FLUSH_DW</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (2):</p>
|
||||
<ul>
|
||||
<li>radv: Free syncobj with multiple imports.</li>
|
||||
<li>radv: Free temporary syncobj after waiting on it.</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (1):</p>
|
||||
<ul>
|
||||
<li>r600: fix isoline tess factor component swapping.</li>
|
||||
</ul>
|
||||
|
||||
<p>Derek Foreman (1):</p>
|
||||
<ul>
|
||||
<li>egl/wayland: Add a fallback when fourcc query isn't supported</li>
|
||||
</ul>
|
||||
|
||||
<p>Dylan Baker (1):</p>
|
||||
<ul>
|
||||
<li>autotools: Set C++ visibility flags on Intel</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>targets/opencl: don't hardcode the icd file install to /etc/...</li>
|
||||
<li>configure.ac: loosen --enable-glvnd check to honour egl</li>
|
||||
<li>configure.ac: require xcb* for the omx/va/... when using x11 platform</li>
|
||||
</ul>
|
||||
|
||||
<p>George Barrett (1):</p>
|
||||
<ul>
|
||||
<li>glsl: Catch subscripted calls to undeclared subroutines</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (9):</p>
|
||||
<ul>
|
||||
<li>intel/fs: Use ANY/ALL32 predicates in SIMD32</li>
|
||||
<li>intel/fs: Use an explicit D type for vote any/all/eq intrinsics</li>
|
||||
<li>intel/fs: Use a pair of 1-wide MOVs instead of SEL for any/all</li>
|
||||
<li>intel/eu/reg: Add a subscript() helper</li>
|
||||
<li>intel/fs: Fix MOV_INDIRECT for 64-bit values on little-core</li>
|
||||
<li>intel/fs: Fix integer multiplication lowering for src/dst hazards</li>
|
||||
<li>intel/fs: Mark 64-bit values as being contiguous</li>
|
||||
<li>intel/fs: Rework zero-length URB write handling</li>
|
||||
<li>i965: Add stencil buffers to cache set regardless of stencil texturing</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (5):</p>
|
||||
<ul>
|
||||
<li>i965: properly initialize brw->cs.base.stage to MESA_SHADER_COMPUTE</li>
|
||||
<li>i965: Make L3 configuration atom listen for TCS/TES program updates.</li>
|
||||
<li>intel/tools: Fix detection of enabled shader stages.</li>
|
||||
<li>i965: Implement another VF cache invalidate workaround on Gen8+.</li>
|
||||
<li>i965: Upload invariant state once at the start of the batch on Gen4-5.</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (2):</p>
|
||||
<ul>
|
||||
<li>i965/fs: Fix extract_i8/u8 to a 64-bit destination</li>
|
||||
<li>i965/fs: Split all 32->64-bit MOVs on CHV, BXT, GLK</li>
|
||||
</ul>
|
||||
|
||||
<p>Neil Roberts (1):</p>
|
||||
<ul>
|
||||
<li>glsl: Transform fb buffers are only active if a variable uses them</li>
|
||||
</ul>
|
||||
|
||||
<p>Nicolai Hähnle (1):</p>
|
||||
<ul>
|
||||
<li>ddebug: fix use-after-free of streamout targets</li>
|
||||
</ul>
|
||||
|
||||
<p>Tim Rowley (2):</p>
|
||||
<ul>
|
||||
<li>swr/rast: Use gather instruction for i32gather_ps on simd16/avx512</li>
|
||||
<li>swr/rast: Faster emulated simd16 permute</li>
|
||||
</ul>
|
||||
|
||||
<p>Timothy Arceri (3):</p>
|
||||
<ul>
|
||||
<li>glsl: drop cache_fallback</li>
|
||||
<li>glsl: use the correct parent when allocating program data members</li>
|
||||
<li>mesa: rework how we free gl_shader_program_data</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,247 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.2.7 Release Notes / December 14, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.2.7 is a bug fix release which fixes bugs found since the 17.2.6 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.2.7 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
e8d837a1cd55014e636e9caf6c75cfbe1b3e4be9ab3fa125f5ef38398aa12e97 mesa-17.2.7.tar.gz
|
||||
50cfdea8df55045797b4d0409591c04c784d9551c4da09b8178874dbe5a37a68 mesa-17.2.7.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94739">Bug 94739</a> - Mesa 11.1.2 implementation error: bad format MESA_FORMAT_Z_FLOAT32 in _mesa_unpack_uint_24_8_depth_stencil_row</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101378">Bug 101378</a> - interpolateAtSample check for input parameter is too strict</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102006">Bug 102006</a> - gstreamer vaapih264enc segfault</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102435">Bug 102435</a> - [skl,kbl] [drm] GPU HANG: ecode 9:0:0x86df7cf9, in csgo_linux64 [4947], reason: Hang on rcs, action: reset</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102552">Bug 102552</a> - Null dereference due to not checking return value of util_format_description</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102677">Bug 102677</a> - [OpenGL CTS] KHR-GL45.CommonBugs.CommonBug_PerVertexValidation fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103098">Bug 103098</a> - [OpenGL CTS] KHR-GL45.enhanced_layouts.varying_structure_locations fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103227">Bug 103227</a> - [G965 G45 ILK] ES2-CTS.gtf.GL2ExtensionTests.texture_float.texture_float regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103393">Bug 103393</a> - glDispatchComputeGroupSizeARB : gl_GlobalInvocationID.x != gl_WorkGroupID.x * gl_LocalGroupSizeARB.x + gl_LocalInvocationID.x</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103412">Bug 103412</a> - gallium/wgl: Another fix to context creation without prior SetPixelFormat()</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103616">Bug 103616</a> - Increased difference from reference image in shaders</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103626">Bug 103626</a> - [SNB] ES3-CTS.functional.shaders.precision</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103732">Bug 103732</a> - [swr] often gets stuck in piglit's glx-multi-context-single-window test</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103909">Bug 103909</a> - anv_allocator.c:113:1: error: static declaration of ‘memfd_create’ follows non-static declaration</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103966">Bug 103966</a> - Mesa 17.2.5 implementation error: bad format MESA_FORMAT_Z_FLOAT32 in _mesa_unpack_uint_24_8_depth_stencil_row</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104119">Bug 104119</a> - radv: OpBitFieldInsert produces 0 with a loop counter for Insert</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104143">Bug 104143</a> - r600/sb: clobbers gl_Position -> gl_FragCoord</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Alex Smith (1):</p>
|
||||
<ul>
|
||||
<li>radv: Add LLVM version to the device name string</li>
|
||||
</ul>
|
||||
|
||||
<p>Andres Gomez (2):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.2.6</li>
|
||||
<li>docs: remove bug 103626 from fix list as per 17.2.6</li>
|
||||
</ul>
|
||||
|
||||
<p>Ben Crocker (2):</p>
|
||||
<ul>
|
||||
<li>docs/llvmpipe.html: Minor edits</li>
|
||||
<li>docs/llvmpipe: document ppc64le as alternative architecture to x86.</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (1):</p>
|
||||
<ul>
|
||||
<li>r600/sb: handle jump after target to end of program. (v2)</li>
|
||||
</ul>
|
||||
|
||||
<p>Denis Pauk (1):</p>
|
||||
<ul>
|
||||
<li>gallium/{r600, radeonsi}: Fix segfault with color format (v2)</li>
|
||||
</ul>
|
||||
|
||||
<p>Eduardo Lima Mitev (3):</p>
|
||||
<ul>
|
||||
<li>glsl_parser_extra: Add utility to copy symbols between symbol tables</li>
|
||||
<li>glsl: Use the utility function to copy symbols between symbol tables</li>
|
||||
<li>glsl/linker: Check that re-declared, inter-shader built-in blocks match</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>gl_table.py: add extern C guard for the generated glapitable.h</li>
|
||||
<li>cherry-ignore: radeonsi: allow DMABUF exports for local buffers</li>
|
||||
<li>Update version to 17.2.7</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>broadcom/vc4: Fix handling of GFXH-515 workaround with a start vertex count.</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Engestrom (1):</p>
|
||||
<ul>
|
||||
<li>compiler: use NDEBUG to guard asserts</li>
|
||||
</ul>
|
||||
|
||||
<p>Fabian Bieler (2):</p>
|
||||
<ul>
|
||||
<li>glsl: Match order of gl_LightSourceParameters elements.</li>
|
||||
<li>glsl: Fix gl_NormalScale.</li>
|
||||
</ul>
|
||||
|
||||
<p>Frank Richter (1):</p>
|
||||
<ul>
|
||||
<li>gallium/wgl: fix default pixel format issue</li>
|
||||
</ul>
|
||||
|
||||
<p>George Kyriazis (1):</p>
|
||||
<ul>
|
||||
<li>swr: Handle resource across context changes</li>
|
||||
</ul>
|
||||
|
||||
<p>Gert Wollny (2):</p>
|
||||
<ul>
|
||||
<li>r600: Emit EOP for more CF instruction types</li>
|
||||
<li>r600/sb: do not convert if-blocks that contain indirect array access</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (1):</p>
|
||||
<ul>
|
||||
<li>glsl: fix derived cs variables</li>
|
||||
</ul>
|
||||
|
||||
<p>James Legg (1):</p>
|
||||
<ul>
|
||||
<li>nir/opcodes: Fix constant-folding of bitfield_insert</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (1):</p>
|
||||
<ul>
|
||||
<li>i965: Disable regular fast-clears (CCS_D) on gen9+</li>
|
||||
</ul>
|
||||
|
||||
<p>Juan A. Suarez Romero (1):</p>
|
||||
<ul>
|
||||
<li>glsl: add varying resources for arrays of complex types</li>
|
||||
</ul>
|
||||
|
||||
<p>Julien Isorce (1):</p>
|
||||
<ul>
|
||||
<li>st/va: change frame_idx from array to hash table</li>
|
||||
</ul>
|
||||
|
||||
<p>Kai Wasserbäch (1):</p>
|
||||
<ul>
|
||||
<li>docs: Point to apt.llvm.org for development snapshot packages</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (3):</p>
|
||||
<ul>
|
||||
<li>meta: Initialize depth/clear values on declaration.</li>
|
||||
<li>meta: Fix ClearTexture with GL_DEPTH_COMPONENT.</li>
|
||||
<li>i965: Fix Smooth Point Enables.</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (3):</p>
|
||||
<ul>
|
||||
<li>radeonsi: fix layered DCC fast clear</li>
|
||||
<li>radeonsi/gfx9: fix importing shared textures with DCC</li>
|
||||
<li>radeonsi: flush the context after resource_copy_region for buffer exports</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (4):</p>
|
||||
<ul>
|
||||
<li>i965/fs: Handle negating immediates on MADs when propagating saturates</li>
|
||||
<li>util: Fix SHA1 implementation on big endian</li>
|
||||
<li>util: Fix disk_cache index calculation on big endian</li>
|
||||
<li>i965/fs: Unpack count argument to 64-bit shift ops on Atom</li>
|
||||
</ul>
|
||||
|
||||
<p>Nicolai Hähnle (3):</p>
|
||||
<ul>
|
||||
<li>radeonsi: fix the R600_RESOURCE_FLAG_UNMAPPABLE check</li>
|
||||
<li>glsl: allow any l-value of an input variable as interpolant in interpolateAt*</li>
|
||||
<li>glsl: fix interpolateAtXxx(some_vec[idx], ...) with dynamic idx</li>
|
||||
</ul>
|
||||
|
||||
<p>Pierre Moreau (1):</p>
|
||||
<ul>
|
||||
<li>nvc0/ir: Properly lower 64-bit shifts when the shift value is >32</li>
|
||||
</ul>
|
||||
|
||||
<p>Tapani Pälli (1):</p>
|
||||
<ul>
|
||||
<li>mesa/gles: adjust internal format in glTexSubImage2D error checks</li>
|
||||
</ul>
|
||||
|
||||
<p>Timothy Arceri (1):</p>
|
||||
<ul>
|
||||
<li>glsl: get correct member type when processing xfb ifc arrays</li>
|
||||
</ul>
|
||||
|
||||
<p>Vadym Shovkoplias (2):</p>
|
||||
<ul>
|
||||
<li>intel/blorp: Fix possible NULL pointer dereferencing</li>
|
||||
<li>glx/dri3: Remove unused deviceName variable</li>
|
||||
</ul>
|
||||
|
||||
<p>Vinson Lee (1):</p>
|
||||
<ul>
|
||||
<li>anv: Check if memfd_create is already defined.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,112 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.2.8 Release Notes / December 22, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.2.8 is a bug fix release which fixes bugs found since the 17.2.7 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.2.8 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
c715c3a3d6fe26a69c096f573ec416e038a548f0405e3befedd5136517527a84 mesa-17.2.8.tar.gz
|
||||
6e940345cceaadfd805d701ed2b956589fa77fe8c39991da30ed51ea6b9d095f mesa-17.2.8.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102710">Bug 102710</a> - vkCmdBlitImage with arrayLayers > 1 fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103007">Bug 103007</a> - [OpenGL CTS] [HSW] KHR-GL45.gpu_shader_fp64.fp64.max_uniform_components fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103544">Bug 103544</a> - Graphical glitches r600 in game this war of mine linux native</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103579">Bug 103579</a> - Vertex shader causes compiler to crash in SPIRV-to-NIR</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Andres Gomez (6):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore: swr: Fix KNOB_MAX_WORKER_THREADS thread creation override.</li>
|
||||
<li>cherry-ignore: added 17.3 nominations.</li>
|
||||
<li>cherry-ignore: radv: port merge tess info from anv</li>
|
||||
<li>cherry-ignore: main: Clear shader program data whenever ProgramBinary is called</li>
|
||||
<li>cherry-ignore: r600: set DX10_CLAMP for compute shader too</li>
|
||||
<li>Update version to 17.2.8</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (2):</p>
|
||||
<ul>
|
||||
<li>spirv: Fix loading an entire block at once.</li>
|
||||
<li>radv: Fix multi-layer blits.</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (2):</p>
|
||||
<ul>
|
||||
<li>xlib: call _mesa_warning() instead of fprintf()</li>
|
||||
<li>gallium/aux: include nr_samples in util_resource_size() computation</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (1):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.2.7</li>
|
||||
</ul>
|
||||
|
||||
<p>Iago Toral Quiroga (1):</p>
|
||||
<ul>
|
||||
<li>i965/vec4: use a temp register to compute offsets for pull loads</li>
|
||||
</ul>
|
||||
|
||||
<p>Leo Liu (1):</p>
|
||||
<ul>
|
||||
<li>radeon/vce: move destroy command before feedback command</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (2):</p>
|
||||
<ul>
|
||||
<li>util: Assume little endian in the absence of platform-specific handling</li>
|
||||
<li>util: Add a SHA1 unit test program</li>
|
||||
</ul>
|
||||
|
||||
<p>Roland Scheidegger (2):</p>
|
||||
<ul>
|
||||
<li>r600: use min_dx10/max_dx10 instead of min/max</li>
|
||||
<li>r600: use DX10_CLAMP bit in shader setup</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,246 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.3.0 Release Notes / December 8. 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.3.0 is a new development release.
|
||||
People who are concerned with stability and reliability should stick
|
||||
with a previous release or wait for Mesa 17.3.1.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.3.0 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
0cb1ffe2b4637d80f08df3bdfeb300352dcffd8ff4f6711278639b084e3f07f9 mesa-17.3.0.tar.gz
|
||||
29a0a3a6c39990d491a1a58ed5c692e596b3bfc6c01d0b45e0b787116c50c6d9 mesa-17.3.0.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
|
||||
<p>
|
||||
Note: some of the new features are only available with certain drivers.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>libtxc_dxtn is now integrated into Mesa. GL_EXT_texture_compression_s3tc and GL_ANGLE_texture_compression_dxt are now always enabled on drivers that support them</li>
|
||||
<li>GL_ARB_indirect_parameters on i965/gen7+</li>
|
||||
<li>GL_ARB_polygon_offset_clamp on i965, nv50, nvc0, r600, radeonsi, llvmpipe, swr</li>
|
||||
<li>GL_ARB_transform_feedback_overflow_query on radeonsi</li>
|
||||
<li>GL_ARB_texture_filter_anisotropic on i965, nv50, nvc0, r600, radeonsi</li>
|
||||
<li>GL_EXT_memory_object on radeonsi</li>
|
||||
<li>GL_EXT_memory_object_fd on radeonsi</li>
|
||||
<li>EGL_ANDROID_native_fence_sync on radeonsi with a future kernel (possibly 4.15)</li>
|
||||
<li>EGL_IMG_context_priority on i965</li>
|
||||
</ul>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97532">Bug 97532</a> - Regression: GLB 2.7 & Glmark-2 GLES versions segfault due to linker precision error (259fc505) on dead variable</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=100438">Bug 100438</a> - glsl/ir.cpp:1376: ir_dereference_variable::ir_dereference_variable(ir_variable*): Assertion `var != NULL' failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=100613">Bug 100613</a> - Regression in Mesa 17 on s390x (zSystems)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101334">Bug 101334</a> - AMD SI cards: Some vulkan apps freeze the system</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101378">Bug 101378</a> - interpolateAtSample check for input parameter is too strict</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101655">Bug 101655</a> - Explicit sync support for android</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101691">Bug 101691</a> - gfx corruption on windowed 3d-apps running on dGPU</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101709">Bug 101709</a> - [llvmpipe] piglit gl-1.0-scissor-offscreen regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101766">Bug 101766</a> - Assertion `!"invalid type"' failed when constant expression involves literal of different type</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101832">Bug 101832</a> - [PATCH][regression][bisect] Xorg fails to start after f50aa21456d82c8cb6fbaa565835f1acc1720a5d</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101851">Bug 101851</a> - [regression] libEGL_common.a undefined reference to '__gxx_personality_v0'</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101867">Bug 101867</a> - Launch options window renders black in Feral Games in current Mesa trunk</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101876">Bug 101876</a> - SIGSEGV when launching Steam</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101910">Bug 101910</a> - [BYT] ES31-CTS.functional.copy_image.non_compressed.viewclass_96_bits.rgb32f_rgb32f</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101925">Bug 101925</a> - playstore/webview crash</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101941">Bug 101941</a> - Getting different output depending on attribute declaration order</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101961">Bug 101961</a> - Serious Sam Fusion hangs system completely</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101981">Bug 101981</a> - Commit ddc32537d6db69198e88ef0dfe19770bf9daa536 breaks rendering in multiple applications</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101982">Bug 101982</a> - Weston crashes when running an OpenGL program on i965</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101983">Bug 101983</a> - [G33] ES2-CTS.functional.shaders.struct.uniform.sampler_nested* regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101989">Bug 101989</a> - ES3-CTS.functional.state_query.integers.viewport_getinteger regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102006">Bug 102006</a> - gstreamer vaapih264enc segfault</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102014">Bug 102014</a> - Mesa git build broken by commit bc7f41e11d325280db12e7b9444501357bc13922</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102015">Bug 102015</a> - [Regression,bisected]: Segfaults with various programs</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102024">Bug 102024</a> - FORMAT_FEATURE_SAMPLED_IMAGE_BIT not supported for D16_UNORM and D32_SFLOAT</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102038">Bug 102038</a> - assertion failure in update_framebuffer_size</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102050">Bug 102050</a> - commit b4f639d02a causes build breakage on Android 32bit builds</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102052">Bug 102052</a> - No package 'expat' found</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102062">Bug 102062</a> - Segfault at eglCreateContext in android-x86</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102125">Bug 102125</a> - [softpipe] piglit arb_texture_view-targets regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102148">Bug 102148</a> - Crash when running qopenglwidget example on mesa llvmpipe win32</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102177">Bug 102177</a> - [SKL] ES31-CTS.core.sepshaderobjs.StateInteraction fails sporadically</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102201">Bug 102201</a> - [regression, SI] GPU crash in Unigine Valley</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102241">Bug 102241</a> - gallium/wgl: SwapBuffers freezing regularly with swap interval enabled</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102274">Bug 102274</a> - assertion failure in ir_validate.cpp:240</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102308">Bug 102308</a> - segfault in glCompressedTextureSubImage3D</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102358">Bug 102358</a> - WarThunder freezes at start, with activated vsync (vblank_mode=2)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102377">Bug 102377</a> - PIPE_*_4BYTE_ALIGNED_ONLY caps crashing</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102429">Bug 102429</a> - [regression, SI] Performance decrease in Unigine Valley & Heaven</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102435">Bug 102435</a> - [skl,kbl] [drm] GPU HANG: ecode 9:0:0x86df7cf9, in csgo_linux64 [4947], reason: Hang on rcs, action: reset</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102454">Bug 102454</a> - glibc 2.26 doesn't provide anymore xlocale.h</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102461">Bug 102461</a> - [llvmpipe] piglit glean fragprog1 XPD test 1 regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102467">Bug 102467</a> - src/mesa/state_tracker/st_cb_readpixels.c:178]: (warning) Redundant assignment</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102496">Bug 102496</a> - Frontbuffer rendering corruption on mesa master</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102502">Bug 102502</a> - [bisected] Kodi crashes since commit 707d2e8b - gallium: fold u_trim_pipe_prim call from st/mesa to drivers</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102530">Bug 102530</a> - [bisected] Kodi crashes when launching a stream - commit bd2662bf</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102552">Bug 102552</a> - Null dereference due to not checking return value of util_format_description</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102565">Bug 102565</a> - u_debug_stack.c:114: undefined reference to `_Ux86_64_getcontext'</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102573">Bug 102573</a> - fails to build on armel</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102665">Bug 102665</a> - test_glsl_to_tgsi_lifetime.cpp:53:67: error: ‘>>’ should be ‘> >’ within a nested template argument list</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102677">Bug 102677</a> - [OpenGL CTS] KHR-GL45.CommonBugs.CommonBug_PerVertexValidation fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102680">Bug 102680</a> - [OpenGL CTS] KHR-GL45.shader_ballot_tests.ShaderBallotBitmasks fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102685">Bug 102685</a> - piglit.spec.glsl-1_50.compiler.vs-redeclares-pervertex-out-before-global-redeclaration</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102774">Bug 102774</a> - [BDW] [Bisected] Absolute constant buffers break VAAPI in mpv</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102809">Bug 102809</a> - Rust shadows(?) flash random colours</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102844">Bug 102844</a> - memory leak with glDeleteProgram for shader program type GL_COMPUTE_SHADER</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102847">Bug 102847</a> - swr fail to build with llvm-5.0.0</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102852">Bug 102852</a> - Scons: Support the new Scons 3.0.0</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102904">Bug 102904</a> - piglit and gl45 cts linker tests regressed</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102924">Bug 102924</a> - mesa (git version) images too dark</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102940">Bug 102940</a> - Regression: Vulkan KMS rendering crashes since 17.2</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102955">Bug 102955</a> - HyperZ related rendering issue in ARK: Survival Evolved</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102999">Bug 102999</a> - [BISECTED,REGRESSION] Failing Android EGL dEQP with RGBA configs</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103002">Bug 103002</a> - string_buffer_test.cpp:43: error: ISO C++ forbids initialization of member ‘str1’</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103085">Bug 103085</a> - [ivb byt hsw] piglit.spec.arb_indirect_parameters.tf-count-arrays</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103098">Bug 103098</a> - [OpenGL CTS] KHR-GL45.enhanced_layouts.varying_structure_locations fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103101">Bug 103101</a> - [SKL][bisected] DiRT Rally GPU hang</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103115">Bug 103115</a> - [BSW BXT GLK] dEQP-VK.spirv_assembly.instruction.compute.sconvert.int32_to_int64</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103128">Bug 103128</a> - [softpipe] piglit fs-ldexp regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103142">Bug 103142</a> - R600g+sb: optimizer apparently stuck in an endless loop</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103214">Bug 103214</a> - GLES CTS functional.state_query.indexed.atomic_counter regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103227">Bug 103227</a> - [G965 G45 ILK] ES2-CTS.gtf.GL2ExtensionTests.texture_float.texture_float regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103247">Bug 103247</a> - Performance regression: car chase, manhattan</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103253">Bug 103253</a> - blob.h:138:1: error: unknown type name 'ssize_t'</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103265">Bug 103265</a> - [llvmpipe] piglit depth-tex-compare regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103323">Bug 103323</a> - Possible unintended error message in file pixel.c line 286</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103388">Bug 103388</a> - Linking libcltgsi.la (llvm/codegen/libclllvm_la-common.lo) fails with "error: no match for 'operator-'" with GCC-7, Mesa from Git and current LLVM revisions</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103393">Bug 103393</a> - glDispatchComputeGroupSizeARB : gl_GlobalInvocationID.x != gl_WorkGroupID.x * gl_LocalGroupSizeARB.x + gl_LocalInvocationID.x</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103412">Bug 103412</a> - gallium/wgl: Another fix to context creation without prior SetPixelFormat()</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103519">Bug 103519</a> - wayland egl apps crash on start with mesa 17.2</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103529">Bug 103529</a> - [GM45] GPU hang with mpv fullscreen (bisected)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103537">Bug 103537</a> - i965: Shadow of Mordor broken since commit 379b24a40d3d34ffdaaeb1b328f50e28ecb01468 on Haswell</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103544">Bug 103544</a> - Graphical glitches r600 in game this war of mine linux native</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103616">Bug 103616</a> - Increased difference from reference image in shaders</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103628">Bug 103628</a> - [BXT, GLK, BSW] KHR-GL46.shader_ballot_tests.ShaderBallotBitmasks</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103759">Bug 103759</a> - plasma desktop corrupted rendering</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103787">Bug 103787</a> - [BDW,BSW] gpu hang on spec.arb_pipeline_statistics_query.arb_pipeline_statistics_query-comp</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103909">Bug 103909</a> - anv_allocator.c:113:1: error: static declaration of ‘memfd_create’ follows non-static declaration</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,191 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.3.1 Release Notes / December 21, 2017</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.3.1 is a bug fix release which fixes bugs found since the 17.3.0 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.3.1 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
b0bb0419dbe3043ed4682a28eaf95721f427ca3f23a3c2a7dc77dbe8a3b6384d mesa-17.3.1.tar.gz
|
||||
9ae607e0998a586fb2c866cfc8e45e6f52d1c56cb1b41288253ea83eada824c1 mesa-17.3.1.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94739">Bug 94739</a> - Mesa 11.1.2 implementation error: bad format MESA_FORMAT_Z_FLOAT32 in _mesa_unpack_uint_24_8_depth_stencil_row</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102710">Bug 102710</a> - vkCmdBlitImage with arrayLayers > 1 fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103579">Bug 103579</a> - Vertex shader causes compiler to crash in SPIRV-to-NIR</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103966">Bug 103966</a> - Mesa 17.2.5 implementation error: bad format MESA_FORMAT_Z_FLOAT32 in _mesa_unpack_uint_24_8_depth_stencil_row</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104119">Bug 104119</a> - radv: OpBitFieldInsert produces 0 with a loop counter for Insert</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104143">Bug 104143</a> - r600/sb: clobbers gl_Position -> gl_FragCoord</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Alex Smith (1):</p>
|
||||
<ul>
|
||||
<li>radv: Add LLVM version to the device name string</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (3):</p>
|
||||
<ul>
|
||||
<li>spirv: Fix loading an entire block at once.</li>
|
||||
<li>radv: Don't advertise VK_EXT_debug_report.</li>
|
||||
<li>radv: Fix multi-layer blits.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ben Crocker (1):</p>
|
||||
<ul>
|
||||
<li>docs/llvmpipe: document ppc64le as alternative architecture to x86.</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (2):</p>
|
||||
<ul>
|
||||
<li>xlib: call _mesa_warning() instead of fprintf()</li>
|
||||
<li>gallium/aux: include nr_samples in util_resource_size() computation</li>
|
||||
</ul>
|
||||
|
||||
<p>Bruce Cherniak (1):</p>
|
||||
<ul>
|
||||
<li>swr: Fix KNOB_MAX_WORKER_THREADS thread creation override.</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (1):</p>
|
||||
<ul>
|
||||
<li>radv: port merge tess info from anv</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (5):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.3.0</li>
|
||||
<li>util: scons: wire up the sha1 test</li>
|
||||
<li>cherry-ignore: meson: fix strtof locale support check</li>
|
||||
<li>cherry-ignore: util: add mesa-sha1 test to meson</li>
|
||||
<li>Update version to 17.3.1</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>broadcom/vc4: Fix handling of GFXH-515 workaround with a start vertex count.</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Engestrom (1):</p>
|
||||
<ul>
|
||||
<li>compiler: use NDEBUG to guard asserts</li>
|
||||
</ul>
|
||||
|
||||
<p>Fabian Bieler (2):</p>
|
||||
<ul>
|
||||
<li>glsl: Match order of gl_LightSourceParameters elements.</li>
|
||||
<li>glsl: Fix gl_NormalScale.</li>
|
||||
</ul>
|
||||
|
||||
<p>Gert Wollny (1):</p>
|
||||
<ul>
|
||||
<li>r600/sb: do not convert if-blocks that contain indirect array access</li>
|
||||
</ul>
|
||||
|
||||
<p>James Legg (1):</p>
|
||||
<ul>
|
||||
<li>nir/opcodes: Fix constant-folding of bitfield_insert</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (1):</p>
|
||||
<ul>
|
||||
<li>i965: Switch over to fully external-or-not MOCS scheme</li>
|
||||
</ul>
|
||||
|
||||
<p>Juan A. Suarez Romero (1):</p>
|
||||
<ul>
|
||||
<li>travis: disable Meson build</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (2):</p>
|
||||
<ul>
|
||||
<li>meta: Initialize depth/clear values on declaration.</li>
|
||||
<li>meta: Fix ClearTexture with GL_DEPTH_COMPONENT.</li>
|
||||
</ul>
|
||||
|
||||
<p>Leo Liu (1):</p>
|
||||
<ul>
|
||||
<li>radeon/vce: move destroy command before feedback command</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (4):</p>
|
||||
<ul>
|
||||
<li>radeonsi: flush the context after resource_copy_region for buffer exports</li>
|
||||
<li>radeonsi: allow DMABUF exports for local buffers</li>
|
||||
<li>winsys/amdgpu: disable local BOs again due to worse performance</li>
|
||||
<li>radeonsi: don't call force_dcc_off for buffers</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (2):</p>
|
||||
<ul>
|
||||
<li>util: Assume little endian in the absence of platform-specific handling</li>
|
||||
<li>util: Add a SHA1 unit test program</li>
|
||||
</ul>
|
||||
|
||||
<p>Nicolai Hähnle (1):</p>
|
||||
<ul>
|
||||
<li>radeonsi: fix the R600_RESOURCE_FLAG_UNMAPPABLE check</li>
|
||||
</ul>
|
||||
|
||||
<p>Pierre Moreau (1):</p>
|
||||
<ul>
|
||||
<li>nvc0/ir: Properly lower 64-bit shifts when the shift value is >32</li>
|
||||
</ul>
|
||||
|
||||
<p>Timothy Arceri (1):</p>
|
||||
<ul>
|
||||
<li>glsl: get correct member type when processing xfb ifc arrays</li>
|
||||
</ul>
|
||||
|
||||
<p>Vadym Shovkoplias (2):</p>
|
||||
<ul>
|
||||
<li>glx/dri3: Remove unused deviceName variable</li>
|
||||
<li>util/disk_cache: Remove unneeded free() on always null string</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,109 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.3.2 Release Notes / January 8, 2018</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.3.2 is a bug fix release which fixes bugs found since the 17.3.1 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.3.2 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
f997e80f14c385f9a2ba827c2b74aebf1b7426712ca4a81c631ef9f78e437bf4 mesa-17.3.2.tar.gz
|
||||
e2844a13f2d6f8f24bee65804a51c42d8dc6ae9c36cff7ee61d0940e796d64c6 mesa-17.3.2.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97852">Bug 97852</a> - Unreal Engine corrupted preview viewport</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103801">Bug 103801</a> - [i965] >Observer_ issue</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104288">Bug 104288</a> - Steamroll needs allow_glsl_cross_stage_interpolation_mismatch=true</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Bas Nieuwenhuizen (1):</p>
|
||||
<ul>
|
||||
<li>radv: Fix DCC compatible formats.</li>
|
||||
</ul>
|
||||
|
||||
<p>Brendan King (1):</p>
|
||||
<ul>
|
||||
<li>egl: link libEGL against the dynamic version of libglapi</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (6):</p>
|
||||
<ul>
|
||||
<li>radv/gfx9: add support for 3d images to blit 2d paths</li>
|
||||
<li>radv: handle depth/stencil image copy with layouts better. (v3.1)</li>
|
||||
<li>radv/meta: fix blit paths for depth/stencil (v2.1)</li>
|
||||
<li>radv: fix issue with multisample positions and interp_var_at_sample.</li>
|
||||
<li>radv/gfx9: add 3d sampler image->buffer copy shader. (v3)</li>
|
||||
<li>radv: don't do format replacement on tc compat htile surfaces.</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (2):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.3.1</li>
|
||||
<li>Update version to 17.3.2</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Engestrom (1):</p>
|
||||
<ul>
|
||||
<li>egl: let each platform decided how to handle LIBGL_ALWAYS_SOFTWARE</li>
|
||||
</ul>
|
||||
|
||||
<p>Rob Herring (1):</p>
|
||||
<ul>
|
||||
<li>egl/android: Fix build break with dri2_initialize_android _EGLDisplay parameter</li>
|
||||
</ul>
|
||||
|
||||
<p>Samuel Pitoiset (2):</p>
|
||||
<ul>
|
||||
<li>radv/gfx9: fix primitive topology when adjacency is used</li>
|
||||
<li>radv: use a faster version for nir_op_pack_half_2x16</li>
|
||||
</ul>
|
||||
|
||||
<p>Tapani Pälli (2):</p>
|
||||
<ul>
|
||||
<li>mesa: add AllowGLSLCrossStageInterpolationMismatch workaround</li>
|
||||
<li>drirc: set allow_glsl_cross_stage_interpolation_mismatch for more games</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,151 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 17.3.3 Release Notes / January 18, 2018</h1>
|
||||
|
||||
<p>
|
||||
Mesa 17.3.3 is a bug fix release which fixes bugs found since the 17.3.2 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 17.3.3 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
c733d37a161501cd81dc9b309ccb613753b98eafc6d35e0847548a6642749772 mesa-17.3.3.tar.gz
|
||||
41bac5de0ef6adc1f41a1ec0f80c19e361298ce02fa81b5f9ba4fdca33a9379b mesa-17.3.3.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104214">Bug 104214</a> - Dota crashes when switching from game to desktop</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104492">Bug 104492</a> - Compute Shader: Wrong alignment when assigning struct value to structured SSBO</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104551">Bug 104551</a> - Check if Mako templates for Python are installed</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Alex Smith (3):</p>
|
||||
<ul>
|
||||
<li>anv: Add missing unlock in anv_scratch_pool_alloc</li>
|
||||
<li>anv: Take write mask into account in has_color_buffer_write_enabled</li>
|
||||
<li>anv: Make sure state on primary is correct after CmdExecuteCommands</li>
|
||||
</ul>
|
||||
|
||||
<p>Andres Gomez (1):</p>
|
||||
<ul>
|
||||
<li>anv: Import mako templates only during execution of anv_extensions</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (11):</p>
|
||||
<ul>
|
||||
<li>radv: Invert condition for all samples identical during resolve.</li>
|
||||
<li>radv: Flush caches before subpass resolve.</li>
|
||||
<li>radv: Fix fragment resolve destination offset.</li>
|
||||
<li>radv: Use correct framebuffer size for partial FS resolves.</li>
|
||||
<li>radv: Always use fragment resolve if dest uses DCC.</li>
|
||||
<li>Revert "radv/gfx9: fix block compression texture views."</li>
|
||||
<li>radv: Use correct HTILE expanded words.</li>
|
||||
<li>radv: Allow writing 0 scissors.</li>
|
||||
<li>ac/nir: Handle loading data from compact arrays.</li>
|
||||
<li>radv: Invalidate L1 for VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT.</li>
|
||||
<li>ac/nir: Sanitize location_frac for local variables.</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (8):</p>
|
||||
<ul>
|
||||
<li>radv: fix events on compute queues.</li>
|
||||
<li>radv: fix pipeline statistics end query on compute queue</li>
|
||||
<li>radv/gfx9: fix 3d image to image transfers on compute queues.</li>
|
||||
<li>radv/gfx9: fix 3d image clears on compute queues</li>
|
||||
<li>radv/gfx9: fix buffer to image for 3d images on compute queues</li>
|
||||
<li>radv/gfx9: fix block compression texture views.</li>
|
||||
<li>radv/gfx9: use a bigger hammer to flush cb/db caches.</li>
|
||||
<li>radv/gfx9: use correct swizzle parameter to work out border swizzle.</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (1):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 17.3.2</li>
|
||||
</ul>
|
||||
|
||||
<p>Florian Will (1):</p>
|
||||
<ul>
|
||||
<li>glsl: Respect std430 layout in lower_buffer_access</li>
|
||||
</ul>
|
||||
|
||||
<p>Juan A. Suarez Romero (6):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore: intel/fs: Use the original destination region for int MUL lowering</li>
|
||||
<li>cherry-ignore: i965/fs: Use UW types when using V immediates</li>
|
||||
<li>cherry-ignore: main: Clear shader program data whenever ProgramBinary is called</li>
|
||||
<li>cherry-ignore: egl: pass the dri2_dpy to the $plat_teardown functions</li>
|
||||
<li>cherry-ignore: vulkan/wsi: free cmd pools</li>
|
||||
<li>Update version to 17.3.3</li>
|
||||
</ul>
|
||||
|
||||
<p>Józef Kucia (1):</p>
|
||||
<ul>
|
||||
<li>radeonsi: fix alpha-to-coverage if color writes are disabled</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (2):</p>
|
||||
<ul>
|
||||
<li>i965: Require space for MI_BATCHBUFFER_END.</li>
|
||||
<li>i965: Torch public intel_batchbuffer_emit_dword/float helpers.</li>
|
||||
</ul>
|
||||
|
||||
<p>Lucas Stach (1):</p>
|
||||
<ul>
|
||||
<li>etnaviv: disable in-place resolve for non-supertiled surfaces</li>
|
||||
</ul>
|
||||
|
||||
<p>Samuel Iglesias Gonsálvez (1):</p>
|
||||
<ul>
|
||||
<li>anv: VkDescriptorSetLayoutBinding can have descriptorCount == 0</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (1):</p>
|
||||
<ul>
|
||||
<li>loader/dri3: Avoid freeing renderbuffers in use</li>
|
||||
</ul>
|
||||
|
||||
<p>Tim Rowley (1):</p>
|
||||
<ul>
|
||||
<li>swr/rast: fix invalid sign masks in avx512 simdlib code</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,321 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 18.0.0 Release Notes / March 27 2018</h1>
|
||||
|
||||
<p>
|
||||
Mesa 18.0.0 is a new development release.
|
||||
People who are concerned with stability and reliability should stick
|
||||
with a previous release or wait for Mesa 18.0.1.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 18.0.0 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
93c2d3504b2871ac2146603fb1270f341d36a39695e2950a469c5eac74f98457 mesa-18.0.0.tar.gz
|
||||
694e5c3d37717d23258c1f88bc134223c5d1aac70518d2f9134d6df3ee791eea mesa-18.0.0.tar.xz
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
|
||||
<p>
|
||||
Note: some of the new features are only available with certain drivers.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Disk shader cache support for i965 when MESA_GLSL_CACHE_DISABLE environment variable is set to "0" or "false"</li>
|
||||
<li>GL_ARB_shader_atomic_counters and GL_ARB_shader_atomic_counter_ops on r600/evergreen+</li>
|
||||
<li>GL_ARB_shader_image_load_store and GL_ARB_shader_image_size on r600/evergreen+</li>
|
||||
<li>GL_ARB_shader_storage_buffer_object on r600/evergreen+<li>
|
||||
<li>GL_ARB_compute_shader on r600/evergreen+<li>
|
||||
<li>GL_ARB_cull_distance on r600/evergreen+</li>
|
||||
<li>GL_ARB_enhanced_layouts on r600/evergreen+</li>
|
||||
<li>GL_ARB_bindless_texture on nvc0/kepler</li>
|
||||
<li>OpenGL 4.3 on r600/evergreen with hw fp64 support</li>
|
||||
<li>Support 1 binary format for GL_ARB_get_program_binary on i965.
|
||||
(For the 18.0 release, 0 formats continue to be supported in
|
||||
compatibility profiles.)</li>
|
||||
<li>Cannonlake support on i965 and anv</li>
|
||||
</ul>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=85564">Bug 85564</a> - Dead Island rendering issues</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=90311">Bug 90311</a> - Fail to build libglx with clang at linking stage</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92363">Bug 92363</a> - [BSW/BDW] ogles1conform Gets test fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94739">Bug 94739</a> - Mesa 11.1.2 implementation error: bad format MESA_FORMAT_Z_FLOAT32 in _mesa_unpack_uint_24_8_depth_stencil_row</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97532">Bug 97532</a> - Regression: GLB 2.7 & Glmark-2 GLES versions segfault due to linker precision error (259fc505) on dead variable</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97852">Bug 97852</a> - Unreal Engine corrupted preview viewport</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=100438">Bug 100438</a> - glsl/ir.cpp:1376: ir_dereference_variable::ir_dereference_variable(ir_variable*): Assertion `var != NULL' failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101378">Bug 101378</a> - interpolateAtSample check for input parameter is too strict</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101442">Bug 101442</a> - Piglit shaders@ssa@fs-if-def-else-break fails with sb but passes with R600_DEBUG=nosb</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101560">Bug 101560</a> - SPIR-V OpSwitch with int64 not supported even though shaderInt64 is true</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101691">Bug 101691</a> - gfx corruption on windowed 3d-apps running on dGPU</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102177">Bug 102177</a> - [SKL] ES31-CTS.core.sepshaderobjs.StateInteraction fails sporadically</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102264">Bug 102264</a> - Missing MESA_FORMAT_{B8G8R8A8,B8G8R8X8}_SRGB formats</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102354">Bug 102354</a> - Mesa 17.2 no longer can give SRGB-capable framebuffer on i965, even though Mesa 17.1.x does.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102358">Bug 102358</a> - WarThunder freezes at start, with activated vsync (vblank_mode=2)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102435">Bug 102435</a> - [skl,kbl] [drm] GPU hang in Valve games based on Source 1</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102503">Bug 102503</a> - Report SRGB framebuffer to SuperTuxKart to workaround SuperTuxKart crash</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102665">Bug 102665</a> - test_glsl_to_tgsi_lifetime.cpp:53:67: error: ‘>>’ should be ‘> >’ within a nested template argument list</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102677">Bug 102677</a> - [OpenGL CTS] KHR-GL45.CommonBugs.CommonBug_PerVertexValidation fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102680">Bug 102680</a> - [OpenGL CTS] KHR-GL45.shader_ballot_tests.ShaderBallotBitmasks fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102710">Bug 102710</a> - vkCmdBlitImage with arrayLayers > 1 fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102774">Bug 102774</a> - [BDW] [Bisected] Absolute constant buffers break VAAPI in mpv</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102809">Bug 102809</a> - Rust shadows(?) flash random colours</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102897">Bug 102897</a> - Separate bind points are not implemented correctly</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102955">Bug 102955</a> - HyperZ related rendering issue in ARK: Survival Evolved</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103006">Bug 103006</a> - [OpenGL CTS] [HSW] KHR-GL45.vertex_attrib_binding.basic-inputL-case1</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103007">Bug 103007</a> - [OpenGL CTS] [HSW] KHR-GL45.gpu_shader_fp64.fp64.max_uniform_components fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103085">Bug 103085</a> - [ivb byt hsw] piglit.spec.arb_indirect_parameters.tf-count-arrays</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103098">Bug 103098</a> - [OpenGL CTS] KHR-GL45.enhanced_layouts.varying_structure_locations fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103101">Bug 103101</a> - [SKL][bisected] DiRT Rally GPU hang</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103115">Bug 103115</a> - [BSW BXT GLK] dEQP-VK.spirv_assembly.instruction.compute.sconvert.int32_to_int64</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103128">Bug 103128</a> - [softpipe] piglit fs-ldexp regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103142">Bug 103142</a> - R600g+sb: optimizer apparently stuck in an endless loop</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103227">Bug 103227</a> - [G965 G45 ILK] ES2-CTS.gtf.GL2ExtensionTests.texture_float.texture_float regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103283">Bug 103283</a> - drm_get_device_name_for_fd is broken on FreeBSD</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103388">Bug 103388</a> - Linking libcltgsi.la (llvm/codegen/libclllvm_la-common.lo) fails with "error: no match for 'operator-'" with GCC-7, Mesa from Git and current LLVM revisions</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103393">Bug 103393</a> - glDispatchComputeGroupSizeARB : gl_GlobalInvocationID.x != gl_WorkGroupID.x * gl_LocalGroupSizeARB.x + gl_LocalInvocationID.x</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103412">Bug 103412</a> - gallium/wgl: Another fix to context creation without prior SetPixelFormat()</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103496">Bug 103496</a> - svga_screen.c:26:46: error: git_sha1.h: No such file or directory</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103513">Bug 103513</a> - [build failure] radv_shader.c:683:2: error: format not a string literal and no format arguments [-Werror=format-security]</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103519">Bug 103519</a> - wayland egl apps crash on start with mesa 17.2</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103529">Bug 103529</a> - [GM45] GPU hang with mpv fullscreen (bisected)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103537">Bug 103537</a> - i965: Shadow of Mordor broken since commit 379b24a40d3d34ffdaaeb1b328f50e28ecb01468 on Haswell</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103544">Bug 103544</a> - Graphical glitches r600 in game this war of mine linux native</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103579">Bug 103579</a> - Vertex shader causes compiler to crash in SPIRV-to-NIR</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103616">Bug 103616</a> - Increased difference from reference image in shaders</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103626">Bug 103626</a> - [SNB] ES3-CTS.functional.shaders.precision</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103628">Bug 103628</a> - [BXT, GLK, BSW] KHR-GL46.shader_ballot_tests.ShaderBallotBitmasks</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103653">Bug 103653</a> - Unreal segfault since gallium/u_threaded: avoid syncs for get_query_result</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103658">Bug 103658</a> - addrlib/gfx9/gfx9addrlib.cpp:727:50: error: expected expression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103674">Bug 103674</a> - u_queue.c:173:7: error: implicit declaration of function 'timespec_get' is invalid in C99</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103746">Bug 103746</a> - [BDW BSW SKL KBL] dEQP-GLES31.functional.copy_image regressions</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103759">Bug 103759</a> - plasma desktop corrupted rendering</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103784">Bug 103784</a> - [bisected] Egl changes breaks all of EGL</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103787">Bug 103787</a> - [BDW,BSW] gpu hang on spec.arb_pipeline_statistics_query.arb_pipeline_statistics_query-comp</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103801">Bug 103801</a> - [i965] >Observer_ issue</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103808">Bug 103808</a> - [radeonsi, bisected] World of Warcraft scribbling all over screen</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103902">Bug 103902</a> - Portal 2 game hangs at startup with latest mesa dev</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103904">Bug 103904</a> - Source engine-based games won't hang at start without R600_DEBUG=vs</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103909">Bug 103909</a> - anv_allocator.c:113:1: error: static declaration of ‘memfd_create’ follows non-static declaration</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103942">Bug 103942</a> - KHR-GL46.enhanced_layouts.varying* regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103955">Bug 103955</a> - Using array in structure results in wrong GLSL compilation output</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103966">Bug 103966</a> - Mesa 17.2.5 implementation error: bad format MESA_FORMAT_Z_FLOAT32 in _mesa_unpack_uint_24_8_depth_stencil_row</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=103988">Bug 103988</a> - Intermittent piglit failures with shader cache enabled</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104005">Bug 104005</a> - [sklgt4e] GPU hangs in Car_Chase</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104119">Bug 104119</a> - radv: OpBitFieldInsert produces 0 with a loop counter for Insert</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104141">Bug 104141</a> - include/c11/threads_posix.h:96: undefined reference to `pthread_once'</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104143">Bug 104143</a> - r600/sb: clobbers gl_Position -> gl_FragCoord</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104163">Bug 104163</a> - [GEN9+] 2-3% perf drop in GfxBench Manhattan 3.1 from "i965: Disable regular fast-clears (CCS_D) on gen9+"</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104183">Bug 104183</a> - mesa-17.3.0/src/broadcom/qpu/qpu_pack.c:171]: (error) Invalid memcmp() argument</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104199">Bug 104199</a> - [i965 bisected] BIO and EM Vision in >Observer_ is broken since commit af2c320190f3c73180f1610c8df955a7fa2a4d09</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104213">Bug 104213</a> - NULL pointer access crashes on compiling Vulkan compute shaders after "anv: Add support for the variablePointers feature"</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104214">Bug 104214</a> - Dota crashes when switching from game to desktop</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104226">Bug 104226</a> - [bisected] Anvil accesses uninitialized memory while compiling shaders</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104231">Bug 104231</a> - DispatchSanity_test.GL30 regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104246">Bug 104246</a> - Talos Principle Vulkan version crash: spirv_to_nir() returns NULL entry_point</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104271">Bug 104271</a> - i965: Timeout in dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.5</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104288">Bug 104288</a> - Steamroll needs allow_glsl_cross_stage_interpolation_mismatch=true</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104302">Bug 104302</a> - Wolfenstein 2 (2017) under wine graphical artifacting on RADV</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104331">Bug 104331</a> - [r600g] Ogre demo "TutorialUAV01" crash at r600_decompress_color_images</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104338">Bug 104338</a> - NULL pointer access crash on Sacha Willems' Vulkan raytracing demo after "spirv: Add basic type validation for OpLoad, OpStore, and OpCopyMemory"</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104359">Bug 104359</a> - Mesa freezes in "vtn_cfg_walk_blocks" with Sacha Willems' hdr, parallaxmapping and specializationconstants Vulkan demos</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104381">Bug 104381</a> - swr fails to build since llvm-svn r321257</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104383">Bug 104383</a> - [KBL] Intel GPU hang with firefox</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104411">Bug 104411</a> - [CCS] lemonbar-xft GPU hang</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104424">Bug 104424</a> - DOOM 2016 broken by spirv OpStore validation</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104487">Bug 104487</a> - [KBL] portal2_linux GPU hang</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104490">Bug 104490</a> - [radeonsi/290x] Dota2 fails to start (can't create opengl context)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104492">Bug 104492</a> - Compute Shader: Wrong alignment when assigning struct value to structured SSBO</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104546">Bug 104546</a> - Crash happens when running compute pipeline after calling glxMakeCurrent two times</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104551">Bug 104551</a> - Check if Mako templates for Python are installed</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104625">Bug 104625</a> - semicolon after if</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104636">Bug 104636</a> - [BSW/HD400] Aztec Ruins GL version GPU hangs</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104642">Bug 104642</a> - Android: NULL pointer dereference with i965 mesa-dev, seems build_id_length related</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104654">Bug 104654</a> - r600/sb: Alien Isolation GPU lock</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104668">Bug 104668</a> - dEQP-GLES31.functional.shaders.linkage.uniform.block.differing_precision regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104677">Bug 104677</a> - radv_generate_graphics_pipeline_key reads input rate from incorrect binding</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104690">Bug 104690</a> - [G33] regression: piglit.spec.!opengl 1_4.draw-batch and gl-1_4-dlist-multidrawarrays</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104711">Bug 104711</a> - [skl CCS] Oxenfree (unity engine game) hangs GPU</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104741">Bug 104741</a> - Graphic corruption for Android apps Telegram and KineMaster</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104742">Bug 104742</a> - [swrast] piglit gl-1.4-dlist-multidrawarrays regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104746">Bug 104746</a> - [swrast] piglit attribs regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104749">Bug 104749</a> - rasterizer/jitter/JitManager.cpp:252:91: error: no matching function for call to ‘llvm::DIBuilder::createBasicType(const char [8], int, llvm::dwarf::TypeKind)’</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104762">Bug 104762</a> - Various segfaults/problems in qt/plasma</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104777">Bug 104777</a> - Attaching multiple shader objects for the same stage to a GLSL program triggers a linker error</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104884">Bug 104884</a> - memory leak with intel i965 mesa when running android container in Ubuntu</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104905">Bug 104905</a> - SpvOpFOrdEqual doesn't return correct results for NaNs</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104915">Bug 104915</a> - Indexed SHADING_LANGUAGE_VERSION query not supported</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=104923">Bug 104923</a> - anv: Dota2 rendering corruption</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105013">Bug 105013</a> - [regression] GLX+VA-API+clutter-gst video playback is corrupt with Mesa 17.3 (but is fine with 17.2)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105029">Bug 105029</a> - simdlib_512_avx512.inl:371:57: error: could not convert ‘_mm512_mask_blend_epi32((__mmask16)(ImmT), a, b)’ from ‘__m512i’ {aka ‘__vector(8) long long int’} to ‘SIMDImpl::SIMD512Impl::Float’</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105065">Bug 105065</a> - Qt Programs occasionally fail to render with new Mesa (glGetProgramBinary)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105098">Bug 105098</a> - [RADV] GPU freeze with simple Vulkan App</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105103">Bug 105103</a> - Wayland master causes Mesa to fail to compile</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105120">Bug 105120</a> - meson build broken</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105224">Bug 105224</a> - Webgl Pointclouds flickers</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105255">Bug 105255</a> - Waiting for fences without waitAll is not implemented</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105271">Bug 105271</a> - WebGL2 shader crashes i965_dri.so 17.3.3</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105290">Bug 105290</a> - [BSW/HD400] SynMark OglCSDof GPU hangs when shaders come from cache</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105292">Bug 105292</a> - vkGetQueryPoolResults returns incorrect query status for large query buffers (bisected)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105436">Bug 105436</a> - Blinking textures in UT2004 [bisected]</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105464">Bug 105464</a> - Reading per-patch outputs in Tessellation Control Shader returns undefined values</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<ul>
|
||||
<li>Remove incomplete GLX_MESA_set_3dfx_mode from the Xlib libGL</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,224 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 18.0.1 Release Notes / April 18, 2018</h1>
|
||||
|
||||
<p>
|
||||
Mesa 18.0.1 is a bug fix release which fixes bugs found since the 18.0.0 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 18.0.1 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 <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
TBD
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=101408">Bug 101408</a> - [Gen8+] Xonotic fails to render one of the weapons</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102342">Bug 102342</a> - mesa-17.1.7/src/gallium/auxiliary/pipebuffer/pb_cache.c:169]: (style) Suspicious condition</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=102542">Bug 102542</a> - mesa-17.2.0/src/gallium/state_trackers/nine/nine_ff.c:1938: bad assignment ?</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105317">Bug 105317</a> - The GPU Vega 56 was hang while try to pass #GraphicsFuzz shader15 test</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105440">Bug 105440</a> - GEN7: rendering issue on citra</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105442">Bug 105442</a> - Hang when running nine ff lighting shader with radeonsi</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105567">Bug 105567</a> - meson/ninja: 1. mesa/vdpau incorrect symlinks in DESTDIR and 2. Ddri-drivers-path Dvdpau-libs-path overrides DESTDIR</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105670">Bug 105670</a> - [regression][hang] Trine1EE hangs GPU after loading screen on Mesa3D-17.3 and later</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105704">Bug 105704</a> - compiler assertion hit</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105717">Bug 105717</a> - [bisected] Mesa build tests fails: BIGENDIAN_CPU or LITTLEENDIAN_CPU must be defined</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=105942">Bug 105942</a> - Graphical artefacts after update to mesa 18.0.0-2</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Andres Gomez (2):</p>
|
||||
<ul>
|
||||
<li>dri_util: when overriding, always reset the core version</li>
|
||||
<li>mesa: adds some comments regarding MESA_GLES_VERSION_OVERRIDE usage</li>
|
||||
</ul>
|
||||
|
||||
<p>Axel Davy (5):</p>
|
||||
<ul>
|
||||
<li>st/nine: Fix bad tracking of vs textures for NINESBT_ALL</li>
|
||||
<li>st/nine: Fixes warning about implicit conversion</li>
|
||||
<li>st/nine: Fix non inversible matrix check</li>
|
||||
<li>st/nine: Declare lighting consts for ff shaders</li>
|
||||
<li>st/nine: Do not use scratch for face register</li>
|
||||
</ul>
|
||||
|
||||
<p>Bas Nieuwenhuizen (3):</p>
|
||||
<ul>
|
||||
<li>ac/nir: Add workaround for GFX9 buffer views.</li>
|
||||
<li>radv: Don't set instance count using predication.</li>
|
||||
<li>radv: Always reset draw user SGPRs after secondary command buffer.</li>
|
||||
</ul>
|
||||
|
||||
<p>Caio Marcelo de Oliveira Filho (1):</p>
|
||||
<ul>
|
||||
<li>anv/pipeline: fail if TCS/TES compile fail</li>
|
||||
</ul>
|
||||
|
||||
<p>Daniel Stone (1):</p>
|
||||
<ul>
|
||||
<li>st/dri: Initialise modifier to INVALID for DRI2</li>
|
||||
</ul>
|
||||
|
||||
<p>Derek Foreman (1):</p>
|
||||
<ul>
|
||||
<li>egl/wayland: Make swrast display_sync the correct queue</li>
|
||||
</ul>
|
||||
|
||||
<p>Dylan Baker (4):</p>
|
||||
<ul>
|
||||
<li>meson: don't use compiler.has_header</li>
|
||||
<li>autotools: include meson_get_version</li>
|
||||
<li>meson: Set .so version for xa like autotools does</li>
|
||||
<li>meson: fix megadriver symlinking</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (1):</p>
|
||||
<ul>
|
||||
<li>docs: add sha256 checksums for 18.0.0</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Engestrom (3):</p>
|
||||
<ul>
|
||||
<li>meson/configure: detect endian.h instead of trying to guess when it's available</li>
|
||||
<li>docs: fix 18.0 release note version</li>
|
||||
<li>gbm: remove never-implemented function</li>
|
||||
</ul>
|
||||
|
||||
<p>Henri Verbeet (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Inherit texture view multi-sample information from the original texture images.</li>
|
||||
</ul>
|
||||
|
||||
<p>Iago Toral Quiroga (1):</p>
|
||||
<ul>
|
||||
<li>compiler/spirv: set is_shadow for depth comparitor sampling opcodes</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (1):</p>
|
||||
<ul>
|
||||
<li>i965/vec4: Fix null destination register in 3-source instructions</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (4):</p>
|
||||
<ul>
|
||||
<li>nir/vars_to_ssa: Remove copies from the correct set</li>
|
||||
<li>nir/lower_indirect_derefs: Support interp_var_at intrinsics</li>
|
||||
<li>intel/vec4: Set channel_sizes for MOV_INDIRECT sources</li>
|
||||
<li>nir/lower_vec_to_movs: Only coalesce if the vec had a SSA destination</li>
|
||||
</ul>
|
||||
|
||||
<p>Juan A. Suarez Romero (5):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore anv: Be more careful about fast-clear colors</li>
|
||||
<li>cherry-ignore: ac/shader: fix vertex input with components.</li>
|
||||
<li>cherry-ignore: radv: handle exporting view index to fragment shader. (v1.1)</li>
|
||||
<li>cherry-ignore: omx: always define ENABLE_ST_OMX_{BELLAGIO,TIZONIA}</li>
|
||||
<li>Update version to 18.0.1</li>
|
||||
</ul>
|
||||
|
||||
<p>Leo Liu (1):</p>
|
||||
<ul>
|
||||
<li>radeon/vce: move feedback command inside of destroy function</li>
|
||||
</ul>
|
||||
|
||||
<p>Lionel Landwerlin (1):</p>
|
||||
<ul>
|
||||
<li>i965/perf: fix config registration when uploading to kernel</li>
|
||||
</ul>
|
||||
|
||||
<p>Marc Dietrich (1):</p>
|
||||
<ul>
|
||||
<li>meson: fix HAVE_LLVM version define in meson build</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (1):</p>
|
||||
<ul>
|
||||
<li>mesa: simplify MESA_GL_VERSION_OVERRIDE behavior of API override</li>
|
||||
</ul>
|
||||
|
||||
<p>Mark Thompson (1):</p>
|
||||
<ul>
|
||||
<li>st/va: Enable vaExportSurfaceHandle()</li>
|
||||
</ul>
|
||||
|
||||
<p>Rob Clark (3):</p>
|
||||
<ul>
|
||||
<li>nir: fix per_vertex_output intrinsic</li>
|
||||
<li>freedreno/a5xx: fix page faults on last level</li>
|
||||
<li>freedreno/a5xx: don't align height for PIPE_BUFFER</li>
|
||||
</ul>
|
||||
|
||||
<p>Samuel Pitoiset (2):</p>
|
||||
<ul>
|
||||
<li>radv: fix picking the method for resolve subpass</li>
|
||||
<li>radv: fix radv_layout_dcc_compressed() when image doesn't have DCC</li>
|
||||
</ul>
|
||||
|
||||
<p>Sergii Romantsov (1):</p>
|
||||
<ul>
|
||||
<li>i965: Extend the negative 32-bit deltas to 64-bits</li>
|
||||
</ul>
|
||||
|
||||
<p>Timothy Arceri (7):</p>
|
||||
<ul>
|
||||
<li>ac: add if/loop build helpers</li>
|
||||
<li>radeonsi: make use of if/loop build helpers in ac</li>
|
||||
<li>ac: make use of if/loop build helpers</li>
|
||||
<li>glsl: fix infinite loop caused by bug in loop unrolling pass</li>
|
||||
<li>nir: fix crash in loop unroll corner case</li>
|
||||
<li>gallium/pipebuffer: fix parenthesis location</li>
|
||||
<li>glsl: always call do_lower_jumps() after loop unrolling</li>
|
||||
</ul>
|
||||
|
||||
<p>Xiong, James (1):</p>
|
||||
<ul>
|
||||
<li>i965: return the fourcc saved in __DRIimage when possible</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -64,9 +64,9 @@ execution. These are generally used for debugging.
|
||||
Example: export MESA_GLSL=dump,nopt
|
||||
</p>
|
||||
|
||||
<h3 id="replacement">Experimenting with Shader Replacements</h3>
|
||||
<p>
|
||||
Shaders can be dumped and replaced on runtime for debugging purposes. This
|
||||
Shaders can be dumped and replaced on runtime for debugging purposes. Mesa
|
||||
needs to be configured with '--with-sha1' to enable this functionality. This
|
||||
feature is not currently supported by SCons build.
|
||||
|
||||
This is controlled via following environment variables:
|
||||
@@ -76,22 +76,7 @@ This is controlled via following environment variables:
|
||||
</ul>
|
||||
Note, path set must exist before running for dumping or replacing to work.
|
||||
When both are set, these paths should be different so the dumped shaders do
|
||||
not clobber the replacement shaders. Also, the filenames of the replacement shaders
|
||||
should match the filenames of the corresponding dumped shaders.
|
||||
</p>
|
||||
|
||||
<h3 id="capture">Capturing Shaders</h3>
|
||||
|
||||
<p>
|
||||
Setting <b>MESA_SHADER_CAPTURE_PATH</b> to a directory will cause the compiler
|
||||
to write <tt>.shader_test</tt> files for use with
|
||||
<a href="https://cgit.freedesktop.org/mesa/shader-db">shader-db</a>, a tool
|
||||
which compiler developers can use to gather statistics about shaders
|
||||
(instructions, cycles, memory accesses, and so on).
|
||||
</p>
|
||||
<p>
|
||||
Notably, this captures linked GLSL shaders - with all stages together -
|
||||
as well as ARB programs.
|
||||
not clobber the replacement shaders.
|
||||
</p>
|
||||
|
||||
<h2 id="support">GLSL Version</h2>
|
||||
|
@@ -145,7 +145,7 @@ each directory.
|
||||
<li><b>xvmc</b> - XvMC state tracker
|
||||
<li><b>vdpau</b> - VDPAU state tracker
|
||||
<li><b>va</b> - VA-API state tracker
|
||||
<li><b>omx_bellagio</b> - OpenMAX Bellagio state tracker
|
||||
<li><b>omx</b> - OpenMAX state tracker
|
||||
</ul>
|
||||
<li><b>winsys</b> -
|
||||
<ul>
|
||||
|
@@ -13,7 +13,8 @@ Contact
|
||||
|
||||
Status
|
||||
|
||||
Obsolete. Effectively superseded by ARB_vertex_buffer_object.
|
||||
Shipping (Mesa 4.0.4 and later. Only implemented in particular
|
||||
XFree86/DRI drivers.)
|
||||
|
||||
Version
|
||||
|
@@ -12,7 +12,7 @@ Contact
|
||||
|
||||
Status
|
||||
|
||||
Obsolete.
|
||||
Shipping since Mesa 2.6 in February, 1998.
|
||||
|
||||
Version
|
||||
|
@@ -12,7 +12,7 @@ Contact
|
||||
|
||||
Status
|
||||
|
||||
Obsolete.
|
||||
XXX - Not complete yet!!!
|
||||
|
||||
Version
|
||||
|
||||
@@ -133,7 +133,7 @@ New Tokens
|
||||
GetFloatv and GetIntegerv:
|
||||
|
||||
FRAGMENT_PROGRAM_POSITION_MESA 0x8bb0
|
||||
VERTEX_PROGRAM_POSITION_MESA 0x8bb5
|
||||
VERTEX_PROGRAM_POSITION_MESA 0x8bb4
|
||||
|
||||
Accepted by the <pname> parameter of GetPointerv:
|
||||
|
||||
|
@@ -46,14 +46,14 @@ GL_MESA_shader_debug.spec: (obsolete)
|
||||
GL_DEBUG_ASSERT_MESA 0x875B
|
||||
|
||||
GL_MESA_program_debug: (obsolete)
|
||||
GL_FRAGMENT_PROGRAM_POSITION_MESA 0x8BB0
|
||||
GL_FRAGMENT_PROGRAM_CALLBACK_MESA 0x8BB1
|
||||
GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x8BB2
|
||||
GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x8BB3
|
||||
GL_VERTEX_PROGRAM_POSITION_MESA 0x8BB4
|
||||
GL_VERTEX_PROGRAM_CALLBACK_MESA 0x8BB5
|
||||
GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x8BB6
|
||||
GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x8BB7
|
||||
GL_FRAGMENT_PROGRAM_CALLBACK_MESA 0x????
|
||||
GL_VERTEX_PROGRAM_CALLBACK_MESA 0x????
|
||||
GL_FRAGMENT_PROGRAM_POSITION_MESA 0x????
|
||||
GL_VERTEX_PROGRAM_POSITION_MESA 0x????
|
||||
GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x????
|
||||
GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x????
|
||||
GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x????
|
||||
GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x????
|
||||
|
||||
GL_MESAX_texture_stack:
|
||||
GL_TEXTURE_1D_STACK_MESAX 0x8759
|
||||
@@ -63,14 +63,6 @@ GL_MESAX_texture_stack:
|
||||
GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D
|
||||
GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E
|
||||
|
||||
GL_MESA_program_binary_formats:
|
||||
GL_PROGRAM_BINARY_FORMAT_MESA 0x875F
|
||||
|
||||
GL_MESA_tile_raster_order
|
||||
GL_TILE_RASTER_ORDER_FIXED_MESA 0x8BB8
|
||||
GL_TILE_RASTER_ORDER_INCREASING_X_MESA 0x8BB9
|
||||
GL_TILE_RASTER_ORDER_INCREASING_Y_MESA 0x8BBA
|
||||
|
||||
EGL_MESA_drm_image
|
||||
EGL_DRM_BUFFER_FORMAT_MESA 0x31D0
|
||||
EGL_DRM_BUFFER_USE_MESA 0x31D1
|
||||
|
@@ -151,18 +151,6 @@ Whenever possible and applicable, test the patch with
|
||||
to check for regressions.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
As mentioned at the begining, patches should be bisectable.
|
||||
A good way to test this is to make use of the `git rebase` command,
|
||||
to run your tests on each commit. Assuming your branch is based off
|
||||
<code>origin/master</code>, you can run:
|
||||
<pre>
|
||||
$ git rebase --interactive --exec "make check" origin/master
|
||||
</pre>
|
||||
replacing <code>"make check"</code> with whatever other test you want to
|
||||
run.
|
||||
</p>
|
||||
|
||||
|
||||
<h2 id="mailing">Mailing Patches</h2>
|
||||
|
||||
|
@@ -97,7 +97,8 @@ typedef void *EGLNativeWindowType;
|
||||
|
||||
#elif defined(__ANDROID__) || defined(ANDROID)
|
||||
|
||||
struct ANativeWindow;
|
||||
#include <android/native_window.h>
|
||||
|
||||
struct egl_native_pixmap_t;
|
||||
|
||||
typedef struct ANativeWindow* EGLNativeWindowType;
|
||||
|
@@ -578,17 +578,15 @@ GLAPI void APIENTRY glGetCompressedTexImage (GLenum target, GLint level, void *i
|
||||
#define GL_TEXTURE_DEPTH_SIZE 0x884A
|
||||
#define GL_TEXTURE_COMPARE_MODE 0x884C
|
||||
#define GL_TEXTURE_COMPARE_FUNC 0x884D
|
||||
#define GL_BLEND_COLOR 0x8005
|
||||
#define GL_BLEND_EQUATION 0x8009
|
||||
#define GL_FUNC_ADD 0x8006
|
||||
#define GL_FUNC_SUBTRACT 0x800A
|
||||
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
|
||||
#define GL_MIN 0x8007
|
||||
#define GL_MAX 0x8008
|
||||
#define GL_CONSTANT_COLOR 0x8001
|
||||
#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
|
||||
#define GL_CONSTANT_ALPHA 0x8003
|
||||
#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
|
||||
#define GL_FUNC_ADD 0x8006
|
||||
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
|
||||
#define GL_FUNC_SUBTRACT 0x800A
|
||||
#define GL_MIN 0x8007
|
||||
#define GL_MAX 0x8008
|
||||
typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount);
|
||||
@@ -2895,42 +2893,6 @@ GLAPI void APIENTRY glTextureBarrier (void);
|
||||
#endif
|
||||
#endif /* GL_VERSION_4_5 */
|
||||
|
||||
#ifndef GL_VERSION_4_6
|
||||
#define GL_VERSION_4_6 1
|
||||
#define GL_SHADER_BINARY_FORMAT_SPIR_V 0x9551
|
||||
#define GL_SPIR_V_BINARY 0x9552
|
||||
#define GL_PARAMETER_BUFFER 0x80EE
|
||||
#define GL_PARAMETER_BUFFER_BINDING 0x80EF
|
||||
#define GL_CONTEXT_FLAG_NO_ERROR_BIT 0x00000008
|
||||
#define GL_VERTICES_SUBMITTED 0x82EE
|
||||
#define GL_PRIMITIVES_SUBMITTED 0x82EF
|
||||
#define GL_VERTEX_SHADER_INVOCATIONS 0x82F0
|
||||
#define GL_TESS_CONTROL_SHADER_PATCHES 0x82F1
|
||||
#define GL_TESS_EVALUATION_SHADER_INVOCATIONS 0x82F2
|
||||
#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED 0x82F3
|
||||
#define GL_FRAGMENT_SHADER_INVOCATIONS 0x82F4
|
||||
#define GL_COMPUTE_SHADER_INVOCATIONS 0x82F5
|
||||
#define GL_CLIPPING_INPUT_PRIMITIVES 0x82F6
|
||||
#define GL_CLIPPING_OUTPUT_PRIMITIVES 0x82F7
|
||||
#define GL_POLYGON_OFFSET_CLAMP 0x8E1B
|
||||
#define GL_SPIR_V_EXTENSIONS 0x9553
|
||||
#define GL_NUM_SPIR_V_EXTENSIONS 0x9554
|
||||
#define GL_TEXTURE_MAX_ANISOTROPY 0x84FE
|
||||
#define GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF
|
||||
#define GL_TRANSFORM_FEEDBACK_OVERFLOW 0x82EC
|
||||
#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW 0x82ED
|
||||
typedef void (APIENTRYP PFNGLSPECIALIZESHADERPROC) (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLPOLYGONOFFSETCLAMPPROC) (GLfloat factor, GLfloat units, GLfloat clamp);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glSpecializeShader (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue);
|
||||
GLAPI void APIENTRY glMultiDrawArraysIndirectCount (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawElementsIndirectCount (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glPolygonOffsetClamp (GLfloat factor, GLfloat units, GLfloat clamp);
|
||||
#endif
|
||||
#endif /* GL_VERSION_4_6 */
|
||||
|
||||
#ifndef GL_ARB_ES2_compatibility
|
||||
#define GL_ARB_ES2_compatibility 1
|
||||
#endif /* GL_ARB_ES2_compatibility */
|
||||
@@ -3344,17 +3306,19 @@ GLAPI void APIENTRY glProgramUniform4ui64vARB (GLuint program, GLint location, G
|
||||
|
||||
#ifndef GL_ARB_imaging
|
||||
#define GL_ARB_imaging 1
|
||||
#define GL_BLEND_COLOR 0x8005
|
||||
#define GL_BLEND_EQUATION 0x8009
|
||||
#endif /* GL_ARB_imaging */
|
||||
|
||||
#ifndef GL_ARB_indirect_parameters
|
||||
#define GL_ARB_indirect_parameters 1
|
||||
#define GL_PARAMETER_BUFFER_ARB 0x80EE
|
||||
#define GL_PARAMETER_BUFFER_BINDING_ARB 0x80EF
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glMultiDrawArraysIndirectCountARB (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawElementsIndirectCountARB (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawArraysIndirectCountARB (GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawElementsIndirectCountARB (GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
#endif
|
||||
#endif /* GL_ARB_indirect_parameters */
|
||||
|
||||
@@ -3432,10 +3396,6 @@ GLAPI void APIENTRY glMaxShaderCompilerThreadsARB (GLuint count);
|
||||
#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF
|
||||
#endif /* GL_ARB_pixel_buffer_object */
|
||||
|
||||
#ifndef GL_ARB_polygon_offset_clamp
|
||||
#define GL_ARB_polygon_offset_clamp 1
|
||||
#endif /* GL_ARB_polygon_offset_clamp */
|
||||
|
||||
#ifndef GL_ARB_post_depth_coverage
|
||||
#define GL_ARB_post_depth_coverage 1
|
||||
#endif /* GL_ARB_post_depth_coverage */
|
||||
@@ -3665,10 +3625,6 @@ GLAPI void APIENTRY glTexPageCommitmentARB (GLenum target, GLint level, GLint xo
|
||||
#define GL_ARB_sparse_texture_clamp 1
|
||||
#endif /* GL_ARB_sparse_texture_clamp */
|
||||
|
||||
#ifndef GL_ARB_spirv_extensions
|
||||
#define GL_ARB_spirv_extensions 1
|
||||
#endif /* GL_ARB_spirv_extensions */
|
||||
|
||||
#ifndef GL_ARB_stencil_texturing
|
||||
#define GL_ARB_stencil_texturing 1
|
||||
#endif /* GL_ARB_stencil_texturing */
|
||||
@@ -3734,10 +3690,6 @@ GLAPI void APIENTRY glTexBufferARB (GLenum target, GLenum internalformat, GLuint
|
||||
#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F
|
||||
#endif /* GL_ARB_texture_cube_map_array */
|
||||
|
||||
#ifndef GL_ARB_texture_filter_anisotropic
|
||||
#define GL_ARB_texture_filter_anisotropic 1
|
||||
#endif /* GL_ARB_texture_filter_anisotropic */
|
||||
|
||||
#ifndef GL_ARB_texture_filter_minmax
|
||||
#define GL_ARB_texture_filter_minmax 1
|
||||
#define GL_TEXTURE_REDUCTION_MODE_ARB 0x9366
|
||||
@@ -3899,16 +3851,6 @@ GLAPI void APIENTRY glBlendBarrierKHR (void);
|
||||
#define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR 0x00000008
|
||||
#endif /* GL_KHR_no_error */
|
||||
|
||||
#ifndef GL_KHR_parallel_shader_compile
|
||||
#define GL_KHR_parallel_shader_compile 1
|
||||
#define GL_MAX_SHADER_COMPILER_THREADS_KHR 0x91B0
|
||||
#define GL_COMPLETION_STATUS_KHR 0x91B1
|
||||
typedef void (APIENTRYP PFNGLMAXSHADERCOMPILERTHREADSKHRPROC) (GLuint count);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glMaxShaderCompilerThreadsKHR (GLuint count);
|
||||
#endif
|
||||
#endif /* GL_KHR_parallel_shader_compile */
|
||||
|
||||
#ifndef GL_KHR_robust_buffer_access_behavior
|
||||
#define GL_KHR_robust_buffer_access_behavior 1
|
||||
#endif /* GL_KHR_robust_buffer_access_behavior */
|
||||
@@ -4810,12 +4752,6 @@ GLAPI void APIENTRY glBlendBarrierNV (void);
|
||||
#define GL_BLEND_ADVANCED_COHERENT_NV 0x9285
|
||||
#endif /* GL_NV_blend_equation_advanced_coherent */
|
||||
|
||||
#ifndef GL_NV_blend_minmax_factor
|
||||
#define GL_NV_blend_minmax_factor 1
|
||||
#define GL_FACTOR_MIN_AMD 0x901C
|
||||
#define GL_FACTOR_MAX_AMD 0x901D
|
||||
#endif /* GL_NV_blend_minmax_factor */
|
||||
|
||||
#ifndef GL_NV_clip_space_w_scaling
|
||||
#define GL_NV_clip_space_w_scaling 1
|
||||
#define GL_VIEWPORT_POSITION_W_SCALE_NV 0x937C
|
||||
@@ -5506,10 +5442,6 @@ GLAPI void APIENTRY glTextureBarrierNV (void);
|
||||
#endif
|
||||
#endif /* GL_NV_texture_barrier */
|
||||
|
||||
#ifndef GL_NV_texture_rectangle_compressed
|
||||
#define GL_NV_texture_rectangle_compressed 1
|
||||
#endif /* GL_NV_texture_rectangle_compressed */
|
||||
|
||||
#ifndef GL_NV_uniform_buffer_unified_memory
|
||||
#define GL_NV_uniform_buffer_unified_memory 1
|
||||
#define GL_UNIFORM_BUFFER_UNIFIED_NV 0x936E
|
||||
|
@@ -51,7 +51,7 @@ extern "C" {
|
||||
#define GLAPI extern
|
||||
#endif
|
||||
|
||||
#define GL_GLEXT_VERSION 20171010
|
||||
#define GL_GLEXT_VERSION 20170608
|
||||
|
||||
/* Generated C header for:
|
||||
* API: gl
|
||||
@@ -353,17 +353,15 @@ GLAPI void APIENTRY glMultTransposeMatrixd (const GLdouble *m);
|
||||
#define GL_TEXTURE_FILTER_CONTROL 0x8500
|
||||
#define GL_DEPTH_TEXTURE_MODE 0x884B
|
||||
#define GL_COMPARE_R_TO_TEXTURE 0x884E
|
||||
#define GL_BLEND_COLOR 0x8005
|
||||
#define GL_BLEND_EQUATION 0x8009
|
||||
#define GL_FUNC_ADD 0x8006
|
||||
#define GL_FUNC_SUBTRACT 0x800A
|
||||
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
|
||||
#define GL_MIN 0x8007
|
||||
#define GL_MAX 0x8008
|
||||
#define GL_CONSTANT_COLOR 0x8001
|
||||
#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
|
||||
#define GL_CONSTANT_ALPHA 0x8003
|
||||
#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
|
||||
#define GL_FUNC_ADD 0x8006
|
||||
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
|
||||
#define GL_FUNC_SUBTRACT 0x800A
|
||||
#define GL_MIN 0x8007
|
||||
#define GL_MAX 0x8008
|
||||
typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount);
|
||||
@@ -2867,42 +2865,6 @@ GLAPI void APIENTRY glTextureBarrier (void);
|
||||
#endif
|
||||
#endif /* GL_VERSION_4_5 */
|
||||
|
||||
#ifndef GL_VERSION_4_6
|
||||
#define GL_VERSION_4_6 1
|
||||
#define GL_SHADER_BINARY_FORMAT_SPIR_V 0x9551
|
||||
#define GL_SPIR_V_BINARY 0x9552
|
||||
#define GL_PARAMETER_BUFFER 0x80EE
|
||||
#define GL_PARAMETER_BUFFER_BINDING 0x80EF
|
||||
#define GL_CONTEXT_FLAG_NO_ERROR_BIT 0x00000008
|
||||
#define GL_VERTICES_SUBMITTED 0x82EE
|
||||
#define GL_PRIMITIVES_SUBMITTED 0x82EF
|
||||
#define GL_VERTEX_SHADER_INVOCATIONS 0x82F0
|
||||
#define GL_TESS_CONTROL_SHADER_PATCHES 0x82F1
|
||||
#define GL_TESS_EVALUATION_SHADER_INVOCATIONS 0x82F2
|
||||
#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED 0x82F3
|
||||
#define GL_FRAGMENT_SHADER_INVOCATIONS 0x82F4
|
||||
#define GL_COMPUTE_SHADER_INVOCATIONS 0x82F5
|
||||
#define GL_CLIPPING_INPUT_PRIMITIVES 0x82F6
|
||||
#define GL_CLIPPING_OUTPUT_PRIMITIVES 0x82F7
|
||||
#define GL_POLYGON_OFFSET_CLAMP 0x8E1B
|
||||
#define GL_SPIR_V_EXTENSIONS 0x9553
|
||||
#define GL_NUM_SPIR_V_EXTENSIONS 0x9554
|
||||
#define GL_TEXTURE_MAX_ANISOTROPY 0x84FE
|
||||
#define GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF
|
||||
#define GL_TRANSFORM_FEEDBACK_OVERFLOW 0x82EC
|
||||
#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW 0x82ED
|
||||
typedef void (APIENTRYP PFNGLSPECIALIZESHADERPROC) (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLPOLYGONOFFSETCLAMPPROC) (GLfloat factor, GLfloat units, GLfloat clamp);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glSpecializeShader (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue);
|
||||
GLAPI void APIENTRY glMultiDrawArraysIndirectCount (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawElementsIndirectCount (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glPolygonOffsetClamp (GLfloat factor, GLfloat units, GLfloat clamp);
|
||||
#endif
|
||||
#endif /* GL_VERSION_4_6 */
|
||||
|
||||
#ifndef GL_ARB_ES2_compatibility
|
||||
#define GL_ARB_ES2_compatibility 1
|
||||
#endif /* GL_ARB_ES2_compatibility */
|
||||
@@ -3506,6 +3468,8 @@ typedef unsigned short GLhalfARB;
|
||||
|
||||
#ifndef GL_ARB_imaging
|
||||
#define GL_ARB_imaging 1
|
||||
#define GL_BLEND_COLOR 0x8005
|
||||
#define GL_BLEND_EQUATION 0x8009
|
||||
#define GL_CONVOLUTION_1D 0x8010
|
||||
#define GL_CONVOLUTION_2D 0x8011
|
||||
#define GL_SEPARABLE_2D 0x8012
|
||||
@@ -3642,11 +3606,11 @@ GLAPI void APIENTRY glResetMinmax (GLenum target);
|
||||
#define GL_ARB_indirect_parameters 1
|
||||
#define GL_PARAMETER_BUFFER_ARB 0x80EE
|
||||
#define GL_PARAMETER_BUFFER_BINDING_ARB 0x80EF
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glMultiDrawArraysIndirectCountARB (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawElementsIndirectCountARB (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawArraysIndirectCountARB (GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
GLAPI void APIENTRY glMultiDrawElementsIndirectCountARB (GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
|
||||
#endif
|
||||
#endif /* GL_ARB_indirect_parameters */
|
||||
|
||||
@@ -3923,10 +3887,6 @@ GLAPI void APIENTRY glPointParameterfvARB (GLenum pname, const GLfloat *params);
|
||||
#define GL_COORD_REPLACE_ARB 0x8862
|
||||
#endif /* GL_ARB_point_sprite */
|
||||
|
||||
#ifndef GL_ARB_polygon_offset_clamp
|
||||
#define GL_ARB_polygon_offset_clamp 1
|
||||
#endif /* GL_ARB_polygon_offset_clamp */
|
||||
|
||||
#ifndef GL_ARB_post_depth_coverage
|
||||
#define GL_ARB_post_depth_coverage 1
|
||||
#endif /* GL_ARB_post_depth_coverage */
|
||||
@@ -4330,10 +4290,6 @@ GLAPI void APIENTRY glTexPageCommitmentARB (GLenum target, GLint level, GLint xo
|
||||
#define GL_ARB_sparse_texture_clamp 1
|
||||
#endif /* GL_ARB_sparse_texture_clamp */
|
||||
|
||||
#ifndef GL_ARB_spirv_extensions
|
||||
#define GL_ARB_spirv_extensions 1
|
||||
#endif /* GL_ARB_spirv_extensions */
|
||||
|
||||
#ifndef GL_ARB_stencil_texturing
|
||||
#define GL_ARB_stencil_texturing 1
|
||||
#endif /* GL_ARB_stencil_texturing */
|
||||
@@ -4486,10 +4442,6 @@ GLAPI void APIENTRY glGetCompressedTexImageARB (GLenum target, GLint level, void
|
||||
#define GL_DOT3_RGBA_ARB 0x86AF
|
||||
#endif /* GL_ARB_texture_env_dot3 */
|
||||
|
||||
#ifndef GL_ARB_texture_filter_anisotropic
|
||||
#define GL_ARB_texture_filter_anisotropic 1
|
||||
#endif /* GL_ARB_texture_filter_anisotropic */
|
||||
|
||||
#ifndef GL_ARB_texture_filter_minmax
|
||||
#define GL_ARB_texture_filter_minmax 1
|
||||
#define GL_TEXTURE_REDUCTION_MODE_ARB 0x9366
|
||||
@@ -4995,16 +4947,6 @@ GLAPI void APIENTRY glBlendBarrierKHR (void);
|
||||
#define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR 0x00000008
|
||||
#endif /* GL_KHR_no_error */
|
||||
|
||||
#ifndef GL_KHR_parallel_shader_compile
|
||||
#define GL_KHR_parallel_shader_compile 1
|
||||
#define GL_MAX_SHADER_COMPILER_THREADS_KHR 0x91B0
|
||||
#define GL_COMPLETION_STATUS_KHR 0x91B1
|
||||
typedef void (APIENTRYP PFNGLMAXSHADERCOMPILERTHREADSKHRPROC) (GLuint count);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glMaxShaderCompilerThreadsKHR (GLuint count);
|
||||
#endif
|
||||
#endif /* GL_KHR_parallel_shader_compile */
|
||||
|
||||
#ifndef GL_KHR_robust_buffer_access_behavior
|
||||
#define GL_KHR_robust_buffer_access_behavior 1
|
||||
#endif /* GL_KHR_robust_buffer_access_behavior */
|
||||
@@ -5709,10 +5651,6 @@ GLAPI void APIENTRY glSetMultisamplefvAMD (GLenum pname, GLuint index, const GLf
|
||||
#define GL_AMD_shader_explicit_vertex_parameter 1
|
||||
#endif /* GL_AMD_shader_explicit_vertex_parameter */
|
||||
|
||||
#ifndef GL_AMD_shader_image_load_store_lod
|
||||
#define GL_AMD_shader_image_load_store_lod 1
|
||||
#endif /* GL_AMD_shader_image_load_store_lod */
|
||||
|
||||
#ifndef GL_AMD_shader_stencil_export
|
||||
#define GL_AMD_shader_stencil_export 1
|
||||
#endif /* GL_AMD_shader_stencil_export */
|
||||
@@ -7307,17 +7245,6 @@ GLAPI void APIENTRY glDrawRangeElementsEXT (GLenum mode, GLuint start, GLuint en
|
||||
#endif
|
||||
#endif /* GL_EXT_draw_range_elements */
|
||||
|
||||
#ifndef GL_EXT_external_buffer
|
||||
#define GL_EXT_external_buffer 1
|
||||
typedef void *GLeglClientBufferEXT;
|
||||
typedef void (APIENTRYP PFNGLBUFFERSTORAGEEXTERNALEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
typedef void (APIENTRYP PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glBufferStorageExternalEXT (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
GLAPI void APIENTRY glNamedBufferStorageExternalEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
#endif
|
||||
#endif /* GL_EXT_external_buffer */
|
||||
|
||||
#ifndef GL_EXT_fog_coord
|
||||
#define GL_EXT_fog_coord 1
|
||||
#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450
|
||||
@@ -9212,11 +9139,6 @@ GLAPI void APIENTRY glGetPerfQueryInfoINTEL (GLuint queryId, GLuint queryNameLen
|
||||
#define GL_PACK_INVERT_MESA 0x8758
|
||||
#endif /* GL_MESA_pack_invert */
|
||||
|
||||
#ifndef GL_MESA_program_binary_formats
|
||||
#define GL_MESA_program_binary_formats 1
|
||||
#define GL_PROGRAM_BINARY_FORMAT_MESA 0x875F
|
||||
#endif /* GL_MESA_program_binary_formats */
|
||||
|
||||
#ifndef GL_MESA_resize_buffers
|
||||
#define GL_MESA_resize_buffers 1
|
||||
typedef void (APIENTRYP PFNGLRESIZEBUFFERSMESAPROC) (void);
|
||||
@@ -9229,13 +9151,6 @@ GLAPI void APIENTRY glResizeBuffersMESA (void);
|
||||
#define GL_MESA_shader_integer_functions 1
|
||||
#endif /* GL_MESA_shader_integer_functions */
|
||||
|
||||
#ifndef GL_MESA_tile_raster_order
|
||||
#define GL_MESA_tile_raster_order 1
|
||||
#define GL_TILE_RASTER_ORDER_FIXED_MESA 0x8BB8
|
||||
#define GL_TILE_RASTER_ORDER_INCREASING_X_MESA 0x8BB9
|
||||
#define GL_TILE_RASTER_ORDER_INCREASING_Y_MESA 0x8BBA
|
||||
#endif /* GL_MESA_tile_raster_order */
|
||||
|
||||
#ifndef GL_MESA_window_pos
|
||||
#define GL_MESA_window_pos 1
|
||||
typedef void (APIENTRYP PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y);
|
||||
@@ -9462,10 +9377,6 @@ GLAPI void APIENTRY glBlendBarrierNV (void);
|
||||
#define GL_BLEND_ADVANCED_COHERENT_NV 0x9285
|
||||
#endif /* GL_NV_blend_equation_advanced_coherent */
|
||||
|
||||
#ifndef GL_NV_blend_minmax_factor
|
||||
#define GL_NV_blend_minmax_factor 1
|
||||
#endif /* GL_NV_blend_minmax_factor */
|
||||
|
||||
#ifndef GL_NV_blend_square
|
||||
#define GL_NV_blend_square 1
|
||||
#endif /* GL_NV_blend_square */
|
||||
@@ -10546,32 +10457,6 @@ GLAPI void APIENTRY glPrimitiveRestartIndexNV (GLuint index);
|
||||
#endif
|
||||
#endif /* GL_NV_primitive_restart */
|
||||
|
||||
#ifndef GL_NV_query_resource
|
||||
#define GL_NV_query_resource 1
|
||||
#define GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV 0x9540
|
||||
#define GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV 0x9542
|
||||
#define GL_QUERY_RESOURCE_SYS_RESERVED_NV 0x9544
|
||||
#define GL_QUERY_RESOURCE_TEXTURE_NV 0x9545
|
||||
#define GL_QUERY_RESOURCE_RENDERBUFFER_NV 0x9546
|
||||
#define GL_QUERY_RESOURCE_BUFFEROBJECT_NV 0x9547
|
||||
typedef GLint (APIENTRYP PFNGLQUERYRESOURCENVPROC) (GLenum queryType, GLint tagId, GLuint bufSize, GLint *buffer);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI GLint APIENTRY glQueryResourceNV (GLenum queryType, GLint tagId, GLuint bufSize, GLint *buffer);
|
||||
#endif
|
||||
#endif /* GL_NV_query_resource */
|
||||
|
||||
#ifndef GL_NV_query_resource_tag
|
||||
#define GL_NV_query_resource_tag 1
|
||||
typedef void (APIENTRYP PFNGLGENQUERYRESOURCETAGNVPROC) (GLsizei n, GLint *tagIds);
|
||||
typedef void (APIENTRYP PFNGLDELETEQUERYRESOURCETAGNVPROC) (GLsizei n, const GLint *tagIds);
|
||||
typedef void (APIENTRYP PFNGLQUERYRESOURCETAGNVPROC) (GLint tagId, const GLchar *tagString);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glGenQueryResourceTagNV (GLsizei n, GLint *tagIds);
|
||||
GLAPI void APIENTRY glDeleteQueryResourceTagNV (GLsizei n, const GLint *tagIds);
|
||||
GLAPI void APIENTRY glQueryResourceTagNV (GLint tagId, const GLchar *tagString);
|
||||
#endif
|
||||
#endif /* GL_NV_query_resource_tag */
|
||||
|
||||
#ifndef GL_NV_register_combiners
|
||||
#define GL_NV_register_combiners 1
|
||||
#define GL_REGISTER_COMBINERS_NV 0x8522
|
||||
@@ -10848,10 +10733,6 @@ GLAPI void APIENTRY glTextureImage3DMultisampleCoverageNV (GLuint texture, GLenu
|
||||
#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
|
||||
#endif /* GL_NV_texture_rectangle */
|
||||
|
||||
#ifndef GL_NV_texture_rectangle_compressed
|
||||
#define GL_NV_texture_rectangle_compressed 1
|
||||
#endif /* GL_NV_texture_rectangle_compressed */
|
||||
|
||||
#ifndef GL_NV_texture_shader
|
||||
#define GL_NV_texture_shader 1
|
||||
#define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C
|
||||
|
@@ -34,7 +34,7 @@ extern "C" {
|
||||
** https://github.com/KhronosGroup/OpenGL-Registry
|
||||
*/
|
||||
|
||||
#define GLX_GLXEXT_VERSION 20170728
|
||||
#define GLX_GLXEXT_VERSION 20170606
|
||||
|
||||
/* Generated C header for:
|
||||
* API: glx
|
||||
|
@@ -48,8 +48,6 @@ typedef unsigned int drm_drawable_t;
|
||||
typedef struct drm_clip_rect drm_clip_rect_t;
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/**
|
||||
* \name DRI interface structures
|
||||
*
|
||||
@@ -726,26 +724,11 @@ struct __DRIuseInvalidateExtensionRec {
|
||||
#define __DRI_ATTRIB_TEXTURE_2D_BIT 0x02
|
||||
#define __DRI_ATTRIB_TEXTURE_RECTANGLE_BIT 0x04
|
||||
|
||||
/* __DRI_ATTRIB_SWAP_METHOD */
|
||||
/* Note that with the exception of __DRI_ATTRIB_SWAP_NONE, we need to define
|
||||
* the same tokens as GLX. This is because old and current X servers will
|
||||
* transmit the driconf value grabbed from the AIGLX driver untranslated as
|
||||
* the GLX fbconfig value. __DRI_ATTRIB_SWAP_NONE is only used by dri drivers
|
||||
* to signal to the dri core that the driconfig is single-buffer.
|
||||
*/
|
||||
#define __DRI_ATTRIB_SWAP_NONE 0x0000
|
||||
#define __DRI_ATTRIB_SWAP_EXCHANGE 0x8061
|
||||
#define __DRI_ATTRIB_SWAP_COPY 0x8062
|
||||
#define __DRI_ATTRIB_SWAP_UNDEFINED 0x8063
|
||||
|
||||
/**
|
||||
* This extension defines the core DRI functionality.
|
||||
*
|
||||
* Version >= 2 indicates that getConfigAttrib with __DRI_ATTRIB_SWAP_METHOD
|
||||
* returns a reliable value.
|
||||
*/
|
||||
#define __DRI_CORE "DRI_Core"
|
||||
#define __DRI_CORE_VERSION 2
|
||||
#define __DRI_CORE_VERSION 1
|
||||
|
||||
struct __DRIcoreExtensionRec {
|
||||
__DRIextension base;
|
||||
@@ -984,15 +967,7 @@ struct __DRIbufferRec {
|
||||
};
|
||||
|
||||
#define __DRI_DRI2_LOADER "DRI_DRI2Loader"
|
||||
#define __DRI_DRI2_LOADER_VERSION 4
|
||||
|
||||
enum dri_loader_cap {
|
||||
/* Whether the loader handles RGBA channel ordering correctly. If not,
|
||||
* only BGRA ordering can be exposed.
|
||||
*/
|
||||
DRI_LOADER_CAP_RGBA_ORDERING,
|
||||
};
|
||||
|
||||
#define __DRI_DRI2_LOADER_VERSION 3
|
||||
struct __DRIdri2LoaderExtensionRec {
|
||||
__DRIextension base;
|
||||
|
||||
@@ -1042,18 +1017,6 @@ struct __DRIdri2LoaderExtensionRec {
|
||||
int *width, int *height,
|
||||
unsigned int *attachments, int count,
|
||||
int *out_count, void *loaderPrivate);
|
||||
|
||||
/**
|
||||
* Return a loader capability value. If the loader doesn't know the enum,
|
||||
* it will return 0.
|
||||
*
|
||||
* \param loaderPrivate The last parameter of createNewScreen or
|
||||
* createNewScreen2.
|
||||
* \param cap See the enum.
|
||||
*
|
||||
* \since 4
|
||||
*/
|
||||
unsigned (*getCapability)(void *loaderPrivate, enum dri_loader_cap cap);
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -1100,22 +1063,6 @@ struct __DRIdri2LoaderExtensionRec {
|
||||
#define __DRI_CTX_RESET_LOSE_CONTEXT 1
|
||||
/*@}*/
|
||||
|
||||
#define __DRI_CTX_ATTRIB_PRIORITY 4
|
||||
|
||||
#define __DRI_CTX_PRIORITY_LOW 0
|
||||
#define __DRI_CTX_PRIORITY_MEDIUM 1
|
||||
#define __DRI_CTX_PRIORITY_HIGH 2
|
||||
|
||||
/**
|
||||
* \name Context release behaviors.
|
||||
*/
|
||||
/*@{*/
|
||||
#define __DRI_CTX_ATTRIB_RELEASE_BEHAVIOR 5
|
||||
|
||||
#define __DRI_CTX_RELEASE_BEHAVIOR_NONE 0
|
||||
#define __DRI_CTX_RELEASE_BEHAVIOR_FLUSH 1
|
||||
/*@}*/
|
||||
|
||||
/**
|
||||
* \name Reasons that __DRIdri2Extension::createContextAttribs might fail
|
||||
*/
|
||||
@@ -1196,7 +1143,7 @@ struct __DRIdri2ExtensionRec {
|
||||
* extensions.
|
||||
*/
|
||||
#define __DRI_IMAGE "DRI_IMAGE"
|
||||
#define __DRI_IMAGE_VERSION 17
|
||||
#define __DRI_IMAGE_VERSION 15
|
||||
|
||||
/**
|
||||
* These formats correspond to the similarly named MESA_FORMAT_*
|
||||
@@ -1208,7 +1155,7 @@ struct __DRIdri2ExtensionRec {
|
||||
* by the driver (YUV planar formats) but serve as a base image for
|
||||
* creating sub-images for the different planes within the image.
|
||||
*
|
||||
* R8, GR88 and NONE should not be used with createImageFromName or
|
||||
* R8, GR88 and NONE should not be used with createImageFormName or
|
||||
* createImage, and are returned by query from sub images created with
|
||||
* createImageFromNames (NONE, see above) and fromPlane (R8 & GR88).
|
||||
*/
|
||||
@@ -1226,11 +1173,10 @@ struct __DRIdri2ExtensionRec {
|
||||
#define __DRI_IMAGE_FORMAT_ARGB1555 0x100c
|
||||
#define __DRI_IMAGE_FORMAT_R16 0x100d
|
||||
#define __DRI_IMAGE_FORMAT_GR1616 0x100e
|
||||
#define __DRI_IMAGE_FORMAT_YUYV 0x100f
|
||||
|
||||
#define __DRI_IMAGE_USE_SHARE 0x0001
|
||||
#define __DRI_IMAGE_USE_SCANOUT 0x0002
|
||||
#define __DRI_IMAGE_USE_CURSOR 0x0004 /* Deprecated */
|
||||
#define __DRI_IMAGE_USE_CURSOR 0x0004 /* Depricated */
|
||||
#define __DRI_IMAGE_USE_LINEAR 0x0008
|
||||
/* The buffer will only be read by an external process after SwapBuffers,
|
||||
* in contrary to gbm buffers, front buffers and fake front buffers, which
|
||||
@@ -1262,15 +1208,7 @@ struct __DRIdri2ExtensionRec {
|
||||
#define __DRI_IMAGE_FOURCC_XRGB8888 0x34325258
|
||||
#define __DRI_IMAGE_FOURCC_ABGR8888 0x34324241
|
||||
#define __DRI_IMAGE_FOURCC_XBGR8888 0x34324258
|
||||
#define __DRI_IMAGE_FOURCC_SARGB8888 0x83324258
|
||||
#define __DRI_IMAGE_FOURCC_ARGB2101010 0x30335241
|
||||
#define __DRI_IMAGE_FOURCC_XRGB2101010 0x30335258
|
||||
#define __DRI_IMAGE_FOURCC_ABGR2101010 0x30334241
|
||||
#define __DRI_IMAGE_FOURCC_XBGR2101010 0x30334258
|
||||
#define __DRI_IMAGE_FOURCC_RGBA1010102 0x30334152
|
||||
#define __DRI_IMAGE_FOURCC_RGBX1010102 0x30335852
|
||||
#define __DRI_IMAGE_FOURCC_BGRA1010102 0x30334142
|
||||
#define __DRI_IMAGE_FOURCC_BGRX1010102 0x30335842
|
||||
#define __DRI_IMAGE_FOURCC_SARGB8888 0x83324258
|
||||
#define __DRI_IMAGE_FOURCC_YUV410 0x39565559
|
||||
#define __DRI_IMAGE_FOURCC_YUV411 0x31315559
|
||||
#define __DRI_IMAGE_FOURCC_YUV420 0x32315559
|
||||
@@ -1385,13 +1323,6 @@ enum __DRIChromaSiting {
|
||||
#define __BLIT_FLAG_FLUSH 0x0001
|
||||
#define __BLIT_FLAG_FINISH 0x0002
|
||||
|
||||
/**
|
||||
* queryDmaBufFormatModifierAttribs attributes
|
||||
*/
|
||||
|
||||
/* Available in version 16 */
|
||||
#define __DRI_IMAGE_FORMAT_MODIFIER_ATTRIB_PLANE_COUNT 0x0001
|
||||
|
||||
typedef struct __DRIimageRec __DRIimage;
|
||||
typedef struct __DRIimageExtensionRec __DRIimageExtension;
|
||||
struct __DRIimageExtensionRec {
|
||||
@@ -1402,7 +1333,6 @@ struct __DRIimageExtensionRec {
|
||||
int name, int pitch,
|
||||
void *loaderPrivate);
|
||||
|
||||
/* Deprecated since version 17; see createImageFromRenderbuffer2 */
|
||||
__DRIimage *(*createImageFromRenderbuffer)(__DRIcontext *context,
|
||||
int renderbuffer,
|
||||
void *loaderPrivate);
|
||||
@@ -1633,40 +1563,6 @@ struct __DRIimageExtensionRec {
|
||||
int max, uint64_t *modifiers,
|
||||
unsigned int *external_only,
|
||||
int *count);
|
||||
|
||||
/**
|
||||
* dmabuf format modifier attribute query for a given format and modifier.
|
||||
*
|
||||
* \param fourcc The format to query. If this format is not supported by
|
||||
* the driver, return false.
|
||||
* \param modifier The modifier to query. If this format+modifier is not
|
||||
* supported by the driver, return false.
|
||||
* \param attrib The __DRI_IMAGE_FORMAT_MODIFIER_ATTRIB to query.
|
||||
* \param value A pointer to where to store the result of the query.
|
||||
*
|
||||
* Returns true upon success.
|
||||
*
|
||||
* \since 16
|
||||
*/
|
||||
GLboolean (*queryDmaBufFormatModifierAttribs)(__DRIscreen *screen,
|
||||
uint32_t fourcc, uint64_t modifier,
|
||||
int attrib, uint64_t *value);
|
||||
|
||||
/**
|
||||
* Create a DRI image from the given renderbuffer.
|
||||
*
|
||||
* \param context the current DRI context
|
||||
* \param renderbuffer the GL name of the renderbuffer
|
||||
* \param loaderPrivate for callbacks into the loader related to the image
|
||||
* \param error will be set to one of __DRI_IMAGE_ERROR_xxx
|
||||
* \return the newly created image on success, or NULL otherwise
|
||||
*
|
||||
* \since 17
|
||||
*/
|
||||
__DRIimage *(*createImageFromRenderbuffer2)(__DRIcontext *context,
|
||||
int renderbuffer,
|
||||
void *loaderPrivate,
|
||||
unsigned *error);
|
||||
};
|
||||
|
||||
|
||||
@@ -1734,49 +1630,18 @@ typedef struct __DRInoErrorExtensionRec {
|
||||
__DRIextension base;
|
||||
} __DRInoErrorExtension;
|
||||
|
||||
/*
|
||||
* Flush control driver extension.
|
||||
*
|
||||
* Existence of this extension means the driver can accept the
|
||||
* \c __DRI_CTX_ATTRIB_RELEASE_BEHAVIOR attribute in
|
||||
* \c __DRIdri2ExtensionRec::createContextAttribs.
|
||||
*/
|
||||
#define __DRI2_FLUSH_CONTROL "DRI_FlushControl"
|
||||
#define __DRI2_FLUSH_CONTROL_VERSION 1
|
||||
|
||||
typedef struct __DRI2flushControlExtensionRec __DRI2flushControlExtension;
|
||||
struct __DRI2flushControlExtensionRec {
|
||||
__DRIextension base;
|
||||
};
|
||||
|
||||
/**
|
||||
* DRI config options extension.
|
||||
*
|
||||
* This extension provides the XML string containing driver options for use by
|
||||
* the loader in supporting the driconf application.
|
||||
*
|
||||
* v2:
|
||||
* - Add the getXml getter function which allows the driver more flexibility in
|
||||
* how the XML is provided.
|
||||
* - Deprecate the direct xml pointer. It is only provided as a fallback for
|
||||
* older versions of libGL and must not be used by clients that are aware of
|
||||
* the newer version. Future driver versions may set it to NULL.
|
||||
*/
|
||||
#define __DRI_CONFIG_OPTIONS "DRI_ConfigOptions"
|
||||
#define __DRI_CONFIG_OPTIONS_VERSION 2
|
||||
#define __DRI_CONFIG_OPTIONS_VERSION 1
|
||||
|
||||
typedef struct __DRIconfigOptionsExtensionRec {
|
||||
__DRIextension base;
|
||||
const char *xml; /**< deprecated since v2, use getXml instead */
|
||||
|
||||
/**
|
||||
* Get an XML string that describes available driver options for use by a
|
||||
* config application.
|
||||
*
|
||||
* The returned string must be heap-allocated. The caller is responsible for
|
||||
* freeing it.
|
||||
*/
|
||||
char *(*getXml)(const char *driver_name);
|
||||
const char *xml;
|
||||
} __DRIconfigOptionsExtension;
|
||||
|
||||
/**
|
||||
@@ -1822,14 +1687,6 @@ typedef struct __DRIDriverVtableExtensionRec {
|
||||
*/
|
||||
#define __DRI2_RENDERER_HAS_FRAMEBUFFER_SRGB 0x000c
|
||||
|
||||
/* Bitmaks of supported/available context priorities - must match
|
||||
* __EGL_CONTEXT_PRIORITY_LOW_BIT et al
|
||||
*/
|
||||
#define __DRI2_RENDERER_HAS_CONTEXT_PRIORITY 0x000d
|
||||
#define __DRI2_RENDERER_HAS_CONTEXT_PRIORITY_LOW (1 << 0)
|
||||
#define __DRI2_RENDERER_HAS_CONTEXT_PRIORITY_MEDIUM (1 << 1)
|
||||
#define __DRI2_RENDERER_HAS_CONTEXT_PRIORITY_HIGH (1 << 2)
|
||||
|
||||
typedef struct __DRI2rendererQueryExtensionRec __DRI2rendererQueryExtension;
|
||||
struct __DRI2rendererQueryExtensionRec {
|
||||
__DRIextension base;
|
||||
@@ -1854,7 +1711,7 @@ struct __DRIimageList {
|
||||
};
|
||||
|
||||
#define __DRI_IMAGE_LOADER "DRI_IMAGE_LOADER"
|
||||
#define __DRI_IMAGE_LOADER_VERSION 3
|
||||
#define __DRI_IMAGE_LOADER_VERSION 1
|
||||
|
||||
struct __DRIimageLoaderExtensionRec {
|
||||
__DRIextension base;
|
||||
@@ -1890,28 +1747,6 @@ struct __DRIimageLoaderExtensionRec {
|
||||
* into __DRIdri2ExtensionRec::createNewDrawable
|
||||
*/
|
||||
void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate);
|
||||
|
||||
/**
|
||||
* Return a loader capability value. If the loader doesn't know the enum,
|
||||
* it will return 0.
|
||||
*
|
||||
* \since 2
|
||||
*/
|
||||
unsigned (*getCapability)(void *loaderPrivate, enum dri_loader_cap cap);
|
||||
|
||||
/**
|
||||
* Flush swap buffers
|
||||
*
|
||||
* Make sure any outstanding swap buffers have been submitted to the
|
||||
* device.
|
||||
*
|
||||
* \param driDrawable Drawable whose swaps need to be flushed
|
||||
* \param loaderPrivate Loader's private data that was previously passed
|
||||
* into __DRIdri2ExtensionRec::createNewDrawable
|
||||
*
|
||||
* \since 3
|
||||
*/
|
||||
void (*flushSwapBuffers)(__DRIdrawable *driDrawable, void *loaderPrivate);
|
||||
};
|
||||
|
||||
/**
|
||||
|
@@ -58,16 +58,12 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/* Forward declarations to avoid inclusion of GL/glx.h */
|
||||
#ifndef GLX_H
|
||||
struct _XDisplay;
|
||||
struct __GLXcontextRec;
|
||||
#endif
|
||||
|
||||
/* Forward declarations to avoid inclusion of EGL/egl.h */
|
||||
#ifndef __egl_h_
|
||||
typedef void *EGLDisplay;
|
||||
typedef void *EGLContext;
|
||||
#endif
|
||||
|
||||
/** Returned error codes. */
|
||||
enum {
|
||||
|
@@ -39,7 +39,7 @@ extern "C" {
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#define WGL_WGLEXT_VERSION 20170817
|
||||
#define WGL_WGLEXT_VERSION 20170606
|
||||
|
||||
/* Generated C header for:
|
||||
* API: wgl
|
||||
|
@@ -38,7 +38,7 @@ extern "C" {
|
||||
#define GL_APIENTRYP GL_APIENTRY*
|
||||
#endif
|
||||
|
||||
/* Generated on date 20170804 */
|
||||
/* Generated on date 20170606 */
|
||||
|
||||
/* Generated C header for:
|
||||
* API: gles2
|
||||
@@ -324,12 +324,12 @@ GL_APICALL GLboolean GL_APIENTRY glIsEnablediOES (GLenum target, GLuint index);
|
||||
typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXOESPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXOESPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXOESPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, const GLint *basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXOESPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, const GLint *basevertex);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GL_APICALL void GL_APIENTRY glDrawElementsBaseVertexOES (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
GL_APICALL void GL_APIENTRY glDrawRangeElementsBaseVertexOES (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
GL_APICALL void GL_APIENTRY glDrawElementsInstancedBaseVertexOES (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
|
||||
GL_APICALL void GL_APIENTRY glMultiDrawElementsBaseVertexEXT (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, const GLint *basevertex);
|
||||
GL_APICALL void GL_APIENTRY glMultiDrawElementsBaseVertexOES (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, const GLint *basevertex);
|
||||
#endif
|
||||
#endif /* GL_OES_draw_elements_base_vertex */
|
||||
|
||||
@@ -1311,10 +1311,12 @@ GL_APICALL GLboolean GL_APIENTRY glIsEnablediEXT (GLenum target, GLuint index);
|
||||
typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
|
||||
typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, const GLint *basevertex);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GL_APICALL void GL_APIENTRY glDrawElementsBaseVertexEXT (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
GL_APICALL void GL_APIENTRY glDrawRangeElementsBaseVertexEXT (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
|
||||
GL_APICALL void GL_APIENTRY glDrawElementsInstancedBaseVertexEXT (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
|
||||
GL_APICALL void GL_APIENTRY glMultiDrawElementsBaseVertexEXT (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, const GLint *basevertex);
|
||||
#endif
|
||||
#endif /* GL_EXT_draw_elements_base_vertex */
|
||||
|
||||
@@ -1338,17 +1340,6 @@ GL_APICALL void GL_APIENTRY glDrawTransformFeedbackInstancedEXT (GLenum mode, GL
|
||||
#endif
|
||||
#endif /* GL_EXT_draw_transform_feedback */
|
||||
|
||||
#ifndef GL_EXT_external_buffer
|
||||
#define GL_EXT_external_buffer 1
|
||||
typedef void *GLeglClientBufferEXT;
|
||||
typedef void (GL_APIENTRYP PFNGLBUFFERSTORAGEEXTERNALEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
typedef void (GL_APIENTRYP PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GL_APICALL void GL_APIENTRY glBufferStorageExternalEXT (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
GL_APICALL void GL_APIENTRY glNamedBufferStorageExternalEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
|
||||
#endif
|
||||
#endif /* GL_EXT_external_buffer */
|
||||
|
||||
#ifndef GL_EXT_float_blend
|
||||
#define GL_EXT_float_blend 1
|
||||
#endif /* GL_EXT_float_blend */
|
||||
@@ -2010,42 +2001,18 @@ GL_APICALL void GL_APIENTRY glTexBufferRangeEXT (GLenum target, GLenum internalf
|
||||
#define GL_TEXTURE_ASTC_DECODE_PRECISION_EXT 0x8F69
|
||||
#endif /* GL_EXT_texture_compression_astc_decode_mode */
|
||||
|
||||
#ifndef GL_EXT_texture_compression_bptc
|
||||
#define GL_EXT_texture_compression_bptc 1
|
||||
#define GL_COMPRESSED_RGBA_BPTC_UNORM_EXT 0x8E8C
|
||||
#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT 0x8E8D
|
||||
#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT 0x8E8E
|
||||
#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT 0x8E8F
|
||||
#endif /* GL_EXT_texture_compression_bptc */
|
||||
|
||||
#ifndef GL_EXT_texture_compression_dxt1
|
||||
#define GL_EXT_texture_compression_dxt1 1
|
||||
#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
|
||||
#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
|
||||
#endif /* GL_EXT_texture_compression_dxt1 */
|
||||
|
||||
#ifndef GL_EXT_texture_compression_rgtc
|
||||
#define GL_EXT_texture_compression_rgtc 1
|
||||
#define GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB
|
||||
#define GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC
|
||||
#define GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD
|
||||
#define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE
|
||||
#endif /* GL_EXT_texture_compression_rgtc */
|
||||
|
||||
#ifndef GL_EXT_texture_compression_s3tc
|
||||
#define GL_EXT_texture_compression_s3tc 1
|
||||
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
|
||||
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
|
||||
#endif /* GL_EXT_texture_compression_s3tc */
|
||||
|
||||
#ifndef GL_EXT_texture_compression_s3tc_srgb
|
||||
#define GL_EXT_texture_compression_s3tc_srgb 1
|
||||
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
|
||||
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
|
||||
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
|
||||
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
|
||||
#endif /* GL_EXT_texture_compression_s3tc_srgb */
|
||||
|
||||
#ifndef GL_EXT_texture_cube_map_array
|
||||
#define GL_EXT_texture_cube_map_array 1
|
||||
#define GL_TEXTURE_CUBE_MAP_ARRAY_EXT 0x9009
|
||||
@@ -2334,11 +2301,6 @@ GL_APICALL void GL_APIENTRY glGetPerfQueryInfoINTEL (GLuint queryId, GLuint quer
|
||||
#endif
|
||||
#endif /* GL_INTEL_performance_query */
|
||||
|
||||
#ifndef GL_MESA_program_binary_formats
|
||||
#define GL_MESA_program_binary_formats 1
|
||||
#define GL_PROGRAM_BINARY_FORMAT_MESA 0x875F
|
||||
#endif /* GL_MESA_program_binary_formats */
|
||||
|
||||
#ifndef GL_MESA_shader_integer_functions
|
||||
#define GL_MESA_shader_integer_functions 1
|
||||
#endif /* GL_MESA_shader_integer_functions */
|
||||
@@ -2443,12 +2405,6 @@ GL_APICALL void GL_APIENTRY glBlendBarrierNV (void);
|
||||
#define GL_BLEND_ADVANCED_COHERENT_NV 0x9285
|
||||
#endif /* GL_NV_blend_equation_advanced_coherent */
|
||||
|
||||
#ifndef GL_NV_blend_minmax_factor
|
||||
#define GL_NV_blend_minmax_factor 1
|
||||
#define GL_FACTOR_MIN_AMD 0x901C
|
||||
#define GL_FACTOR_MAX_AMD 0x901D
|
||||
#endif /* GL_NV_blend_minmax_factor */
|
||||
|
||||
#ifndef GL_NV_conditional_render
|
||||
#define GL_NV_conditional_render 1
|
||||
#define GL_QUERY_WAIT_NV 0x8E13
|
||||
@@ -3122,14 +3078,6 @@ GL_APICALL void GL_APIENTRY glGetProgramResourcefvNV (GLuint program, GLenum pro
|
||||
#define GL_SHARED_EDGE_NV 0xC0
|
||||
#endif /* GL_NV_path_rendering_shared_edge */
|
||||
|
||||
#ifndef GL_NV_pixel_buffer_object
|
||||
#define GL_NV_pixel_buffer_object 1
|
||||
#define GL_PIXEL_PACK_BUFFER_NV 0x88EB
|
||||
#define GL_PIXEL_UNPACK_BUFFER_NV 0x88EC
|
||||
#define GL_PIXEL_PACK_BUFFER_BINDING_NV 0x88ED
|
||||
#define GL_PIXEL_UNPACK_BUFFER_BINDING_NV 0x88EF
|
||||
#endif /* GL_NV_pixel_buffer_object */
|
||||
|
||||
#ifndef GL_NV_polygon_mode
|
||||
#define GL_NV_polygon_mode 1
|
||||
#define GL_POLYGON_MODE_NV 0x0B40
|
||||
|
@@ -30,6 +30,9 @@
|
||||
#define EMULATED_THREADS_H_INCLUDED_
|
||||
|
||||
#include <time.h>
|
||||
#ifdef _MSC_VER
|
||||
#include <thr/xtimec.h> // for xtime
|
||||
#endif
|
||||
|
||||
#ifndef TIME_UTC
|
||||
#define TIME_UTC 1
|
||||
@@ -41,6 +44,14 @@
|
||||
typedef void (*tss_dtor_t)(void*);
|
||||
typedef int (*thrd_start_t)(void*);
|
||||
|
||||
#ifndef _MSC_VER
|
||||
struct xtime {
|
||||
time_t sec;
|
||||
long nsec;
|
||||
};
|
||||
typedef struct xtime xtime;
|
||||
#endif
|
||||
|
||||
|
||||
/*-------------------- enumeration constants --------------------*/
|
||||
enum {
|
||||
|
@@ -132,15 +132,19 @@ cnd_signal(cnd_t *cond)
|
||||
|
||||
// 7.25.3.5
|
||||
static inline int
|
||||
cnd_timedwait(cnd_t *cond, mtx_t *mtx, const struct timespec *abs_time)
|
||||
cnd_timedwait(cnd_t *cond, mtx_t *mtx, const xtime *xt)
|
||||
{
|
||||
struct timespec abs_time;
|
||||
int rt;
|
||||
|
||||
assert(mtx != NULL);
|
||||
assert(cond != NULL);
|
||||
assert(abs_time != NULL);
|
||||
assert(xt != NULL);
|
||||
|
||||
rt = pthread_cond_timedwait(cond, mtx, abs_time);
|
||||
abs_time.tv_sec = xt->sec;
|
||||
abs_time.tv_nsec = xt->nsec;
|
||||
|
||||
rt = pthread_cond_timedwait(cond, mtx, &abs_time);
|
||||
if (rt == ETIMEDOUT)
|
||||
return thrd_busy;
|
||||
return (rt == 0) ? thrd_success : thrd_error;
|
||||
@@ -231,21 +235,24 @@ thrd_yield(void);
|
||||
|
||||
// 7.25.4.4
|
||||
static inline int
|
||||
mtx_timedlock(mtx_t *mtx, const struct timespec *ts)
|
||||
mtx_timedlock(mtx_t *mtx, const xtime *xt)
|
||||
{
|
||||
assert(mtx != NULL);
|
||||
assert(ts != NULL);
|
||||
assert(xt != NULL);
|
||||
|
||||
{
|
||||
#ifdef EMULATED_THREADS_USE_NATIVE_TIMEDLOCK
|
||||
struct timespec ts;
|
||||
int rt;
|
||||
rt = pthread_mutex_timedlock(mtx, ts);
|
||||
ts.tv_sec = xt->sec;
|
||||
ts.tv_nsec = xt->nsec;
|
||||
rt = pthread_mutex_timedlock(mtx, &ts);
|
||||
if (rt == 0)
|
||||
return thrd_success;
|
||||
return (rt == ETIMEDOUT) ? thrd_busy : thrd_error;
|
||||
#else
|
||||
time_t expire = time(NULL);
|
||||
expire += ts->tv_sec;
|
||||
expire += xt->sec;
|
||||
while (mtx_trylock(mtx) != thrd_success) {
|
||||
time_t now = time(NULL);
|
||||
if (expire < now)
|
||||
@@ -335,10 +342,13 @@ thrd_join(thrd_t thr, int *res)
|
||||
|
||||
// 7.25.5.7
|
||||
static inline void
|
||||
thrd_sleep(const struct timespec *time_point, struct timespec *remaining)
|
||||
thrd_sleep(const xtime *xt)
|
||||
{
|
||||
assert(time_point != NULL);
|
||||
nanosleep(time_point, remaining);
|
||||
struct timespec req;
|
||||
assert(xt);
|
||||
req.tv_sec = xt->sec;
|
||||
req.tv_nsec = xt->nsec;
|
||||
nanosleep(&req, NULL);
|
||||
}
|
||||
|
||||
// 7.25.5.8
|
||||
@@ -382,15 +392,14 @@ tss_set(tss_t key, void *val)
|
||||
|
||||
/*-------------------- 7.25.7 Time functions --------------------*/
|
||||
// 7.25.6.1
|
||||
#ifndef HAVE_TIMESPEC_GET
|
||||
static inline int
|
||||
timespec_get(struct timespec *ts, int base)
|
||||
xtime_get(xtime *xt, int base)
|
||||
{
|
||||
if (!ts) return 0;
|
||||
if (!xt) return 0;
|
||||
if (base == TIME_UTC) {
|
||||
clock_gettime(CLOCK_REALTIME, ts);
|
||||
xt->sec = time(NULL);
|
||||
xt->nsec = 0;
|
||||
return base;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
@@ -75,20 +75,6 @@ Configuration macro:
|
||||
#error EMULATED_THREADS_USE_NATIVE_CV requires _WIN32_WINNT>=0x0600
|
||||
#endif
|
||||
|
||||
/* Visual Studio 2015 and later */
|
||||
#if _MSC_VER >= 1900
|
||||
#define HAVE_TIMESPEC
|
||||
#define HAVE_TIMESPEC_GET
|
||||
#elif defined(__MINGW32__)
|
||||
#define HAVE_TIMESPEC
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_TIMESPEC
|
||||
struct timespec {
|
||||
time_t tv_sec;
|
||||
long tv_nsec;
|
||||
};
|
||||
#endif
|
||||
|
||||
/*---------------------------- macros ----------------------------*/
|
||||
#ifdef EMULATED_THREADS_USE_NATIVE_CALL_ONCE
|
||||
@@ -160,9 +146,9 @@ static unsigned __stdcall impl_thrd_routine(void *p)
|
||||
return (unsigned)code;
|
||||
}
|
||||
|
||||
static DWORD impl_timespec2msec(const struct timespec *ts)
|
||||
static DWORD impl_xtime2msec(const xtime *xt)
|
||||
{
|
||||
return (DWORD)((ts->tv_sec * 1000U) + (ts->tv_nsec / 1000000L));
|
||||
return (DWORD)((xt->sec * 1000U) + (xt->nsec / 1000000L));
|
||||
}
|
||||
|
||||
#ifdef EMULATED_THREADS_USE_NATIVE_CALL_ONCE
|
||||
@@ -220,7 +206,7 @@ static void impl_cond_do_signal(cnd_t *cond, int broadcast)
|
||||
ReleaseSemaphore(cond->sem_queue, nsignal, NULL);
|
||||
}
|
||||
|
||||
static int impl_cond_do_wait(cnd_t *cond, mtx_t *mtx, const struct timespec *ts)
|
||||
static int impl_cond_do_wait(cnd_t *cond, mtx_t *mtx, const xtime *xt)
|
||||
{
|
||||
int nleft = 0;
|
||||
int ngone = 0;
|
||||
@@ -233,7 +219,7 @@ static int impl_cond_do_wait(cnd_t *cond, mtx_t *mtx, const struct timespec *ts)
|
||||
|
||||
mtx_unlock(mtx);
|
||||
|
||||
w = WaitForSingleObject(cond->sem_queue, ts ? impl_timespec2msec(ts) : INFINITE);
|
||||
w = WaitForSingleObject(cond->sem_queue, xt ? impl_xtime2msec(xt) : INFINITE);
|
||||
timeout = (w == WAIT_TIMEOUT);
|
||||
|
||||
EnterCriticalSection(&cond->monitor);
|
||||
@@ -392,15 +378,15 @@ cnd_signal(cnd_t *cond)
|
||||
|
||||
// 7.25.3.5
|
||||
static inline int
|
||||
cnd_timedwait(cnd_t *cond, mtx_t *mtx, const struct timespec *abs_time)
|
||||
cnd_timedwait(cnd_t *cond, mtx_t *mtx, const xtime *xt)
|
||||
{
|
||||
if (!cond || !mtx || !abs_time) return thrd_error;
|
||||
if (!cond || !mtx || !xt) return thrd_error;
|
||||
#ifdef EMULATED_THREADS_USE_NATIVE_CV
|
||||
if (SleepConditionVariableCS(&cond->condvar, mtx, impl_timespec2msec(abs_time)))
|
||||
if (SleepConditionVariableCS(&cond->condvar, mtx, impl_xtime2msec(xt)))
|
||||
return thrd_success;
|
||||
return (GetLastError() == ERROR_TIMEOUT) ? thrd_busy : thrd_error;
|
||||
#else
|
||||
return impl_cond_do_wait(cond, mtx, abs_time);
|
||||
return impl_cond_do_wait(cond, mtx, xt);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -452,12 +438,12 @@ mtx_lock(mtx_t *mtx)
|
||||
|
||||
// 7.25.4.4
|
||||
static inline int
|
||||
mtx_timedlock(mtx_t *mtx, const struct timespec *ts)
|
||||
mtx_timedlock(mtx_t *mtx, const xtime *xt)
|
||||
{
|
||||
time_t expire, now;
|
||||
if (!mtx || !ts) return thrd_error;
|
||||
if (!mtx || !xt) return thrd_error;
|
||||
expire = time(NULL);
|
||||
expire += ts->tv_sec;
|
||||
expire += xt->sec;
|
||||
while (mtx_trylock(mtx) != thrd_success) {
|
||||
now = time(NULL);
|
||||
if (expire < now)
|
||||
@@ -593,11 +579,10 @@ thrd_join(thrd_t thr, int *res)
|
||||
|
||||
// 7.25.5.7
|
||||
static inline void
|
||||
thrd_sleep(const struct timespec *time_point, struct timespec *remaining)
|
||||
thrd_sleep(const xtime *xt)
|
||||
{
|
||||
assert(time_point);
|
||||
assert(!remaining); /* not implemented */
|
||||
Sleep(impl_timespec2msec(time_point));
|
||||
assert(xt);
|
||||
Sleep(impl_xtime2msec(xt));
|
||||
}
|
||||
|
||||
// 7.25.5.8
|
||||
@@ -648,16 +633,14 @@ tss_set(tss_t key, void *val)
|
||||
|
||||
/*-------------------- 7.25.7 Time functions --------------------*/
|
||||
// 7.25.6.1
|
||||
#ifndef HAVE_TIMESPEC_GET
|
||||
static inline int
|
||||
timespec_get(struct timespec *ts, int base)
|
||||
xtime_get(xtime *xt, int base)
|
||||
{
|
||||
if (!ts) return 0;
|
||||
if (!xt) return 0;
|
||||
if (base == TIME_UTC) {
|
||||
ts->tv_sec = time(NULL);
|
||||
ts->tv_nsec = 0;
|
||||
xt->sec = time(NULL);
|
||||
xt->nsec = 0;
|
||||
return base;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
@@ -164,7 +164,6 @@ test_c99_compat_h(const void * restrict a,
|
||||
# define HAVE_FUNC_ATTRIBUTE_FORMAT 1
|
||||
# define HAVE_FUNC_ATTRIBUTE_PACKED 1
|
||||
# define HAVE_FUNC_ATTRIBUTE_ALIAS 1
|
||||
# define HAVE_FUNC_ATTRIBUTE_NORETURN 1
|
||||
|
||||
# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
|
||||
/* https://gcc.gnu.org/onlinedocs/gcc-4.3.6/gcc/Other-Builtins.html */
|
||||
|
@@ -3,9 +3,6 @@ required by the anv & i965 drivers to communicate with the kernel.
|
||||
Whenever either of those driver needs new definitions for new kernel
|
||||
APIs, these files should be updated.
|
||||
|
||||
These files in master should only be updated once the changes have landed
|
||||
in the drm-next tree.
|
||||
|
||||
You can copy files installed after running this from the kernel
|
||||
repository, at version the drivers require :
|
||||
|
||||
@@ -13,9 +10,9 @@ $ make headers_install INSTALL_HDR_PATH=/path/to/install
|
||||
|
||||
The last update was done at the following kernel commit :
|
||||
|
||||
commit ca797d29cd63e7b71b4eea29aff3b1cefd1ecb59
|
||||
Merge: 2c1c55cb75a9 010d118c2061
|
||||
commit 6d61e70ccc21606ffb8a0a03bd3aba24f659502b
|
||||
Merge: 338ffbf7cb5e c0bc126f97fb
|
||||
Author: Dave Airlie <airlied@redhat.com>
|
||||
Date: Mon Dec 4 09:40:35 2017 +1000
|
||||
Date: Tue Jun 27 07:24:49 2017 +1000
|
||||
|
||||
Merge tag 'drm-intel-next-2017-11-17-1' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
|
||||
Backmerge tag 'v4.12-rc7' into drm-next
|
||||
|
@@ -694,7 +694,6 @@ struct drm_prime_handle {
|
||||
|
||||
struct drm_syncobj_create {
|
||||
__u32 handle;
|
||||
#define DRM_SYNCOBJ_CREATE_SIGNALED (1 << 0)
|
||||
__u32 flags;
|
||||
};
|
||||
|
||||
@@ -713,46 +712,6 @@ struct drm_syncobj_handle {
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
#define DRM_SYNCOBJ_WAIT_FLAGS_WAIT_ALL (1 << 0)
|
||||
#define DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT (1 << 1)
|
||||
struct drm_syncobj_wait {
|
||||
__u64 handles;
|
||||
/* absolute timeout */
|
||||
__s64 timeout_nsec;
|
||||
__u32 count_handles;
|
||||
__u32 flags;
|
||||
__u32 first_signaled; /* only valid when not waiting all */
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
struct drm_syncobj_array {
|
||||
__u64 handles;
|
||||
__u32 count_handles;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
/* Query current scanout sequence number */
|
||||
struct drm_crtc_get_sequence {
|
||||
__u32 crtc_id; /* requested crtc_id */
|
||||
__u32 active; /* return: crtc output is active */
|
||||
__u64 sequence; /* return: most recent vblank sequence */
|
||||
__s64 sequence_ns; /* return: most recent time of first pixel out */
|
||||
};
|
||||
|
||||
/* Queue event to be delivered at specified sequence. Time stamp marks
|
||||
* when the first pixel of the refresh cycle leaves the display engine
|
||||
* for the display
|
||||
*/
|
||||
#define DRM_CRTC_SEQUENCE_RELATIVE 0x00000001 /* sequence is relative to current */
|
||||
#define DRM_CRTC_SEQUENCE_NEXT_ON_MISS 0x00000002 /* Use next sequence if we've missed */
|
||||
|
||||
struct drm_crtc_queue_sequence {
|
||||
__u32 crtc_id;
|
||||
__u32 flags;
|
||||
__u64 sequence; /* on input, target sequence. on output, actual sequence */
|
||||
__u64 user_data; /* user data passed to event */
|
||||
};
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
||||
@@ -835,9 +794,6 @@ extern "C" {
|
||||
|
||||
#define DRM_IOCTL_WAIT_VBLANK DRM_IOWR(0x3a, union drm_wait_vblank)
|
||||
|
||||
#define DRM_IOCTL_CRTC_GET_SEQUENCE DRM_IOWR(0x3b, struct drm_crtc_get_sequence)
|
||||
#define DRM_IOCTL_CRTC_QUEUE_SEQUENCE DRM_IOWR(0x3c, struct drm_crtc_queue_sequence)
|
||||
|
||||
#define DRM_IOCTL_UPDATE_DRAW DRM_IOW(0x3f, struct drm_update_draw)
|
||||
|
||||
#define DRM_IOCTL_MODE_GETRESOURCES DRM_IOWR(0xA0, struct drm_mode_card_res)
|
||||
@@ -878,14 +834,6 @@ extern "C" {
|
||||
#define DRM_IOCTL_SYNCOBJ_DESTROY DRM_IOWR(0xC0, struct drm_syncobj_destroy)
|
||||
#define DRM_IOCTL_SYNCOBJ_HANDLE_TO_FD DRM_IOWR(0xC1, struct drm_syncobj_handle)
|
||||
#define DRM_IOCTL_SYNCOBJ_FD_TO_HANDLE DRM_IOWR(0xC2, struct drm_syncobj_handle)
|
||||
#define DRM_IOCTL_SYNCOBJ_WAIT DRM_IOWR(0xC3, struct drm_syncobj_wait)
|
||||
#define DRM_IOCTL_SYNCOBJ_RESET DRM_IOWR(0xC4, struct drm_syncobj_array)
|
||||
#define DRM_IOCTL_SYNCOBJ_SIGNAL DRM_IOWR(0xC5, struct drm_syncobj_array)
|
||||
|
||||
#define DRM_IOCTL_MODE_CREATE_LEASE DRM_IOWR(0xC6, struct drm_mode_create_lease)
|
||||
#define DRM_IOCTL_MODE_LIST_LESSEES DRM_IOWR(0xC7, struct drm_mode_list_lessees)
|
||||
#define DRM_IOCTL_MODE_GET_LEASE DRM_IOWR(0xC8, struct drm_mode_get_lease)
|
||||
#define DRM_IOCTL_MODE_REVOKE_LEASE DRM_IOWR(0xC9, struct drm_mode_revoke_lease)
|
||||
|
||||
/**
|
||||
* Device specific ioctls should only be in their respective headers
|
||||
@@ -917,7 +865,6 @@ struct drm_event {
|
||||
|
||||
#define DRM_EVENT_VBLANK 0x01
|
||||
#define DRM_EVENT_FLIP_COMPLETE 0x02
|
||||
#define DRM_EVENT_CRTC_SEQUENCE 0x03
|
||||
|
||||
struct drm_event_vblank {
|
||||
struct drm_event base;
|
||||
@@ -928,16 +875,6 @@ struct drm_event_vblank {
|
||||
__u32 crtc_id; /* 0 on older kernels that do not support this */
|
||||
};
|
||||
|
||||
/* Event delivered at sequence. Time stamp marks when the first pixel
|
||||
* of the refresh cycle leaves the display engine for the display
|
||||
*/
|
||||
struct drm_event_crtc_sequence {
|
||||
struct drm_event base;
|
||||
__u64 user_data;
|
||||
__s64 time_ns;
|
||||
__u64 sequence;
|
||||
};
|
||||
|
||||
/* typedef area */
|
||||
typedef struct drm_clip_rect drm_clip_rect_t;
|
||||
typedef struct drm_drawable_info drm_drawable_info_t;
|
||||
|
@@ -185,8 +185,6 @@ extern "C" {
|
||||
#define DRM_FORMAT_MOD_VENDOR_BROADCOM 0x07
|
||||
/* add more to the end as needed */
|
||||
|
||||
#define DRM_FORMAT_RESERVED ((1ULL << 56) - 1)
|
||||
|
||||
#define fourcc_mod_code(vendor, val) \
|
||||
((((__u64)DRM_FORMAT_MOD_VENDOR_## vendor) << 56) | (val & 0x00ffffffffffffffULL))
|
||||
|
||||
@@ -198,15 +196,6 @@ extern "C" {
|
||||
* authoritative source for all of these.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Invalid Modifier
|
||||
*
|
||||
* This modifier can be used as a sentinel to terminate the format modifiers
|
||||
* list, or to initialize a variable with an invalid modifier. It might also be
|
||||
* used to report an error back to userspace for certain APIs.
|
||||
*/
|
||||
#define DRM_FORMAT_MOD_INVALID fourcc_mod_code(NONE, DRM_FORMAT_RESERVED)
|
||||
|
||||
/*
|
||||
* Linear Layout
|
||||
*
|
||||
@@ -263,26 +252,6 @@ extern "C" {
|
||||
*/
|
||||
#define I915_FORMAT_MOD_Yf_TILED fourcc_mod_code(INTEL, 3)
|
||||
|
||||
/*
|
||||
* Intel color control surface (CCS) for render compression
|
||||
*
|
||||
* The framebuffer format must be one of the 8:8:8:8 RGB formats.
|
||||
* The main surface will be plane index 0 and must be Y/Yf-tiled,
|
||||
* the CCS will be plane index 1.
|
||||
*
|
||||
* Each CCS tile matches a 1024x512 pixel area of the main surface.
|
||||
* To match certain aspects of the 3D hardware the CCS is
|
||||
* considered to be made up of normal 128Bx32 Y tiles, Thus
|
||||
* the CCS pitch must be specified in multiples of 128 bytes.
|
||||
*
|
||||
* In reality the CCS tile appears to be a 64Bx64 Y tile, composed
|
||||
* of QWORD (8 bytes) chunks instead of OWORD (16 bytes) chunks.
|
||||
* But that fact is not relevant unless the memory is accessed
|
||||
* directly.
|
||||
*/
|
||||
#define I915_FORMAT_MOD_Y_TILED_CCS fourcc_mod_code(INTEL, 4)
|
||||
#define I915_FORMAT_MOD_Yf_TILED_CCS fourcc_mod_code(INTEL, 5)
|
||||
|
||||
/*
|
||||
* Tiled, NV12MT, grouped in 64 (pixels) x 32 (lines) -sized macroblocks
|
||||
*
|
||||
|
@@ -712,56 +712,6 @@ struct drm_mode_atomic {
|
||||
__u64 user_data;
|
||||
};
|
||||
|
||||
struct drm_format_modifier_blob {
|
||||
#define FORMAT_BLOB_CURRENT 1
|
||||
/* Version of this blob format */
|
||||
__u32 version;
|
||||
|
||||
/* Flags */
|
||||
__u32 flags;
|
||||
|
||||
/* Number of fourcc formats supported */
|
||||
__u32 count_formats;
|
||||
|
||||
/* Where in this blob the formats exist (in bytes) */
|
||||
__u32 formats_offset;
|
||||
|
||||
/* Number of drm_format_modifiers */
|
||||
__u32 count_modifiers;
|
||||
|
||||
/* Where in this blob the modifiers exist (in bytes) */
|
||||
__u32 modifiers_offset;
|
||||
|
||||
/* __u32 formats[] */
|
||||
/* struct drm_format_modifier modifiers[] */
|
||||
};
|
||||
|
||||
struct drm_format_modifier {
|
||||
/* Bitmask of formats in get_plane format list this info applies to. The
|
||||
* offset allows a sliding window of which 64 formats (bits).
|
||||
*
|
||||
* Some examples:
|
||||
* In today's world with < 65 formats, and formats 0, and 2 are
|
||||
* supported
|
||||
* 0x0000000000000005
|
||||
* ^-offset = 0, formats = 5
|
||||
*
|
||||
* If the number formats grew to 128, and formats 98-102 are
|
||||
* supported with the modifier:
|
||||
*
|
||||
* 0x0000007c00000000 0000000000000000
|
||||
* ^
|
||||
* |__offset = 64, formats = 0x7c00000000
|
||||
*
|
||||
*/
|
||||
__u64 formats;
|
||||
__u32 offset;
|
||||
__u32 pad;
|
||||
|
||||
/* The modifier that applies to the >get_plane format list bitmask. */
|
||||
__u64 modifier;
|
||||
};
|
||||
|
||||
/**
|
||||
* Create a new 'blob' data property, copying length bytes from data pointer,
|
||||
* and returning new blob ID.
|
||||
@@ -782,72 +732,6 @@ struct drm_mode_destroy_blob {
|
||||
__u32 blob_id;
|
||||
};
|
||||
|
||||
/**
|
||||
* Lease mode resources, creating another drm_master.
|
||||
*/
|
||||
struct drm_mode_create_lease {
|
||||
/** Pointer to array of object ids (__u32) */
|
||||
__u64 object_ids;
|
||||
/** Number of object ids */
|
||||
__u32 object_count;
|
||||
/** flags for new FD (O_CLOEXEC, etc) */
|
||||
__u32 flags;
|
||||
|
||||
/** Return: unique identifier for lessee. */
|
||||
__u32 lessee_id;
|
||||
/** Return: file descriptor to new drm_master file */
|
||||
__u32 fd;
|
||||
};
|
||||
|
||||
/**
|
||||
* List lesses from a drm_master
|
||||
*/
|
||||
struct drm_mode_list_lessees {
|
||||
/** Number of lessees.
|
||||
* On input, provides length of the array.
|
||||
* On output, provides total number. No
|
||||
* more than the input number will be written
|
||||
* back, so two calls can be used to get
|
||||
* the size and then the data.
|
||||
*/
|
||||
__u32 count_lessees;
|
||||
__u32 pad;
|
||||
|
||||
/** Pointer to lessees.
|
||||
* pointer to __u64 array of lessee ids
|
||||
*/
|
||||
__u64 lessees_ptr;
|
||||
};
|
||||
|
||||
/**
|
||||
* Get leased objects
|
||||
*/
|
||||
struct drm_mode_get_lease {
|
||||
/** Number of leased objects.
|
||||
* On input, provides length of the array.
|
||||
* On output, provides total number. No
|
||||
* more than the input number will be written
|
||||
* back, so two calls can be used to get
|
||||
* the size and then the data.
|
||||
*/
|
||||
__u32 count_objects;
|
||||
__u32 pad;
|
||||
|
||||
/** Pointer to objects.
|
||||
* pointer to __u32 array of object ids
|
||||
*/
|
||||
__u64 objects_ptr;
|
||||
};
|
||||
|
||||
/**
|
||||
* Revoke lease
|
||||
*/
|
||||
struct drm_mode_revoke_lease {
|
||||
/** Unique ID of lessee
|
||||
*/
|
||||
__u32 lessee_id;
|
||||
};
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
@@ -86,22 +86,6 @@ enum i915_mocs_table_index {
|
||||
I915_MOCS_CACHED,
|
||||
};
|
||||
|
||||
/*
|
||||
* Different engines serve different roles, and there may be more than one
|
||||
* engine serving each role. enum drm_i915_gem_engine_class provides a
|
||||
* classification of the role of the engine, which may be used when requesting
|
||||
* operations to be performed on a certain subset of engines, or for providing
|
||||
* information about that group.
|
||||
*/
|
||||
enum drm_i915_gem_engine_class {
|
||||
I915_ENGINE_CLASS_RENDER = 0,
|
||||
I915_ENGINE_CLASS_COPY = 1,
|
||||
I915_ENGINE_CLASS_VIDEO = 2,
|
||||
I915_ENGINE_CLASS_VIDEO_ENHANCE = 3,
|
||||
|
||||
I915_ENGINE_CLASS_INVALID = -1
|
||||
};
|
||||
|
||||
/* Each region is a minimum of 16k, and there are at most 255 of them.
|
||||
*/
|
||||
#define I915_NR_TEX_REGIONS 255 /* table size 2k - maximum due to use
|
||||
@@ -276,8 +260,6 @@ typedef struct _drm_i915_sarea {
|
||||
#define DRM_I915_GEM_CONTEXT_GETPARAM 0x34
|
||||
#define DRM_I915_GEM_CONTEXT_SETPARAM 0x35
|
||||
#define DRM_I915_PERF_OPEN 0x36
|
||||
#define DRM_I915_PERF_ADD_CONFIG 0x37
|
||||
#define DRM_I915_PERF_REMOVE_CONFIG 0x38
|
||||
|
||||
#define DRM_IOCTL_I915_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_I915_INIT, drm_i915_init_t)
|
||||
#define DRM_IOCTL_I915_FLUSH DRM_IO ( DRM_COMMAND_BASE + DRM_I915_FLUSH)
|
||||
@@ -333,8 +315,6 @@ typedef struct _drm_i915_sarea {
|
||||
#define DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_GEM_CONTEXT_GETPARAM, struct drm_i915_gem_context_param)
|
||||
#define DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_GEM_CONTEXT_SETPARAM, struct drm_i915_gem_context_param)
|
||||
#define DRM_IOCTL_I915_PERF_OPEN DRM_IOW(DRM_COMMAND_BASE + DRM_I915_PERF_OPEN, struct drm_i915_perf_open_param)
|
||||
#define DRM_IOCTL_I915_PERF_ADD_CONFIG DRM_IOW(DRM_COMMAND_BASE + DRM_I915_PERF_ADD_CONFIG, struct drm_i915_perf_oa_config)
|
||||
#define DRM_IOCTL_I915_PERF_REMOVE_CONFIG DRM_IOW(DRM_COMMAND_BASE + DRM_I915_PERF_REMOVE_CONFIG, __u64)
|
||||
|
||||
/* Allow drivers to submit batchbuffers directly to hardware, relying
|
||||
* on the security mechanisms provided by hardware.
|
||||
@@ -413,20 +393,10 @@ typedef struct drm_i915_irq_wait {
|
||||
#define I915_PARAM_MIN_EU_IN_POOL 39
|
||||
#define I915_PARAM_MMAP_GTT_VERSION 40
|
||||
|
||||
/*
|
||||
* Query whether DRM_I915_GEM_EXECBUFFER2 supports user defined execution
|
||||
/* Query whether DRM_I915_GEM_EXECBUFFER2 supports user defined execution
|
||||
* priorities and the driver will attempt to execute batches in priority order.
|
||||
* The param returns a capability bitmask, nonzero implies that the scheduler
|
||||
* is enabled, with different features present according to the mask.
|
||||
*
|
||||
* The initial priority for each batch is supplied by the context and is
|
||||
* controlled via I915_CONTEXT_PARAM_PRIORITY.
|
||||
*/
|
||||
#define I915_PARAM_HAS_SCHEDULER 41
|
||||
#define I915_SCHEDULER_CAP_ENABLED (1ul << 0)
|
||||
#define I915_SCHEDULER_CAP_PRIORITY (1ul << 1)
|
||||
#define I915_SCHEDULER_CAP_PREEMPTION (1ul << 2)
|
||||
|
||||
#define I915_PARAM_HUC_STATUS 42
|
||||
|
||||
/* Query whether DRM_I915_GEM_EXECBUFFER2 supports the ability to opt-out of
|
||||
@@ -461,32 +431,6 @@ typedef struct drm_i915_irq_wait {
|
||||
*/
|
||||
#define I915_PARAM_HAS_EXEC_BATCH_FIRST 48
|
||||
|
||||
/* Query whether DRM_I915_GEM_EXECBUFFER2 supports supplying an array of
|
||||
* drm_i915_gem_exec_fence structures. See I915_EXEC_FENCE_ARRAY.
|
||||
*/
|
||||
#define I915_PARAM_HAS_EXEC_FENCE_ARRAY 49
|
||||
|
||||
/*
|
||||
* Query whether every context (both per-file default and user created) is
|
||||
* isolated (insofar as HW supports). If this parameter is not true, then
|
||||
* freshly created contexts may inherit values from an existing context,
|
||||
* rather than default HW values. If true, it also ensures (insofar as HW
|
||||
* supports) that all state set by this context will not leak to any other
|
||||
* context.
|
||||
*
|
||||
* As not every engine across every gen support contexts, the returned
|
||||
* value reports the support of context isolation for individual engines by
|
||||
* returning a bitmask of each engine class set to true if that class supports
|
||||
* isolation.
|
||||
*/
|
||||
#define I915_PARAM_HAS_CONTEXT_ISOLATION 50
|
||||
|
||||
/* Frequency of the command streamer timestamps given by the *_TIMESTAMP
|
||||
* registers. This used to be fixed per platform but from CNL onwards, this
|
||||
* might vary depending on the parts.
|
||||
*/
|
||||
#define I915_PARAM_CS_TIMESTAMP_FREQUENCY 51
|
||||
|
||||
typedef struct drm_i915_getparam {
|
||||
__s32 param;
|
||||
/*
|
||||
@@ -868,18 +812,6 @@ struct drm_i915_gem_exec_object2 {
|
||||
__u64 rsvd2;
|
||||
};
|
||||
|
||||
struct drm_i915_gem_exec_fence {
|
||||
/**
|
||||
* User's handle for a drm_syncobj to wait on or signal.
|
||||
*/
|
||||
__u32 handle;
|
||||
|
||||
#define I915_EXEC_FENCE_WAIT (1<<0)
|
||||
#define I915_EXEC_FENCE_SIGNAL (1<<1)
|
||||
#define __I915_EXEC_FENCE_UNKNOWN_FLAGS (-(I915_EXEC_FENCE_SIGNAL << 1))
|
||||
__u32 flags;
|
||||
};
|
||||
|
||||
struct drm_i915_gem_execbuffer2 {
|
||||
/**
|
||||
* List of gem_exec_object2 structs
|
||||
@@ -894,11 +826,7 @@ struct drm_i915_gem_execbuffer2 {
|
||||
__u32 DR1;
|
||||
__u32 DR4;
|
||||
__u32 num_cliprects;
|
||||
/**
|
||||
* This is a struct drm_clip_rect *cliprects if I915_EXEC_FENCE_ARRAY
|
||||
* is not set. If I915_EXEC_FENCE_ARRAY is set, then this is a
|
||||
* struct drm_i915_gem_exec_fence *fences.
|
||||
*/
|
||||
/** This is a struct drm_clip_rect *cliprects */
|
||||
__u64 cliprects_ptr;
|
||||
#define I915_EXEC_RING_MASK (7<<0)
|
||||
#define I915_EXEC_DEFAULT (0<<0)
|
||||
@@ -999,14 +927,7 @@ struct drm_i915_gem_execbuffer2 {
|
||||
* element).
|
||||
*/
|
||||
#define I915_EXEC_BATCH_FIRST (1<<18)
|
||||
|
||||
/* Setting I915_FENCE_ARRAY implies that num_cliprects and cliprects_ptr
|
||||
* define an array of i915_gem_exec_fence structures which specify a set of
|
||||
* dma fences to wait upon or signal.
|
||||
*/
|
||||
#define I915_EXEC_FENCE_ARRAY (1<<19)
|
||||
|
||||
#define __I915_EXEC_UNKNOWN_FLAGS (-(I915_EXEC_FENCE_ARRAY<<1))
|
||||
#define __I915_EXEC_UNKNOWN_FLAGS (-(I915_EXEC_BATCH_FIRST<<1))
|
||||
|
||||
#define I915_EXEC_CONTEXT_ID_MASK (0xffffffff)
|
||||
#define i915_execbuffer2_set_context_id(eb2, context) \
|
||||
@@ -1356,16 +1277,14 @@ struct drm_i915_reg_read {
|
||||
* be specified
|
||||
*/
|
||||
__u64 offset;
|
||||
#define I915_REG_READ_8B_WA (1ul << 0)
|
||||
|
||||
__u64 val; /* Return value */
|
||||
};
|
||||
/* Known registers:
|
||||
*
|
||||
* Render engine timestamp - 0x2358 + 64bit - gen7+
|
||||
* - Note this register returns an invalid value if using the default
|
||||
* single instruction 8byte read, in order to workaround that pass
|
||||
* flag I915_REG_READ_8B_WA in offset field.
|
||||
* single instruction 8byte read, in order to workaround that use
|
||||
* offset (0x2538 | 1) instead.
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -1408,10 +1327,6 @@ struct drm_i915_gem_context_param {
|
||||
#define I915_CONTEXT_PARAM_GTT_SIZE 0x3
|
||||
#define I915_CONTEXT_PARAM_NO_ERROR_CAPTURE 0x4
|
||||
#define I915_CONTEXT_PARAM_BANNABLE 0x5
|
||||
#define I915_CONTEXT_PARAM_PRIORITY 0x6
|
||||
#define I915_CONTEXT_MAX_USER_PRIORITY 1023 /* inclusive */
|
||||
#define I915_CONTEXT_DEFAULT_PRIORITY 0
|
||||
#define I915_CONTEXT_MIN_USER_PRIORITY -1023 /* inclusive */
|
||||
__u64 value;
|
||||
};
|
||||
|
||||
@@ -1552,27 +1467,6 @@ enum drm_i915_perf_record_type {
|
||||
DRM_I915_PERF_RECORD_MAX /* non-ABI */
|
||||
};
|
||||
|
||||
/**
|
||||
* Structure to upload perf dynamic configuration into the kernel.
|
||||
*/
|
||||
struct drm_i915_perf_oa_config {
|
||||
/** String formatted like "%08x-%04x-%04x-%04x-%012x" */
|
||||
char uuid[36];
|
||||
|
||||
__u32 n_mux_regs;
|
||||
__u32 n_boolean_regs;
|
||||
__u32 n_flex_regs;
|
||||
|
||||
/*
|
||||
* These fields are pointers to tuples of u32 values (register
|
||||
* address, value). For example the expected length of the buffer
|
||||
* pointed by mux_regs_ptr is (2 * sizeof(u32) * n_mux_regs).
|
||||
*/
|
||||
__u64 mux_regs_ptr;
|
||||
__u64 boolean_regs_ptr;
|
||||
__u64 flex_regs_ptr;
|
||||
};
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
@@ -40,8 +40,6 @@ extern "C" {
|
||||
#define DRM_VC4_GET_PARAM 0x07
|
||||
#define DRM_VC4_SET_TILING 0x08
|
||||
#define DRM_VC4_GET_TILING 0x09
|
||||
#define DRM_VC4_LABEL_BO 0x0a
|
||||
#define DRM_VC4_GEM_MADVISE 0x0b
|
||||
|
||||
#define DRM_IOCTL_VC4_SUBMIT_CL DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_SUBMIT_CL, struct drm_vc4_submit_cl)
|
||||
#define DRM_IOCTL_VC4_WAIT_SEQNO DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_WAIT_SEQNO, struct drm_vc4_wait_seqno)
|
||||
@@ -53,8 +51,6 @@ extern "C" {
|
||||
#define DRM_IOCTL_VC4_GET_PARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_GET_PARAM, struct drm_vc4_get_param)
|
||||
#define DRM_IOCTL_VC4_SET_TILING DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_SET_TILING, struct drm_vc4_set_tiling)
|
||||
#define DRM_IOCTL_VC4_GET_TILING DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_GET_TILING, struct drm_vc4_get_tiling)
|
||||
#define DRM_IOCTL_VC4_LABEL_BO DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_LABEL_BO, struct drm_vc4_label_bo)
|
||||
#define DRM_IOCTL_VC4_GEM_MADVISE DRM_IOWR(DRM_COMMAND_BASE + DRM_VC4_GEM_MADVISE, struct drm_vc4_gem_madvise)
|
||||
|
||||
struct drm_vc4_submit_rcl_surface {
|
||||
__u32 hindex; /* Handle index, or ~0 if not present. */
|
||||
@@ -157,16 +153,6 @@ struct drm_vc4_submit_cl {
|
||||
__u32 pad:24;
|
||||
|
||||
#define VC4_SUBMIT_CL_USE_CLEAR_COLOR (1 << 0)
|
||||
/* By default, the kernel gets to choose the order that the tiles are
|
||||
* rendered in. If this is set, then the tiles will be rendered in a
|
||||
* raster order, with the right-to-left vs left-to-right and
|
||||
* top-to-bottom vs bottom-to-top dictated by
|
||||
* VC4_SUBMIT_CL_RCL_ORDER_INCREASING_*. This allows overlapping
|
||||
* blits to be implemented using the 3D engine.
|
||||
*/
|
||||
#define VC4_SUBMIT_CL_FIXED_RCL_ORDER (1 << 1)
|
||||
#define VC4_SUBMIT_CL_RCL_ORDER_INCREASING_X (1 << 2)
|
||||
#define VC4_SUBMIT_CL_RCL_ORDER_INCREASING_Y (1 << 3)
|
||||
__u32 flags;
|
||||
|
||||
/* Returned value of the seqno of this render job (for the
|
||||
@@ -306,8 +292,6 @@ struct drm_vc4_get_hang_state {
|
||||
#define DRM_VC4_PARAM_SUPPORTS_BRANCHES 3
|
||||
#define DRM_VC4_PARAM_SUPPORTS_ETC1 4
|
||||
#define DRM_VC4_PARAM_SUPPORTS_THREADED_FS 5
|
||||
#define DRM_VC4_PARAM_SUPPORTS_FIXED_RCL_ORDER 6
|
||||
#define DRM_VC4_PARAM_SUPPORTS_MADVISE 7
|
||||
|
||||
struct drm_vc4_get_param {
|
||||
__u32 param;
|
||||
@@ -327,31 +311,6 @@ struct drm_vc4_set_tiling {
|
||||
__u64 modifier;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct drm_vc4_label_bo - Attach a name to a BO for debug purposes.
|
||||
*/
|
||||
struct drm_vc4_label_bo {
|
||||
__u32 handle;
|
||||
__u32 len;
|
||||
__u64 name;
|
||||
};
|
||||
|
||||
/*
|
||||
* States prefixed with '__' are internal states and cannot be passed to the
|
||||
* DRM_IOCTL_VC4_GEM_MADVISE ioctl.
|
||||
*/
|
||||
#define VC4_MADV_WILLNEED 0
|
||||
#define VC4_MADV_DONTNEED 1
|
||||
#define __VC4_MADV_PURGED 2
|
||||
#define __VC4_MADV_NOTSUPP 3
|
||||
|
||||
struct drm_vc4_gem_madvise {
|
||||
__u32 handle;
|
||||
__u32 madv;
|
||||
__u32 retained;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
@@ -1,104 +0,0 @@
|
||||
# Copyright © 2017 Intel Corporation
|
||||
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
inc_drm_uapi = include_directories('drm-uapi')
|
||||
inc_vulkan = include_directories('vulkan')
|
||||
inc_d3d9 = include_directories('D3D9')
|
||||
inc_gl_internal = include_directories('GL/internal')
|
||||
|
||||
if with_gles1
|
||||
install_headers(
|
||||
'GLES/egl.h', 'GLES/gl.h', 'GLES/glext.h', 'GLES/glplatform.h',
|
||||
subdir : 'GLES',
|
||||
)
|
||||
endif
|
||||
|
||||
if with_gles2
|
||||
install_headers(
|
||||
'GLES2/gl2.h', 'GLES2/gl2ext.h', 'GLES2/gl2platform.h',
|
||||
subdir : 'GLES2',
|
||||
)
|
||||
install_headers(
|
||||
'GLES3/gl3.h', 'GLES3/gl31.h', 'GLES3/gl32.h', 'GLES3/gl3ext.h',
|
||||
'GLES3/gl3platform.h',
|
||||
subdir : 'GLES3',
|
||||
)
|
||||
endif
|
||||
|
||||
if with_gles1 or with_gles2 or with_egl
|
||||
install_headers('KHR/khrplatform.h', subdir : 'KHR')
|
||||
endif
|
||||
|
||||
if with_opengl
|
||||
install_headers(
|
||||
'GL/gl.h', 'GL/glext.h', 'GL/glcorearb.h', 'GL/gl_mangle.h',
|
||||
subdir : 'GL',
|
||||
)
|
||||
endif
|
||||
|
||||
if with_glx != 'disabled'
|
||||
install_headers('GL/glx.h', 'GL/glxext.h', 'GL/glx_mangle.h', subdir : 'GL')
|
||||
endif
|
||||
|
||||
if with_osmesa != 'none'
|
||||
install_headers('GL/osmesa.h', subdir : 'GL')
|
||||
endif
|
||||
|
||||
if with_egl
|
||||
install_headers(
|
||||
'EGL/eglext.h', 'EGL/egl.h', 'EGL/eglextchromium.h', 'EGL/eglmesaext.h',
|
||||
'EGL/eglplatform.h',
|
||||
subdir : 'EGL',
|
||||
)
|
||||
endif
|
||||
|
||||
if with_dri
|
||||
install_headers('GL/internal/dri_interface.h', subdir : 'GL/internal')
|
||||
endif
|
||||
|
||||
if with_gallium_st_nine
|
||||
install_headers(
|
||||
'd3dadapter/d3dadapter9.h', 'd3dadapter/drm.h', 'd3dadapter/present.h',
|
||||
subdir : 'd3dadapter',
|
||||
)
|
||||
endif
|
||||
|
||||
# Only install the headers if we are building a stand alone implementation and
|
||||
# not an ICD enabled implementation
|
||||
if with_gallium_opencl and not with_opencl_icd
|
||||
install_headers(
|
||||
'CL/cl.h',
|
||||
'CL/cl.hpp',
|
||||
'CL/cl_d3d10.h',
|
||||
'CL/cl_d3d11.h',
|
||||
'CL/cl_dx9_media_sharing.h',
|
||||
'CL/cl_egl.h',
|
||||
'CL/cl_ext.h',
|
||||
'CL/cl_gl.h',
|
||||
'CL/cl_gl_ext.h',
|
||||
'CL/cl_platform.h',
|
||||
'CL/opencl.h',
|
||||
subdir: 'CL'
|
||||
)
|
||||
endif
|
||||
|
||||
if with_intel_vk
|
||||
install_headers('vulkan/vulkan_intel.h', subdir : 'vulkan')
|
||||
endif
|
@@ -151,7 +151,7 @@ CHIPSET(0x590B, kbl_gt1, "Intel(R) Kabylake GT1")
|
||||
CHIPSET(0x590E, kbl_gt1, "Intel(R) Kabylake GT1")
|
||||
CHIPSET(0x5913, kbl_gt1_5, "Intel(R) Kabylake GT1.5")
|
||||
CHIPSET(0x5915, kbl_gt1_5, "Intel(R) Kabylake GT1.5")
|
||||
CHIPSET(0x5917, kbl_gt2, "Intel(R) UHD Graphics 620 (Kabylake GT2)")
|
||||
CHIPSET(0x5917, kbl_gt1_5, "Intel(R) Kabylake GT1.5")
|
||||
CHIPSET(0x5912, kbl_gt2, "Intel(R) HD Graphics 630 (Kaby Lake GT2)")
|
||||
CHIPSET(0x5916, kbl_gt2, "Intel(R) HD Graphics 620 (Kaby Lake GT2)")
|
||||
CHIPSET(0x591A, kbl_gt2, "Intel(R) HD Graphics P630 (Kaby Lake GT2)")
|
||||
@@ -160,30 +160,22 @@ CHIPSET(0x591D, kbl_gt2, "Intel(R) HD Graphics P630 (Kaby Lake GT2)")
|
||||
CHIPSET(0x591E, kbl_gt2, "Intel(R) HD Graphics 615 (Kaby Lake GT2)")
|
||||
CHIPSET(0x5921, kbl_gt2, "Intel(R) Kabylake GT2F")
|
||||
CHIPSET(0x5923, kbl_gt3, "Intel(R) Kabylake GT3")
|
||||
CHIPSET(0x5926, kbl_gt3, "Intel(R) Iris Plus Graphics 640 (Kaby Lake GT3e)")
|
||||
CHIPSET(0x5927, kbl_gt3, "Intel(R) Iris Plus Graphics 650 (Kaby Lake GT3e)")
|
||||
CHIPSET(0x5926, kbl_gt3, "Intel(R) Iris Plus Graphics 640 (Kaby Lake GT3)")
|
||||
CHIPSET(0x5927, kbl_gt3, "Intel(R) Iris Plus Graphics 650 (Kaby Lake GT3)")
|
||||
CHIPSET(0x593B, kbl_gt4, "Intel(R) Kabylake GT4")
|
||||
CHIPSET(0x3184, glk, "Intel(R) UHD Graphics 605 (Geminilake)")
|
||||
CHIPSET(0x3185, glk_2x6, "Intel(R) UHD Graphics 600 (Geminilake 2x6)")
|
||||
CHIPSET(0x3184, glk, "Intel(R) HD Graphics (Geminilake)")
|
||||
CHIPSET(0x3185, glk_2x6, "Intel(R) HD Graphics (Geminilake 2x6)")
|
||||
CHIPSET(0x3E90, cfl_gt1, "Intel(R) HD Graphics (Coffeelake 2x6 GT1)")
|
||||
CHIPSET(0x3E93, cfl_gt1, "Intel(R) HD Graphics (Coffeelake 2x6 GT1)")
|
||||
CHIPSET(0x3E99, cfl_gt1, "Intel(R) HD Graphics (Coffeelake 2x6 GT1)")
|
||||
CHIPSET(0x3EA1, cfl_gt1, "Intel(R) HD Graphics (Coffeelake 2x6 GT1)")
|
||||
CHIPSET(0x3EA4, cfl_gt1, "Intel(R) HD Graphics (Coffeelake 2x6 GT1)")
|
||||
CHIPSET(0x3E91, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3E92, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3E96, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3E9A, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3E9B, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3E94, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3EA0, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3EA3, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3EA9, cfl_gt2, "Intel(R) HD Graphics (Coffeelake 3x8 GT2)")
|
||||
CHIPSET(0x3EA2, cfl_gt3, "Intel(R) HD Graphics (Coffeelake 3x8 GT3)")
|
||||
CHIPSET(0x3EA5, cfl_gt3, "Intel(R) HD Graphics (Coffeelake 3x8 GT3)")
|
||||
CHIPSET(0x3EA6, cfl_gt3, "Intel(R) HD Graphics (Coffeelake 3x8 GT3)")
|
||||
CHIPSET(0x3EA7, cfl_gt3, "Intel(R) HD Graphics (Coffeelake 3x8 GT3)")
|
||||
CHIPSET(0x3EA8, cfl_gt3, "Intel(R) HD Graphics (Coffeelake 3x8 GT3)")
|
||||
CHIPSET(0x3EA5, cfl_gt3, "Intel(R) HD Graphics (Coffeelake 3x8 GT3)")
|
||||
CHIPSET(0x5A49, cnl_2x8, "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)")
|
||||
CHIPSET(0x5A4A, cnl_2x8, "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)")
|
||||
CHIPSET(0x5A41, cnl_3x8, "Intel(R) HD Graphics (Cannonlake 3x8 GT1)")
|
||||
|
@@ -1,229 +1,229 @@
|
||||
CHIPSET(0x6780, TAHITI)
|
||||
CHIPSET(0x6784, TAHITI)
|
||||
CHIPSET(0x6788, TAHITI)
|
||||
CHIPSET(0x678A, TAHITI)
|
||||
CHIPSET(0x6790, TAHITI)
|
||||
CHIPSET(0x6791, TAHITI)
|
||||
CHIPSET(0x6792, TAHITI)
|
||||
CHIPSET(0x6798, TAHITI)
|
||||
CHIPSET(0x6799, TAHITI)
|
||||
CHIPSET(0x679A, TAHITI)
|
||||
CHIPSET(0x679B, TAHITI)
|
||||
CHIPSET(0x679E, TAHITI)
|
||||
CHIPSET(0x679F, TAHITI)
|
||||
CHIPSET(0x6780, TAHITI_6780, TAHITI)
|
||||
CHIPSET(0x6784, TAHITI_6784, TAHITI)
|
||||
CHIPSET(0x6788, TAHITI_6788, TAHITI)
|
||||
CHIPSET(0x678A, TAHITI_678A, TAHITI)
|
||||
CHIPSET(0x6790, TAHITI_6790, TAHITI)
|
||||
CHIPSET(0x6791, TAHITI_6791, TAHITI)
|
||||
CHIPSET(0x6792, TAHITI_6792, TAHITI)
|
||||
CHIPSET(0x6798, TAHITI_6798, TAHITI)
|
||||
CHIPSET(0x6799, TAHITI_6799, TAHITI)
|
||||
CHIPSET(0x679A, TAHITI_679A, TAHITI)
|
||||
CHIPSET(0x679B, TAHITI_679B, TAHITI)
|
||||
CHIPSET(0x679E, TAHITI_679E, TAHITI)
|
||||
CHIPSET(0x679F, TAHITI_679F, TAHITI)
|
||||
|
||||
CHIPSET(0x6800, PITCAIRN)
|
||||
CHIPSET(0x6801, PITCAIRN)
|
||||
CHIPSET(0x6802, PITCAIRN)
|
||||
CHIPSET(0x6806, PITCAIRN)
|
||||
CHIPSET(0x6808, PITCAIRN)
|
||||
CHIPSET(0x6809, PITCAIRN)
|
||||
CHIPSET(0x6810, PITCAIRN)
|
||||
CHIPSET(0x6811, PITCAIRN)
|
||||
CHIPSET(0x6816, PITCAIRN)
|
||||
CHIPSET(0x6817, PITCAIRN)
|
||||
CHIPSET(0x6818, PITCAIRN)
|
||||
CHIPSET(0x6819, PITCAIRN)
|
||||
CHIPSET(0x684C, PITCAIRN)
|
||||
CHIPSET(0x6800, PITCAIRN_6800, PITCAIRN)
|
||||
CHIPSET(0x6801, PITCAIRN_6801, PITCAIRN)
|
||||
CHIPSET(0x6802, PITCAIRN_6802, PITCAIRN)
|
||||
CHIPSET(0x6806, PITCAIRN_6806, PITCAIRN)
|
||||
CHIPSET(0x6808, PITCAIRN_6808, PITCAIRN)
|
||||
CHIPSET(0x6809, PITCAIRN_6809, PITCAIRN)
|
||||
CHIPSET(0x6810, PITCAIRN_6810, PITCAIRN)
|
||||
CHIPSET(0x6811, PITCAIRN_6811, PITCAIRN)
|
||||
CHIPSET(0x6816, PITCAIRN_6816, PITCAIRN)
|
||||
CHIPSET(0x6817, PITCAIRN_6817, PITCAIRN)
|
||||
CHIPSET(0x6818, PITCAIRN_6818, PITCAIRN)
|
||||
CHIPSET(0x6819, PITCAIRN_6819, PITCAIRN)
|
||||
CHIPSET(0x684C, PITCAIRN_684C, PITCAIRN)
|
||||
|
||||
CHIPSET(0x6820, VERDE)
|
||||
CHIPSET(0x6821, VERDE)
|
||||
CHIPSET(0x6822, VERDE)
|
||||
CHIPSET(0x6823, VERDE)
|
||||
CHIPSET(0x6824, VERDE)
|
||||
CHIPSET(0x6825, VERDE)
|
||||
CHIPSET(0x6826, VERDE)
|
||||
CHIPSET(0x6827, VERDE)
|
||||
CHIPSET(0x6828, VERDE)
|
||||
CHIPSET(0x6829, VERDE)
|
||||
CHIPSET(0x682A, VERDE)
|
||||
CHIPSET(0x682B, VERDE)
|
||||
CHIPSET(0x682C, VERDE)
|
||||
CHIPSET(0x682D, VERDE)
|
||||
CHIPSET(0x682F, VERDE)
|
||||
CHIPSET(0x6830, VERDE)
|
||||
CHIPSET(0x6831, VERDE)
|
||||
CHIPSET(0x6835, VERDE)
|
||||
CHIPSET(0x6837, VERDE)
|
||||
CHIPSET(0x6838, VERDE)
|
||||
CHIPSET(0x6839, VERDE)
|
||||
CHIPSET(0x683B, VERDE)
|
||||
CHIPSET(0x683D, VERDE)
|
||||
CHIPSET(0x683F, VERDE)
|
||||
CHIPSET(0x6820, VERDE_6820, VERDE)
|
||||
CHIPSET(0x6821, VERDE_6821, VERDE)
|
||||
CHIPSET(0x6822, VERDE_6822, VERDE)
|
||||
CHIPSET(0x6823, VERDE_6823, VERDE)
|
||||
CHIPSET(0x6824, VERDE_6824, VERDE)
|
||||
CHIPSET(0x6825, VERDE_6825, VERDE)
|
||||
CHIPSET(0x6826, VERDE_6826, VERDE)
|
||||
CHIPSET(0x6827, VERDE_6827, VERDE)
|
||||
CHIPSET(0x6828, VERDE_6828, VERDE)
|
||||
CHIPSET(0x6829, VERDE_6829, VERDE)
|
||||
CHIPSET(0x682A, VERDE_682A, VERDE)
|
||||
CHIPSET(0x682B, VERDE_682B, VERDE)
|
||||
CHIPSET(0x682C, VERDE_682C, VERDE)
|
||||
CHIPSET(0x682D, VERDE_682D, VERDE)
|
||||
CHIPSET(0x682F, VERDE_682F, VERDE)
|
||||
CHIPSET(0x6830, VERDE_6830, VERDE)
|
||||
CHIPSET(0x6831, VERDE_6831, VERDE)
|
||||
CHIPSET(0x6835, VERDE_6835, VERDE)
|
||||
CHIPSET(0x6837, VERDE_6837, VERDE)
|
||||
CHIPSET(0x6838, VERDE_6838, VERDE)
|
||||
CHIPSET(0x6839, VERDE_6839, VERDE)
|
||||
CHIPSET(0x683B, VERDE_683B, VERDE)
|
||||
CHIPSET(0x683D, VERDE_683D, VERDE)
|
||||
CHIPSET(0x683F, VERDE_683F, VERDE)
|
||||
|
||||
CHIPSET(0x6600, OLAND)
|
||||
CHIPSET(0x6601, OLAND)
|
||||
CHIPSET(0x6602, OLAND)
|
||||
CHIPSET(0x6603, OLAND)
|
||||
CHIPSET(0x6604, OLAND)
|
||||
CHIPSET(0x6605, OLAND)
|
||||
CHIPSET(0x6606, OLAND)
|
||||
CHIPSET(0x6607, OLAND)
|
||||
CHIPSET(0x6608, OLAND)
|
||||
CHIPSET(0x6610, OLAND)
|
||||
CHIPSET(0x6611, OLAND)
|
||||
CHIPSET(0x6613, OLAND)
|
||||
CHIPSET(0x6617, OLAND)
|
||||
CHIPSET(0x6620, OLAND)
|
||||
CHIPSET(0x6621, OLAND)
|
||||
CHIPSET(0x6623, OLAND)
|
||||
CHIPSET(0x6631, OLAND)
|
||||
CHIPSET(0x6600, OLAND_6600, OLAND)
|
||||
CHIPSET(0x6601, OLAND_6601, OLAND)
|
||||
CHIPSET(0x6602, OLAND_6602, OLAND)
|
||||
CHIPSET(0x6603, OLAND_6603, OLAND)
|
||||
CHIPSET(0x6604, OLAND_6604, OLAND)
|
||||
CHIPSET(0x6605, OLAND_6605, OLAND)
|
||||
CHIPSET(0x6606, OLAND_6606, OLAND)
|
||||
CHIPSET(0x6607, OLAND_6607, OLAND)
|
||||
CHIPSET(0x6608, OLAND_6608, OLAND)
|
||||
CHIPSET(0x6610, OLAND_6610, OLAND)
|
||||
CHIPSET(0x6611, OLAND_6611, OLAND)
|
||||
CHIPSET(0x6613, OLAND_6613, OLAND)
|
||||
CHIPSET(0x6617, OLAND_6617, OLAND)
|
||||
CHIPSET(0x6620, OLAND_6620, OLAND)
|
||||
CHIPSET(0x6621, OLAND_6621, OLAND)
|
||||
CHIPSET(0x6623, OLAND_6623, OLAND)
|
||||
CHIPSET(0x6631, OLAND_6631, OLAND)
|
||||
|
||||
CHIPSET(0x6660, HAINAN)
|
||||
CHIPSET(0x6663, HAINAN)
|
||||
CHIPSET(0x6664, HAINAN)
|
||||
CHIPSET(0x6665, HAINAN)
|
||||
CHIPSET(0x6667, HAINAN)
|
||||
CHIPSET(0x666F, HAINAN)
|
||||
CHIPSET(0x6660, HAINAN_6660, HAINAN)
|
||||
CHIPSET(0x6663, HAINAN_6663, HAINAN)
|
||||
CHIPSET(0x6664, HAINAN_6664, HAINAN)
|
||||
CHIPSET(0x6665, HAINAN_6665, HAINAN)
|
||||
CHIPSET(0x6667, HAINAN_6667, HAINAN)
|
||||
CHIPSET(0x666F, HAINAN_666F, HAINAN)
|
||||
|
||||
CHIPSET(0x6640, BONAIRE)
|
||||
CHIPSET(0x6641, BONAIRE)
|
||||
CHIPSET(0x6646, BONAIRE)
|
||||
CHIPSET(0x6647, BONAIRE)
|
||||
CHIPSET(0x6649, BONAIRE)
|
||||
CHIPSET(0x6650, BONAIRE)
|
||||
CHIPSET(0x6651, BONAIRE)
|
||||
CHIPSET(0x6658, BONAIRE)
|
||||
CHIPSET(0x665C, BONAIRE)
|
||||
CHIPSET(0x665D, BONAIRE)
|
||||
CHIPSET(0x665F, BONAIRE)
|
||||
CHIPSET(0x6640, BONAIRE_6640, BONAIRE)
|
||||
CHIPSET(0x6641, BONAIRE_6641, BONAIRE)
|
||||
CHIPSET(0x6646, BONAIRE_6646, BONAIRE)
|
||||
CHIPSET(0x6647, BONAIRE_6647, BONAIRE)
|
||||
CHIPSET(0x6649, BONAIRE_6649, BONAIRE)
|
||||
CHIPSET(0x6650, BONAIRE_6650, BONAIRE)
|
||||
CHIPSET(0x6651, BONAIRE_6651, BONAIRE)
|
||||
CHIPSET(0x6658, BONAIRE_6658, BONAIRE)
|
||||
CHIPSET(0x665C, BONAIRE_665C, BONAIRE)
|
||||
CHIPSET(0x665D, BONAIRE_665D, BONAIRE)
|
||||
CHIPSET(0x665F, BONAIRE_665F, BONAIRE)
|
||||
|
||||
CHIPSET(0x9830, KABINI)
|
||||
CHIPSET(0x9831, KABINI)
|
||||
CHIPSET(0x9832, KABINI)
|
||||
CHIPSET(0x9833, KABINI)
|
||||
CHIPSET(0x9834, KABINI)
|
||||
CHIPSET(0x9835, KABINI)
|
||||
CHIPSET(0x9836, KABINI)
|
||||
CHIPSET(0x9837, KABINI)
|
||||
CHIPSET(0x9838, KABINI)
|
||||
CHIPSET(0x9839, KABINI)
|
||||
CHIPSET(0x983A, KABINI)
|
||||
CHIPSET(0x983B, KABINI)
|
||||
CHIPSET(0x983C, KABINI)
|
||||
CHIPSET(0x983D, KABINI)
|
||||
CHIPSET(0x983E, KABINI)
|
||||
CHIPSET(0x983F, KABINI)
|
||||
CHIPSET(0x9830, KABINI_9830, KABINI)
|
||||
CHIPSET(0x9831, KABINI_9831, KABINI)
|
||||
CHIPSET(0x9832, KABINI_9832, KABINI)
|
||||
CHIPSET(0x9833, KABINI_9833, KABINI)
|
||||
CHIPSET(0x9834, KABINI_9834, KABINI)
|
||||
CHIPSET(0x9835, KABINI_9835, KABINI)
|
||||
CHIPSET(0x9836, KABINI_9836, KABINI)
|
||||
CHIPSET(0x9837, KABINI_9837, KABINI)
|
||||
CHIPSET(0x9838, KABINI_9838, KABINI)
|
||||
CHIPSET(0x9839, KABINI_9839, KABINI)
|
||||
CHIPSET(0x983A, KABINI_983A, KABINI)
|
||||
CHIPSET(0x983B, KABINI_983B, KABINI)
|
||||
CHIPSET(0x983C, KABINI_983C, KABINI)
|
||||
CHIPSET(0x983D, KABINI_983D, KABINI)
|
||||
CHIPSET(0x983E, KABINI_983E, KABINI)
|
||||
CHIPSET(0x983F, KABINI_983F, KABINI)
|
||||
|
||||
CHIPSET(0x9850, MULLINS)
|
||||
CHIPSET(0x9851, MULLINS)
|
||||
CHIPSET(0x9852, MULLINS)
|
||||
CHIPSET(0x9853, MULLINS)
|
||||
CHIPSET(0x9854, MULLINS)
|
||||
CHIPSET(0x9855, MULLINS)
|
||||
CHIPSET(0x9856, MULLINS)
|
||||
CHIPSET(0x9857, MULLINS)
|
||||
CHIPSET(0x9858, MULLINS)
|
||||
CHIPSET(0x9859, MULLINS)
|
||||
CHIPSET(0x985A, MULLINS)
|
||||
CHIPSET(0x985B, MULLINS)
|
||||
CHIPSET(0x985C, MULLINS)
|
||||
CHIPSET(0x985D, MULLINS)
|
||||
CHIPSET(0x985E, MULLINS)
|
||||
CHIPSET(0x985F, MULLINS)
|
||||
CHIPSET(0x9850, MULLINS_9850, MULLINS)
|
||||
CHIPSET(0x9851, MULLINS_9851, MULLINS)
|
||||
CHIPSET(0x9852, MULLINS_9852, MULLINS)
|
||||
CHIPSET(0x9853, MULLINS_9853, MULLINS)
|
||||
CHIPSET(0x9854, MULLINS_9854, MULLINS)
|
||||
CHIPSET(0x9855, MULLINS_9855, MULLINS)
|
||||
CHIPSET(0x9856, MULLINS_9856, MULLINS)
|
||||
CHIPSET(0x9857, MULLINS_9857, MULLINS)
|
||||
CHIPSET(0x9858, MULLINS_9858, MULLINS)
|
||||
CHIPSET(0x9859, MULLINS_9859, MULLINS)
|
||||
CHIPSET(0x985A, MULLINS_985A, MULLINS)
|
||||
CHIPSET(0x985B, MULLINS_985B, MULLINS)
|
||||
CHIPSET(0x985C, MULLINS_985C, MULLINS)
|
||||
CHIPSET(0x985D, MULLINS_985D, MULLINS)
|
||||
CHIPSET(0x985E, MULLINS_985E, MULLINS)
|
||||
CHIPSET(0x985F, MULLINS_985F, MULLINS)
|
||||
|
||||
CHIPSET(0x1304, KAVERI)
|
||||
CHIPSET(0x1305, KAVERI)
|
||||
CHIPSET(0x1306, KAVERI)
|
||||
CHIPSET(0x1307, KAVERI)
|
||||
CHIPSET(0x1309, KAVERI)
|
||||
CHIPSET(0x130A, KAVERI)
|
||||
CHIPSET(0x130B, KAVERI)
|
||||
CHIPSET(0x130C, KAVERI)
|
||||
CHIPSET(0x130D, KAVERI)
|
||||
CHIPSET(0x130E, KAVERI)
|
||||
CHIPSET(0x130F, KAVERI)
|
||||
CHIPSET(0x1310, KAVERI)
|
||||
CHIPSET(0x1311, KAVERI)
|
||||
CHIPSET(0x1312, KAVERI)
|
||||
CHIPSET(0x1313, KAVERI)
|
||||
CHIPSET(0x1315, KAVERI)
|
||||
CHIPSET(0x1316, KAVERI)
|
||||
CHIPSET(0x1317, KAVERI)
|
||||
CHIPSET(0x1318, KAVERI)
|
||||
CHIPSET(0x131B, KAVERI)
|
||||
CHIPSET(0x131C, KAVERI)
|
||||
CHIPSET(0x131D, KAVERI)
|
||||
CHIPSET(0x1304, KAVERI_1304, KAVERI)
|
||||
CHIPSET(0x1305, KAVERI_1305, KAVERI)
|
||||
CHIPSET(0x1306, KAVERI_1306, KAVERI)
|
||||
CHIPSET(0x1307, KAVERI_1307, KAVERI)
|
||||
CHIPSET(0x1309, KAVERI_1309, KAVERI)
|
||||
CHIPSET(0x130A, KAVERI_130A, KAVERI)
|
||||
CHIPSET(0x130B, KAVERI_130B, KAVERI)
|
||||
CHIPSET(0x130C, KAVERI_130C, KAVERI)
|
||||
CHIPSET(0x130D, KAVERI_130D, KAVERI)
|
||||
CHIPSET(0x130E, KAVERI_130E, KAVERI)
|
||||
CHIPSET(0x130F, KAVERI_130F, KAVERI)
|
||||
CHIPSET(0x1310, KAVERI_1310, KAVERI)
|
||||
CHIPSET(0x1311, KAVERI_1311, KAVERI)
|
||||
CHIPSET(0x1312, KAVERI_1312, KAVERI)
|
||||
CHIPSET(0x1313, KAVERI_1313, KAVERI)
|
||||
CHIPSET(0x1315, KAVERI_1315, KAVERI)
|
||||
CHIPSET(0x1316, KAVERI_1316, KAVERI)
|
||||
CHIPSET(0x1317, KAVERI_1317, KAVERI)
|
||||
CHIPSET(0x1318, KAVERI_1318, KAVERI)
|
||||
CHIPSET(0x131B, KAVERI_131B, KAVERI)
|
||||
CHIPSET(0x131C, KAVERI_131C, KAVERI)
|
||||
CHIPSET(0x131D, KAVERI_131D, KAVERI)
|
||||
|
||||
CHIPSET(0x67A0, HAWAII)
|
||||
CHIPSET(0x67A1, HAWAII)
|
||||
CHIPSET(0x67A2, HAWAII)
|
||||
CHIPSET(0x67A8, HAWAII)
|
||||
CHIPSET(0x67A9, HAWAII)
|
||||
CHIPSET(0x67AA, HAWAII)
|
||||
CHIPSET(0x67B0, HAWAII)
|
||||
CHIPSET(0x67B1, HAWAII)
|
||||
CHIPSET(0x67B8, HAWAII)
|
||||
CHIPSET(0x67B9, HAWAII)
|
||||
CHIPSET(0x67BA, HAWAII)
|
||||
CHIPSET(0x67BE, HAWAII)
|
||||
CHIPSET(0x67A0, HAWAII_67A0, HAWAII)
|
||||
CHIPSET(0x67A1, HAWAII_67A1, HAWAII)
|
||||
CHIPSET(0x67A2, HAWAII_67A2, HAWAII)
|
||||
CHIPSET(0x67A8, HAWAII_67A8, HAWAII)
|
||||
CHIPSET(0x67A9, HAWAII_67A9, HAWAII)
|
||||
CHIPSET(0x67AA, HAWAII_67AA, HAWAII)
|
||||
CHIPSET(0x67B0, HAWAII_67B0, HAWAII)
|
||||
CHIPSET(0x67B1, HAWAII_67B1, HAWAII)
|
||||
CHIPSET(0x67B8, HAWAII_67B8, HAWAII)
|
||||
CHIPSET(0x67B9, HAWAII_67B9, HAWAII)
|
||||
CHIPSET(0x67BA, HAWAII_67BA, HAWAII)
|
||||
CHIPSET(0x67BE, HAWAII_67BE, HAWAII)
|
||||
|
||||
CHIPSET(0x6900, ICELAND)
|
||||
CHIPSET(0x6901, ICELAND)
|
||||
CHIPSET(0x6902, ICELAND)
|
||||
CHIPSET(0x6903, ICELAND)
|
||||
CHIPSET(0x6907, ICELAND)
|
||||
CHIPSET(0x6900, ICELAND_, ICELAND)
|
||||
CHIPSET(0x6901, ICELAND_, ICELAND)
|
||||
CHIPSET(0x6902, ICELAND_, ICELAND)
|
||||
CHIPSET(0x6903, ICELAND_, ICELAND)
|
||||
CHIPSET(0x6907, ICELAND_, ICELAND)
|
||||
|
||||
CHIPSET(0x6920, TONGA)
|
||||
CHIPSET(0x6921, TONGA)
|
||||
CHIPSET(0x6928, TONGA)
|
||||
CHIPSET(0x6929, TONGA)
|
||||
CHIPSET(0x692B, TONGA)
|
||||
CHIPSET(0x692F, TONGA)
|
||||
CHIPSET(0x6930, TONGA)
|
||||
CHIPSET(0x6938, TONGA)
|
||||
CHIPSET(0x6939, TONGA)
|
||||
CHIPSET(0x6920, TONGA_, TONGA)
|
||||
CHIPSET(0x6921, TONGA_, TONGA)
|
||||
CHIPSET(0x6928, TONGA_, TONGA)
|
||||
CHIPSET(0x6929, TONGA_, TONGA)
|
||||
CHIPSET(0x692B, TONGA_, TONGA)
|
||||
CHIPSET(0x692F, TONGA_, TONGA)
|
||||
CHIPSET(0x6930, TONGA_, TONGA)
|
||||
CHIPSET(0x6938, TONGA_, TONGA)
|
||||
CHIPSET(0x6939, TONGA_, TONGA)
|
||||
|
||||
CHIPSET(0x9870, CARRIZO)
|
||||
CHIPSET(0x9874, CARRIZO)
|
||||
CHIPSET(0x9875, CARRIZO)
|
||||
CHIPSET(0x9876, CARRIZO)
|
||||
CHIPSET(0x9877, CARRIZO)
|
||||
CHIPSET(0x9870, CARRIZO_, CARRIZO)
|
||||
CHIPSET(0x9874, CARRIZO_, CARRIZO)
|
||||
CHIPSET(0x9875, CARRIZO_, CARRIZO)
|
||||
CHIPSET(0x9876, CARRIZO_, CARRIZO)
|
||||
CHIPSET(0x9877, CARRIZO_, CARRIZO)
|
||||
|
||||
CHIPSET(0x7300, FIJI)
|
||||
CHIPSET(0x7300, FIJI_, FIJI)
|
||||
|
||||
CHIPSET(0x67E0, POLARIS11)
|
||||
CHIPSET(0x67E1, POLARIS11)
|
||||
CHIPSET(0x67E3, POLARIS11)
|
||||
CHIPSET(0x67E7, POLARIS11)
|
||||
CHIPSET(0x67E8, POLARIS11)
|
||||
CHIPSET(0x67E9, POLARIS11)
|
||||
CHIPSET(0x67EB, POLARIS11)
|
||||
CHIPSET(0x67EF, POLARIS11)
|
||||
CHIPSET(0x67FF, POLARIS11)
|
||||
CHIPSET(0x67E0, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67E1, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67E3, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67E7, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67E8, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67E9, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67EB, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67EF, POLARIS11_, POLARIS11)
|
||||
CHIPSET(0x67FF, POLARIS11_, POLARIS11)
|
||||
|
||||
CHIPSET(0x67C0, POLARIS10)
|
||||
CHIPSET(0x67C1, POLARIS10)
|
||||
CHIPSET(0x67C2, POLARIS10)
|
||||
CHIPSET(0x67C4, POLARIS10)
|
||||
CHIPSET(0x67C7, POLARIS10)
|
||||
CHIPSET(0x67C8, POLARIS10)
|
||||
CHIPSET(0x67C9, POLARIS10)
|
||||
CHIPSET(0x67CA, POLARIS10)
|
||||
CHIPSET(0x67CC, POLARIS10)
|
||||
CHIPSET(0x67CF, POLARIS10)
|
||||
CHIPSET(0x67D0, POLARIS10)
|
||||
CHIPSET(0x67DF, POLARIS10)
|
||||
CHIPSET(0x67C0, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67C1, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67C2, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67C4, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67C7, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67C8, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67C9, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67CA, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67CC, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67CF, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67D0, POLARIS10_, POLARIS10)
|
||||
CHIPSET(0x67DF, POLARIS10_, POLARIS10)
|
||||
|
||||
CHIPSET(0x98E4, STONEY)
|
||||
CHIPSET(0x98E4, STONEY_, STONEY)
|
||||
|
||||
CHIPSET(0x6980, POLARIS12)
|
||||
CHIPSET(0x6981, POLARIS12)
|
||||
CHIPSET(0x6985, POLARIS12)
|
||||
CHIPSET(0x6986, POLARIS12)
|
||||
CHIPSET(0x6987, POLARIS12)
|
||||
CHIPSET(0x6995, POLARIS12)
|
||||
CHIPSET(0x6997, POLARIS12)
|
||||
CHIPSET(0x699F, POLARIS12)
|
||||
CHIPSET(0x6980, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x6981, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x6985, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x6986, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x6987, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x6995, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x6997, POLARIS12_, POLARIS12)
|
||||
CHIPSET(0x699F, POLARIS12_, POLARIS12)
|
||||
|
||||
CHIPSET(0x6860, VEGA10)
|
||||
CHIPSET(0x6861, VEGA10)
|
||||
CHIPSET(0x6862, VEGA10)
|
||||
CHIPSET(0x6863, VEGA10)
|
||||
CHIPSET(0x6864, VEGA10)
|
||||
CHIPSET(0x6867, VEGA10)
|
||||
CHIPSET(0x6868, VEGA10)
|
||||
CHIPSET(0x687F, VEGA10)
|
||||
CHIPSET(0x686C, VEGA10)
|
||||
CHIPSET(0x6860, VEGA10_, VEGA10)
|
||||
CHIPSET(0x6861, VEGA10_, VEGA10)
|
||||
CHIPSET(0x6862, VEGA10_, VEGA10)
|
||||
CHIPSET(0x6863, VEGA10_, VEGA10)
|
||||
CHIPSET(0x6864, VEGA10_, VEGA10)
|
||||
CHIPSET(0x6867, VEGA10_, VEGA10)
|
||||
CHIPSET(0x6868, VEGA10_, VEGA10)
|
||||
CHIPSET(0x687F, VEGA10_, VEGA10)
|
||||
CHIPSET(0x686C, VEGA10_, VEGA10)
|
||||
|
||||
CHIPSET(0x15DD, RAVEN)
|
||||
CHIPSET(0x15DD, RAVEN_, RAVEN)
|
||||
|
@@ -1,96 +0,0 @@
|
||||
/*
|
||||
* Copyright 2015 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#ifndef __VK_ANDROID_NATIVE_BUFFER_H__
|
||||
#define __VK_ANDROID_NATIVE_BUFFER_H__
|
||||
|
||||
/* MESA: A hack to avoid #ifdefs in driver code. */
|
||||
#ifdef ANDROID
|
||||
#include <system/window.h>
|
||||
#include <vulkan/vulkan.h>
|
||||
#else
|
||||
typedef void *buffer_handle_t;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define VK_ANDROID_native_buffer 1
|
||||
|
||||
#define VK_ANDROID_NATIVE_BUFFER_EXTENSION_NUMBER 11
|
||||
#define VK_ANDROID_NATIVE_BUFFER_SPEC_VERSION 5
|
||||
#define VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME "VK_ANDROID_native_buffer"
|
||||
|
||||
#define VK_ANDROID_NATIVE_BUFFER_ENUM(type,id) ((type)(1000000000 + (1000 * (VK_ANDROID_NATIVE_BUFFER_EXTENSION_NUMBER - 1)) + (id)))
|
||||
#define VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID VK_ANDROID_NATIVE_BUFFER_ENUM(VkStructureType, 0)
|
||||
|
||||
typedef struct {
|
||||
VkStructureType sType; // must be VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID
|
||||
const void* pNext;
|
||||
|
||||
// Buffer handle and stride returned from gralloc alloc()
|
||||
buffer_handle_t handle;
|
||||
int stride;
|
||||
|
||||
// Gralloc format and usage requested when the buffer was allocated.
|
||||
int format;
|
||||
int usage;
|
||||
} VkNativeBufferANDROID;
|
||||
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainGrallocUsageANDROID)(VkDevice device, VkFormat format, VkImageUsageFlags imageUsage, int* grallocUsage);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkAcquireImageANDROID)(VkDevice device, VkImage image, int nativeFenceFd, VkSemaphore semaphore, VkFence fence);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkQueueSignalReleaseImageANDROID)(VkQueue queue, uint32_t waitSemaphoreCount, const VkSemaphore* pWaitSemaphores, VkImage image, int* pNativeFenceFd);
|
||||
|
||||
#ifndef VK_NO_PROTOTYPES
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainGrallocUsageANDROID(
|
||||
VkDevice device,
|
||||
VkFormat format,
|
||||
VkImageUsageFlags imageUsage,
|
||||
int* grallocUsage
|
||||
);
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireImageANDROID(
|
||||
VkDevice device,
|
||||
VkImage image,
|
||||
int nativeFenceFd,
|
||||
VkSemaphore semaphore,
|
||||
VkFence fence
|
||||
);
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSignalReleaseImageANDROID(
|
||||
VkQueue queue,
|
||||
uint32_t waitSemaphoreCount,
|
||||
const VkSemaphore* pWaitSemaphores,
|
||||
VkImage image,
|
||||
int* pNativeFenceFd
|
||||
);
|
||||
// -- DEPRECATED --
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkImportNativeFenceANDROID(
|
||||
VkDevice device,
|
||||
VkSemaphore semaphore,
|
||||
int nativeFenceFd
|
||||
);
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSignalNativeFenceANDROID(
|
||||
VkQueue queue,
|
||||
int* pNativeFenceFd
|
||||
);
|
||||
// ----------------
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // __VK_ANDROID_NATIVE_BUFFER_H__
|
File diff suppressed because it is too large
Load Diff
@@ -1,74 +0,0 @@
|
||||
# ===========================================================================
|
||||
# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# Check whether the given FLAG works with the current language's compiler
|
||||
# or gives an error. (Warnings, however, are ignored)
|
||||
#
|
||||
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
|
||||
# success/failure.
|
||||
#
|
||||
# If EXTRA-FLAGS is defined, it is added to the current language's default
|
||||
# flags (e.g. CFLAGS) when the check is done. The check is thus made with
|
||||
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
|
||||
# force the compiler to issue an error when a bad flag is given.
|
||||
#
|
||||
# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
|
||||
#
|
||||
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
|
||||
# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
|
||||
#
|
||||
# LICENSE
|
||||
#
|
||||
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
||||
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License as published by the
|
||||
# Free Software Foundation, either version 3 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
# Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# As a special exception, the respective Autoconf Macro's copyright owner
|
||||
# gives unlimited permission to copy, distribute and modify the configure
|
||||
# scripts that are the output of Autoconf when processing the Macro. You
|
||||
# need not follow the terms of the GNU General Public License when using
|
||||
# or distributing such scripts, even though portions of the text of the
|
||||
# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
# all other use of the material that constitutes the Autoconf Macro.
|
||||
#
|
||||
# This special exception to the GPL applies to versions of the Autoconf
|
||||
# Macro released by the Autoconf Archive. When you make and distribute a
|
||||
# modified version of the Autoconf Macro, you may extend this special
|
||||
# exception to the GPL to apply to your modified version as well.
|
||||
|
||||
#serial 3
|
||||
|
||||
AC_DEFUN([AX_CHECK_COMPILE_FLAG],
|
||||
[AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX
|
||||
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
|
||||
AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
|
||||
ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
|
||||
_AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
|
||||
AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
|
||||
[AS_VAR_SET(CACHEVAR,[yes])],
|
||||
[AS_VAR_SET(CACHEVAR,[no])])
|
||||
_AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
|
||||
AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes],
|
||||
[m4_default([$2], :)],
|
||||
[m4_default([$3], :)])
|
||||
AS_VAR_POPDEF([CACHEVAR])dnl
|
||||
])dnl AX_CHECK_COMPILE_FLAGS
|
1242
meson.build
1242
meson.build
File diff suppressed because it is too large
Load Diff
@@ -1,282 +0,0 @@
|
||||
# Copyright © 2017 Intel Corporation
|
||||
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
option(
|
||||
'platforms',
|
||||
type : 'string',
|
||||
value : 'auto',
|
||||
description : 'comma separated list of window systems to support. If this is set to auto all platforms applicable to the OS will be enabled.'
|
||||
)
|
||||
option(
|
||||
'dri3',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'enable support for dri3'
|
||||
)
|
||||
option(
|
||||
'dri-drivers',
|
||||
type : 'string',
|
||||
value : 'auto',
|
||||
description : 'comma separated list of dri drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built'
|
||||
)
|
||||
option(
|
||||
'dri-drivers-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'Location to install dri drivers. Default: $libdir/dri.'
|
||||
)
|
||||
option(
|
||||
'dri-search-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'Locations to search for dri drivers, passed as colon separated list. Default: dri-drivers-path.'
|
||||
)
|
||||
option(
|
||||
'gallium-drivers',
|
||||
type : 'string',
|
||||
value : 'auto',
|
||||
description : 'comma separated list of gallium drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built'
|
||||
)
|
||||
option(
|
||||
'gallium-extra-hud',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Enable HUD block/NIC I/O HUD status support',
|
||||
)
|
||||
option(
|
||||
'gallium-vdpau',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'enable gallium vdpau state tracker.',
|
||||
)
|
||||
option(
|
||||
'vdpau-libs-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'path to put vdpau libraries. defaults to $libdir/vdpau.'
|
||||
)
|
||||
option(
|
||||
'gallium-xvmc',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'enable gallium xvmc state tracker.',
|
||||
)
|
||||
option(
|
||||
'xvmc-libs-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'path to put xvmc libraries. defaults to $libdir.'
|
||||
)
|
||||
option(
|
||||
'gallium-omx',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'enable gallium omx bellagio state tracker.',
|
||||
)
|
||||
option(
|
||||
'omx-libs-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'path to put omx libraries. defaults to omx-bellagio pkg-config pluginsdir.'
|
||||
)
|
||||
option(
|
||||
'gallium-va',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'enable gallium va state tracker.',
|
||||
)
|
||||
option(
|
||||
'va-libs-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'path to put va libraries. defaults to $libdir/dri.'
|
||||
)
|
||||
option(
|
||||
'gallium-xa',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'enable gallium xa state tracker.',
|
||||
)
|
||||
option(
|
||||
'gallium-nine',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'build gallium "nine" Direct3D 9.x state tracker.',
|
||||
)
|
||||
option(
|
||||
'gallium-opencl',
|
||||
type : 'combo',
|
||||
choices : ['icd', 'standalone', 'disabled'],
|
||||
value : 'disabled',
|
||||
description : 'build gallium "clover" OpenCL state tracker.',
|
||||
)
|
||||
option(
|
||||
'd3d-drivers-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'Location of D3D drivers. Default: $libdir/d3d',
|
||||
)
|
||||
option(
|
||||
'vulkan-drivers',
|
||||
type : 'string',
|
||||
value : 'auto',
|
||||
description : 'comma separated list of vulkan drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built'
|
||||
)
|
||||
option(
|
||||
'shader-cache',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Build with on-disk shader cache support'
|
||||
)
|
||||
option(
|
||||
'vulkan-icd-dir',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'Location relative to prefix to put vulkan icds on install. Default: $datadir/vulkan/icd.d'
|
||||
)
|
||||
option(
|
||||
'shared-glapi',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Whether to build a shared or static glapi'
|
||||
)
|
||||
option(
|
||||
'gles1',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Build support for OpenGL ES 1.x'
|
||||
)
|
||||
option(
|
||||
'gles2',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Build support for OpenGL ES 2.x and 3.x'
|
||||
)
|
||||
option(
|
||||
'opengl',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Build support for OpenGL (all versions)'
|
||||
)
|
||||
option(
|
||||
'gbm',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'Build support for gbm platform'
|
||||
)
|
||||
option(
|
||||
'glx',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'disabled', 'dri', 'xlib', 'gallium-xlib'],
|
||||
description : 'Build support for GLX platform'
|
||||
)
|
||||
option(
|
||||
'egl',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'Build support for EGL platform'
|
||||
)
|
||||
option(
|
||||
'glvnd',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Enable GLVND support.'
|
||||
)
|
||||
option(
|
||||
'asm',
|
||||
type : 'boolean',
|
||||
value : true,
|
||||
description : 'Build assembly code if possible'
|
||||
)
|
||||
option(
|
||||
'llvm',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'Build with LLVM support.'
|
||||
)
|
||||
option(
|
||||
'valgrind',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'Build with valgrind support'
|
||||
)
|
||||
option(
|
||||
'libunwind',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'Use libunwind for stack-traces'
|
||||
)
|
||||
option(
|
||||
'lmsensors',
|
||||
type : 'combo',
|
||||
value : 'auto',
|
||||
choices : ['auto', 'true', 'false'],
|
||||
description : 'Enable HUD lmsensors support.'
|
||||
)
|
||||
option(
|
||||
'build-tests',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Build unit tests. Currently this will build *all* unit tests, which may build more than expected.'
|
||||
)
|
||||
option(
|
||||
'texture-float',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Enable floating point textures and renderbuffers. This option may be patent encumbered, please read docs/patents.txt and consult with your lawyer before turning this on.'
|
||||
)
|
||||
option(
|
||||
'selinux',
|
||||
type : 'boolean',
|
||||
value : false,
|
||||
description : 'Build an SELinux-aware Mesa'
|
||||
)
|
||||
option(
|
||||
'osmesa',
|
||||
type : 'combo',
|
||||
value : 'none',
|
||||
choices : ['none', 'classic', 'gallium'],
|
||||
description : 'Build OSmesa.'
|
||||
)
|
||||
option(
|
||||
'osmesa-bits',
|
||||
type : 'combo',
|
||||
value : '8',
|
||||
choices : ['8', '16', '32'],
|
||||
description : 'Number of channel bits for OSMesa.'
|
||||
)
|
||||
option(
|
||||
'swr-arches',
|
||||
type : 'string',
|
||||
value : 'avx,avx2',
|
||||
description : 'Comma delemited swr architectures. choices : avx,avx2,knl,skx'
|
||||
)
|
@@ -83,7 +83,7 @@ def shlib_emitter(target, source, env):
|
||||
no_import_lib = env.get('no_import_lib', 0)
|
||||
|
||||
if not dll:
|
||||
raise SCons.Errors.UserError("A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX"))
|
||||
raise SCons.Errors.UserError, "A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX")
|
||||
|
||||
if not no_import_lib and \
|
||||
not env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX'):
|
||||
|
@@ -113,7 +113,7 @@ def python_scan(node, env, path):
|
||||
finder = modulefinder.ModuleFinder(path=path)
|
||||
finder.run_script(node.abspath)
|
||||
results = []
|
||||
for name, mod in finder.modules.items():
|
||||
for name, mod in finder.modules.iteritems():
|
||||
if mod.__file__ is None:
|
||||
continue
|
||||
assert os.path.exists(mod.__file__)
|
||||
@@ -189,7 +189,7 @@ def _pkg_check_modules(env, name, modules):
|
||||
except OSError:
|
||||
return
|
||||
prefix = name + '_'
|
||||
for flag_name, flag_value in flags.items():
|
||||
for flag_name, flag_value in flags.iteritems():
|
||||
assert '_' not in flag_name
|
||||
env[prefix + flag_name] = flag_value
|
||||
|
||||
@@ -222,7 +222,7 @@ def pkg_use_modules(env, names):
|
||||
raise Exception('Attempt to use unavailable module %s' % name)
|
||||
|
||||
flags = {}
|
||||
for flag_name, flag_value in env.Dictionary().items():
|
||||
for flag_name, flag_value in env.Dictionary().iteritems():
|
||||
if flag_name.startswith(prefix):
|
||||
flag_name = flag_name[len(prefix):]
|
||||
if '_' not in flag_name:
|
||||
@@ -262,7 +262,7 @@ def parse_source_list(env, filename, names=None):
|
||||
|
||||
symbols = names
|
||||
else:
|
||||
symbols = list(sym_table.keys())
|
||||
symbols = sym_table.keys()
|
||||
|
||||
# convert the symbol table to source lists
|
||||
src_lists = {}
|
||||
|
@@ -51,7 +51,7 @@ def generate(env):
|
||||
elif env['machine'] == 'x86_64':
|
||||
target_cpu = 'x64'
|
||||
else:
|
||||
raise SCons.Errors.InternalError("Unsupported target machine")
|
||||
raise SCons.Errors.InternalError, "Unsupported target machine"
|
||||
|
||||
include_dir = os.path.join(dxsdk_root, 'Include')
|
||||
lib_dir = os.path.join(dxsdk_root, 'Lib', target_cpu)
|
||||
|
@@ -193,15 +193,15 @@ def generate(env):
|
||||
env.Tool(env['toolchain'])
|
||||
|
||||
# Allow override compiler and specify additional flags from environment
|
||||
if 'CC' in os.environ:
|
||||
if os.environ.has_key('CC'):
|
||||
env['CC'] = os.environ['CC']
|
||||
if 'CFLAGS' in os.environ:
|
||||
if os.environ.has_key('CFLAGS'):
|
||||
env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
|
||||
if 'CXX' in os.environ:
|
||||
if os.environ.has_key('CXX'):
|
||||
env['CXX'] = os.environ['CXX']
|
||||
if 'CXXFLAGS' in os.environ:
|
||||
if os.environ.has_key('CXXFLAGS'):
|
||||
env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
|
||||
if 'LDFLAGS' in os.environ:
|
||||
if os.environ.has_key('LDFLAGS'):
|
||||
env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
|
||||
|
||||
# Detect gcc/clang not by executable name, but through pre-defined macros
|
||||
@@ -352,15 +352,9 @@ def generate(env):
|
||||
if check_header(env, 'xlocale.h'):
|
||||
cppdefines += ['HAVE_XLOCALE_H']
|
||||
|
||||
if check_header(env, 'endian.h'):
|
||||
cppdefines += ['HAVE_ENDIAN_H']
|
||||
|
||||
if check_functions(env, ['strtod_l', 'strtof_l']):
|
||||
cppdefines += ['HAVE_STRTOD_L']
|
||||
|
||||
if check_functions(env, ['timespec_get']):
|
||||
cppdefines += ['HAVE_TIMESPEC_GET']
|
||||
|
||||
if platform == 'windows':
|
||||
cppdefines += [
|
||||
'WIN32',
|
||||
|
@@ -50,7 +50,7 @@ def generate(env):
|
||||
llvm_dir = None
|
||||
else:
|
||||
if not os.path.isdir(llvm_dir):
|
||||
raise SCons.Errors.InternalError("Specified LLVM directory not found")
|
||||
raise SCons.Errors.InternalError, "Specified LLVM directory not found"
|
||||
|
||||
if env['debug']:
|
||||
llvm_subdir = 'Debug'
|
||||
@@ -61,7 +61,7 @@ def generate(env):
|
||||
if not os.path.isdir(llvm_bin_dir):
|
||||
llvm_bin_dir = os.path.join(llvm_dir, 'bin')
|
||||
if not os.path.isdir(llvm_bin_dir):
|
||||
raise SCons.Errors.InternalError("LLVM binary directory not found")
|
||||
raise SCons.Errors.InternalError, "LLVM binary directory not found"
|
||||
|
||||
env.PrependENVPath('PATH', llvm_bin_dir)
|
||||
|
||||
|
@@ -19,14 +19,21 @@
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
|
||||
.PHONY: git_sha1.h
|
||||
git_sha1.h: $(top_srcdir)/src/git_sha1.h.in
|
||||
@echo "updating $@"
|
||||
@$(PYTHON2) $(top_srcdir)/bin/git_sha1_gen.py --output $@
|
||||
.PHONY: git_sha1.h.tmp
|
||||
git_sha1.h.tmp:
|
||||
@sh $(top_srcdir)/bin/git_sha1_gen.sh > $@
|
||||
|
||||
git_sha1.h: git_sha1.h.tmp
|
||||
@echo "updating git_sha1.h"
|
||||
@if ! cmp -s git_sha1.h.tmp git_sha1.h; then \
|
||||
mv git_sha1.h.tmp git_sha1.h ;\
|
||||
else \
|
||||
rm git_sha1.h.tmp ;\
|
||||
fi
|
||||
|
||||
BUILT_SOURCES = git_sha1.h
|
||||
CLEANFILES = $(BUILT_SOURCES)
|
||||
EXTRA_DIST = git_sha1.h.in meson.build
|
||||
EXTRA_DIST =
|
||||
|
||||
SUBDIRS = . gtest util mapi/glapi/gen mapi
|
||||
|
||||
@@ -57,7 +64,7 @@ endif
|
||||
# include only conditionally ?
|
||||
SUBDIRS += compiler
|
||||
|
||||
## Optionally required by EGL
|
||||
## Optionally required by GBM, EGL and Vulkan
|
||||
if HAVE_PLATFORM_WAYLAND
|
||||
SUBDIRS += egl/wayland/wayland-drm
|
||||
endif
|
||||
@@ -65,9 +72,7 @@ endif
|
||||
if HAVE_VULKAN_COMMON
|
||||
SUBDIRS += vulkan
|
||||
endif
|
||||
|
||||
EXTRA_DIST += vulkan/registry/vk.xml
|
||||
EXTRA_DIST += vulkan/registry/vk_android_native_buffer.xml
|
||||
|
||||
if HAVE_AMD_DRIVERS
|
||||
SUBDIRS += amd
|
||||
@@ -77,7 +82,7 @@ if HAVE_INTEL_DRIVERS
|
||||
SUBDIRS += intel
|
||||
endif
|
||||
|
||||
if HAVE_BROADCOM_DRIVERS
|
||||
if HAVE_GALLIUM_VC4
|
||||
SUBDIRS += broadcom
|
||||
endif
|
||||
|
||||
|
@@ -1,14 +1,12 @@
|
||||
import filecmp
|
||||
import os
|
||||
import subprocess
|
||||
from sys import executable as python_cmd
|
||||
|
||||
Import('*')
|
||||
|
||||
if env['platform'] == 'windows':
|
||||
SConscript('getopt/SConscript')
|
||||
|
||||
SConscript('util/xmlpool/SConscript')
|
||||
SConscript('util/SConscript')
|
||||
SConscript('compiler/SConscript')
|
||||
|
||||
@@ -24,12 +22,22 @@ def write_git_sha1_h_file(filename):
|
||||
to retrieve the git hashid and write the header file. An empty file
|
||||
will be created if anything goes wrong."""
|
||||
|
||||
args = [ python_cmd, Dir('#').abspath + '/bin/git_sha1_gen.py', '--output', filename ]
|
||||
try:
|
||||
subprocess.call(args)
|
||||
except:
|
||||
print("Warning: exception in write_git_sha1_h_file()")
|
||||
return
|
||||
tempfile = "git_sha1.h.tmp"
|
||||
with open(tempfile, "w") as f:
|
||||
args = [ 'sh', Dir('#').abspath + '/bin/git_sha1_gen.sh' ]
|
||||
try:
|
||||
subprocess.Popen(args, stdout=f).wait()
|
||||
except:
|
||||
print("Warning: exception in write_git_sha1_h_file()")
|
||||
return
|
||||
|
||||
if not os.path.exists(filename) or not filecmp.cmp(tempfile, filename):
|
||||
# The filename does not exist or it's different from the new file,
|
||||
# so replace old file with new.
|
||||
if os.path.exists(filename):
|
||||
os.remove(filename)
|
||||
os.rename(tempfile, filename)
|
||||
return
|
||||
|
||||
|
||||
# Create the git_sha1.h header file
|
||||
|
@@ -30,6 +30,8 @@ LOCAL_MODULE := libmesa_amdgpu_addrlib
|
||||
|
||||
LOCAL_SRC_FILES := $(ADDRLIB_FILES)
|
||||
|
||||
LOCAL_CFLAGS := -DBRAHMA_BUILD=1
|
||||
|
||||
LOCAL_C_INCLUDES := \
|
||||
$(MESA_TOP)/src \
|
||||
$(MESA_TOP)/src/amd/common \
|
||||
|
@@ -31,8 +31,7 @@ LOCAL_MODULE := libmesa_amd_common
|
||||
LOCAL_SRC_FILES := \
|
||||
$(AMD_COMMON_FILES) \
|
||||
$(AMD_COMPILER_FILES) \
|
||||
$(AMD_DEBUG_FILES) \
|
||||
$(AMD_NIR_FILES)
|
||||
$(AMD_DEBUG_FILES)
|
||||
|
||||
LOCAL_CFLAGS += -DFORCE_BUILD_AMDGPU # instructs LLVM to declare LLVMInitializeAMDGPU* functions
|
||||
|
||||
@@ -44,7 +43,7 @@ LOCAL_GENERATED_SOURCES := $(addprefix $(intermediates)/, $(AMD_GENERATED_FILES)
|
||||
$(LOCAL_GENERATED_SOURCES): PRIVATE_PYTHON := $(MESA_PYTHON2)
|
||||
$(LOCAL_GENERATED_SOURCES): PRIVATE_CUSTOM_TOOL = $(PRIVATE_PYTHON) $^ > $@
|
||||
|
||||
$(intermediates)/common/sid_tables.h: $(LOCAL_PATH)/common/sid_tables.py $(LOCAL_PATH)/common/sid.h $(LOCAL_PATH)/common/gfx9d.h
|
||||
$(intermediates)/common/sid_tables.h: $(LOCAL_PATH)/common/sid_tables.py $(MESA_TOP)/src/amd/common/sid.h
|
||||
$(transform-generated-source)
|
||||
|
||||
LOCAL_C_INCLUDES := \
|
||||
|
@@ -29,10 +29,11 @@ addrlib_libamdgpu_addrlib_la_CPPFLAGS = \
|
||||
-I$(srcdir)/addrlib/inc/chip/gfx9 \
|
||||
-I$(srcdir)/addrlib/inc/chip/r800 \
|
||||
-I$(srcdir)/addrlib/gfx9/chip \
|
||||
-I$(srcdir)/addrlib/r800/chip
|
||||
-I$(srcdir)/addrlib/r800/chip \
|
||||
-DBRAHMA_BUILD=1
|
||||
|
||||
addrlib_libamdgpu_addrlib_la_CXXFLAGS = \
|
||||
$(VISIBILITY_CXXFLAGS) $(CXX11_CXXFLAGS)
|
||||
$(VISIBILITY_CXXFLAGS)
|
||||
|
||||
noinst_LTLIBRARIES += $(ADDRLIB_LIBS)
|
||||
|
||||
|
@@ -23,13 +23,6 @@ include Makefile.sources
|
||||
|
||||
noinst_LTLIBRARIES =
|
||||
|
||||
EXTRA_DIST = $(COMMON_HEADER_FILES) common/sid_tables.py
|
||||
include Makefile.addrlib.am
|
||||
include Makefile.common.am
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(COMMON_HEADER_FILES) \
|
||||
common/sid_tables.py \
|
||||
meson.build \
|
||||
addrlib/meson.build \
|
||||
common/meson.build \
|
||||
vulkan/meson.build
|
||||
|
@@ -58,8 +58,13 @@ common_libamd_common_la_SOURCES = \
|
||||
$(AMD_COMMON_FILES) \
|
||||
$(AMD_COMPILER_FILES) \
|
||||
$(AMD_DEBUG_FILES) \
|
||||
$(AMD_GENERATED_FILES) \
|
||||
$(AMD_NIR_FILES)
|
||||
$(AMD_GENERATED_FILES)
|
||||
|
||||
# nir_to_llvm requires LLVM 3.9, which is only required as a minimum when
|
||||
# radv is built.
|
||||
if HAVE_RADEON_VULKAN
|
||||
common_libamd_common_la_SOURCES += $(AMD_NIR_FILES)
|
||||
endif
|
||||
endif
|
||||
|
||||
common_libamd_common_la_LIBADD = $(LIBELF_LIBS)
|
||||
|
@@ -1,14 +1,15 @@
|
||||
COMMON_HEADER_FILES = \
|
||||
common/gfx9d.h \
|
||||
common/sid.h \
|
||||
common/r600d_common.h \
|
||||
common/amd_family.h \
|
||||
common/amd_kernel_code_t.h
|
||||
common/amd_kernel_code_t.h \
|
||||
common/amdgpu_id.h
|
||||
|
||||
ADDRLIB_FILES = \
|
||||
addrlib/addrinterface.cpp \
|
||||
addrlib/addrinterface.h \
|
||||
addrlib/addrtypes.h \
|
||||
addrlib/amdgpu_asic_addr.h \
|
||||
addrlib/core/addrcommon.h \
|
||||
addrlib/core/addrelemlib.cpp \
|
||||
addrlib/core/addrelemlib.h \
|
||||
@@ -25,8 +26,11 @@ ADDRLIB_FILES = \
|
||||
addrlib/gfx9/coord.h \
|
||||
addrlib/gfx9/gfx9addrlib.cpp \
|
||||
addrlib/gfx9/gfx9addrlib.h \
|
||||
addrlib/gfx9/rbmap.cpp \
|
||||
addrlib/gfx9/rbmap.h \
|
||||
addrlib/inc/chip/gfx9/gfx9_gb_reg.h \
|
||||
addrlib/inc/chip/r800/si_gb_reg.h \
|
||||
addrlib/inc/lnx_common_defs.h \
|
||||
addrlib/r800/chip/si_ci_vi_merged_enum.h \
|
||||
addrlib/r800/ciaddrlib.cpp \
|
||||
addrlib/r800/ciaddrlib.h \
|
||||
@@ -44,12 +48,8 @@ AMD_COMPILER_FILES = \
|
||||
common/ac_llvm_helper.cpp \
|
||||
common/ac_llvm_util.c \
|
||||
common/ac_llvm_util.h \
|
||||
common/ac_shader_abi.h \
|
||||
common/ac_shader_info.c \
|
||||
common/ac_shader_info.h \
|
||||
common/ac_shader_util.c \
|
||||
common/ac_shader_util.h
|
||||
|
||||
common/ac_shader_info.h
|
||||
|
||||
AMD_NIR_FILES = \
|
||||
common/ac_nir_to_llvm.c \
|
||||
|
@@ -534,11 +534,11 @@ ADDR_E_RETURNCODE ADDR_API AddrComputeDccInfo(
|
||||
|
||||
if (pLib != NULL)
|
||||
{
|
||||
returnCode = pLib->ComputeDccInfo(pIn, pOut);
|
||||
returnCode = pLib->ComputeDccInfo(pIn, pOut);
|
||||
}
|
||||
else
|
||||
{
|
||||
returnCode = ADDR_ERROR;
|
||||
returnCode = ADDR_ERROR;
|
||||
}
|
||||
|
||||
return returnCode;
|
||||
@@ -1675,37 +1675,3 @@ ADDR_E_RETURNCODE ADDR_API Addr2GetPreferredSurfaceSetting(
|
||||
return returnCode;
|
||||
}
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* Addr2IsValidDisplaySwizzleMode
|
||||
*
|
||||
* @brief
|
||||
* Return whether the swizzle mode is supported by DCE / DCN.
|
||||
****************************************************************************************************
|
||||
*/
|
||||
ADDR_E_RETURNCODE ADDR_API Addr2IsValidDisplaySwizzleMode(
|
||||
ADDR_HANDLE hLib,
|
||||
AddrSwizzleMode swizzleMode,
|
||||
UINT_32 bpp,
|
||||
bool *result)
|
||||
{
|
||||
ADDR_E_RETURNCODE returnCode;
|
||||
|
||||
V2::Lib* pLib = V2::Lib::GetLib(hLib);
|
||||
|
||||
if (pLib != NULL)
|
||||
{
|
||||
ADDR2_COMPUTE_SURFACE_INFO_INPUT in;
|
||||
in.swizzleMode = swizzleMode;
|
||||
in.bpp = bpp;
|
||||
|
||||
*result = pLib->IsValidDisplaySwizzleMode(&in);
|
||||
returnCode = ADDR_OK;
|
||||
}
|
||||
else
|
||||
{
|
||||
returnCode = ADDR_ERROR;
|
||||
}
|
||||
|
||||
return returnCode;
|
||||
}
|
||||
|
@@ -528,7 +528,7 @@ typedef union _ADDR_SURFACE_FLAGS
|
||||
UINT_32 preferEquation : 1; ///< Return equation index without adjusting tile mode
|
||||
UINT_32 matchStencilTileCfg : 1; ///< Select tile index of stencil as well as depth surface
|
||||
/// to make sure they share same tile config parameters
|
||||
UINT_32 reserved : 2; ///< Reserved bits
|
||||
UINT_32 reserved : 3; ///< Reserved bits
|
||||
};
|
||||
|
||||
UINT_32 value;
|
||||
@@ -714,6 +714,12 @@ typedef struct _ADDR_COMPUTE_SURFACE_ADDRFROMCOORD_INPUT
|
||||
};
|
||||
UINT_32 tileSwizzle; ///< Combined swizzle, if useCombinedSwizzle is TRUE
|
||||
};
|
||||
|
||||
#if ADDR_AM_BUILD // These two fields are not valid in SW blt since no HTILE access
|
||||
UINT_32 addr5Swizzle; ///< ADDR5_SWIZZLE_MASK of DB_DEPTH_INFO
|
||||
BOOL_32 is32ByteTile; ///< Caller must have access to HTILE buffer and know if
|
||||
/// this tile is compressed to 32B
|
||||
#endif
|
||||
} ADDR_COMPUTE_SURFACE_ADDRFROMCOORD_INPUT;
|
||||
|
||||
/**
|
||||
@@ -851,11 +857,8 @@ typedef union _ADDR_HTILE_FLAGS
|
||||
{
|
||||
struct
|
||||
{
|
||||
UINT_32 tcCompatible : 1; ///< Flag indicates surface needs to be shader readable
|
||||
UINT_32 skipTcCompatSizeAlign : 1; ///< Flag indicates that addrLib will not align htile
|
||||
/// size to 256xBankxPipe when computing tc-compatible
|
||||
/// htile info.
|
||||
UINT_32 reserved : 30; ///< Reserved bits
|
||||
UINT_32 tcCompatible : 1; ///< Flag indicates surface needs to be shader readable
|
||||
UINT_32 reserved :31; ///< Reserved bits
|
||||
};
|
||||
|
||||
UINT_32 value;
|
||||
@@ -912,9 +915,6 @@ typedef struct _ADDR_COMPUTE_HTILE_INFO_OUTPUT
|
||||
UINT_64 sliceSize; ///< Slice size, in bytes.
|
||||
BOOL_32 sliceInterleaved; ///< Flag to indicate if different slice's htile is interleaved
|
||||
/// Compute engine clear can't be used if htile is interleaved
|
||||
BOOL_32 nextMipLevelCompressible; ///< Flag to indicate whether HTILE can be enabled in
|
||||
/// next mip level, it also indicates if memory set based
|
||||
/// fast clear can be used for current mip level.
|
||||
} ADDR_COMPUTE_HTILE_INFO_OUTPUT;
|
||||
|
||||
/**
|
||||
@@ -2188,6 +2188,7 @@ ADDR_E_RETURNCODE ADDR_API AddrGetTileIndex(
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* ADDR_PRT_INFO_INPUT
|
||||
@@ -2232,8 +2233,6 @@ ADDR_E_RETURNCODE ADDR_API AddrComputePrtInfo(
|
||||
const ADDR_PRT_INFO_INPUT* pIn,
|
||||
ADDR_PRT_INFO_OUTPUT* pOut);
|
||||
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// DCC key functions
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -2294,8 +2293,6 @@ ADDR_E_RETURNCODE ADDR_API AddrComputeDccInfo(
|
||||
const ADDR_COMPUTE_DCCINFO_INPUT* pIn,
|
||||
ADDR_COMPUTE_DCCINFO_OUTPUT* pOut);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* ADDR_GET_MAX_ALIGNMENTS_OUTPUT
|
||||
@@ -2696,8 +2693,10 @@ typedef struct _ADDR2_META_MIP_INFO
|
||||
|
||||
struct
|
||||
{
|
||||
UINT_32 offset;
|
||||
UINT_32 sliceSize;
|
||||
UINT_32 offset; ///< metadata offset within one slice,
|
||||
/// the thickness of a slice is meta block depth.
|
||||
UINT_32 sliceSize; ///< metadata size within one slice,
|
||||
/// the thickness of a slice is meta block depth.
|
||||
};
|
||||
};
|
||||
} ADDR2_META_MIP_INFO;
|
||||
@@ -2721,7 +2720,9 @@ typedef struct _ADDR2_COMPUTE_HTILE_INFO_INPUT
|
||||
UINT_32 unalignedHeight; ///< Depth surface original height (of mip0)
|
||||
UINT_32 numSlices; ///< Number of slices of depth surface (of mip0)
|
||||
UINT_32 numMipLevels; ///< Total mipmap levels of color surface
|
||||
UINT_32 firstMipIdInTail;
|
||||
UINT_32 firstMipIdInTail; ///< id of the first mip in tail,
|
||||
/// if no mip is in tail, it should be set to
|
||||
/// number of mip levels
|
||||
} ADDR2_COMPUTE_HTILE_INFO_INPUT;
|
||||
|
||||
/**
|
||||
@@ -3307,7 +3308,8 @@ typedef struct _ADDR2_COMPUTE_DCCINFO_INPUT
|
||||
UINT_32 numMipLevels; ///< Total mipmap levels of color surface
|
||||
UINT_32 dataSurfaceSize; ///< The padded size of all slices and mip levels
|
||||
///< useful in meta linear case
|
||||
UINT_32 firstMipIdInTail;
|
||||
UINT_32 firstMipIdInTail; ///< The id of first mip in tail, if no mip is in tail,
|
||||
/// it should be number of mip levels
|
||||
} ADDR2_COMPUTE_DCCINFO_INPUT;
|
||||
|
||||
/**
|
||||
@@ -3337,13 +3339,8 @@ typedef struct _ADDR2_COMPUTE_DCCINFO_OUTPUT
|
||||
UINT_32 metaBlkHeight; ///< DCC meta block height
|
||||
UINT_32 metaBlkDepth; ///< DCC meta block depth
|
||||
|
||||
UINT_32 metaBlkNumPerSlice; ///< Number of metablock within one slice
|
||||
|
||||
union
|
||||
{
|
||||
UINT_32 fastClearSizePerSlice; ///< Size of DCC within a slice should be fast cleared
|
||||
UINT_32 dccRamSliceSize;
|
||||
};
|
||||
UINT_32 fastClearSizePerSlice; ///< Size of DCC within a slice should be fast cleared
|
||||
UINT_32 metaBlkNumPerSlice; ///< Number of metablock within one slice
|
||||
|
||||
ADDR2_META_MIP_INFO* pMipInfo; ///< DCC mip information
|
||||
} ADDR2_COMPUTE_DCCINFO_OUTPUT;
|
||||
@@ -3574,7 +3571,7 @@ ADDR_E_RETURNCODE ADDR_API Addr2ComputeSubResourceOffsetForSwizzlePattern(
|
||||
* ADDR2_BLOCK_SET
|
||||
*
|
||||
* @brief
|
||||
* Bit field that defines block type
|
||||
* Bit field that define block type
|
||||
****************************************************************************************************
|
||||
*/
|
||||
typedef union _ADDR2_BLOCK_SET
|
||||
@@ -3592,28 +3589,6 @@ typedef union _ADDR2_BLOCK_SET
|
||||
UINT_32 value;
|
||||
} ADDR2_BLOCK_SET;
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* ADDR2_SWTYPE_SET
|
||||
*
|
||||
* @brief
|
||||
* Bit field that defines swizzle type
|
||||
****************************************************************************************************
|
||||
*/
|
||||
typedef union _ADDR2_SWTYPE_SET
|
||||
{
|
||||
struct
|
||||
{
|
||||
UINT_32 sw_Z : 1; // SW_*_Z_*
|
||||
UINT_32 sw_S : 1; // SW_*_S_*
|
||||
UINT_32 sw_D : 1; // SW_*_D_*
|
||||
UINT_32 sw_R : 1; // SW_*_R_*
|
||||
UINT_32 reserved : 28;
|
||||
};
|
||||
|
||||
UINT_32 value;
|
||||
} ADDR2_SWTYPE_SET;
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* ADDR2_GET_PREFERRED_SURF_SETTING_INPUT
|
||||
@@ -3632,7 +3607,6 @@ typedef struct _ADDR2_GET_PREFERRED_SURF_SETTING_INPUT
|
||||
AddrResrouceLocation resourceLoction; ///< Surface heap choice
|
||||
ADDR2_BLOCK_SET forbiddenBlock; ///< Client can use it to disable some block setting
|
||||
///< such as linear for DXTn, tiled for YUV
|
||||
ADDR2_SWTYPE_SET preferredSwSet; ///< Client can use it to specify sw type(s) wanted
|
||||
BOOL_32 noXor; ///< Do not use xor mode for this resource
|
||||
UINT_32 bpp; ///< bits per pixel
|
||||
UINT_32 width; ///< Width (of mip0), in pixels
|
||||
@@ -3658,15 +3632,12 @@ typedef struct _ADDR2_GET_PREFERRED_SURF_SETTING_INPUT
|
||||
*/
|
||||
typedef struct _ADDR2_GET_PREFERRED_SURF_SETTING_OUTPUT
|
||||
{
|
||||
UINT_32 size; ///< Size of this structure in bytes
|
||||
UINT_32 size; ///< Size of this structure in bytes
|
||||
|
||||
AddrSwizzleMode swizzleMode; ///< Suggested swizzle mode to be used
|
||||
AddrResourceType resourceType; ///< Suggested resource type to program HW
|
||||
ADDR2_BLOCK_SET validBlockSet; ///< Valid block type bit conbination
|
||||
BOOL_32 canXor; ///< If client can use xor on a valid macro block
|
||||
/// type
|
||||
ADDR2_SWTYPE_SET validSwTypeSet; ///< Valid swizzle type bit combination
|
||||
ADDR2_SWTYPE_SET clientPreferredSwSet; ///< Client-preferred swizzle type bit combination
|
||||
AddrSwizzleMode swizzleMode; ///< Suggested swizzle mode to be used
|
||||
AddrResourceType resourceType; ///< Suggested resource type to program HW
|
||||
ADDR2_BLOCK_SET validBlockSet; ///< Valid block type bit conbination
|
||||
BOOL_32 canXor; ///< If client can use xor on a valid macro block type
|
||||
} ADDR2_GET_PREFERRED_SURF_SETTING_OUTPUT;
|
||||
|
||||
/**
|
||||
@@ -3682,20 +3653,6 @@ ADDR_E_RETURNCODE ADDR_API Addr2GetPreferredSurfaceSetting(
|
||||
const ADDR2_GET_PREFERRED_SURF_SETTING_INPUT* pIn,
|
||||
ADDR2_GET_PREFERRED_SURF_SETTING_OUTPUT* pOut);
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* Addr2IsValidDisplaySwizzleMode
|
||||
*
|
||||
* @brief
|
||||
* Return whether the swizzle mode is supported by DCE / DCN.
|
||||
****************************************************************************************************
|
||||
*/
|
||||
ADDR_E_RETURNCODE ADDR_API Addr2IsValidDisplaySwizzleMode(
|
||||
ADDR_HANDLE hLib,
|
||||
AddrSwizzleMode swizzleMode,
|
||||
UINT_32 bpp,
|
||||
bool *result);
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
@@ -1,129 +0,0 @@
|
||||
/*
|
||||
* Copyright © 2017 Advanced Micro Devices, Inc.
|
||||
* All Rights Reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining
|
||||
* a copy of this software and associated documentation files (the
|
||||
* "Software"), to deal in the Software without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, sub license, and/or sell copies of the Software, and to
|
||||
* permit persons to whom the Software is furnished to do so, subject to
|
||||
* the following conditions:
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS, AUTHORS
|
||||
* AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
* USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the
|
||||
* next paragraph) shall be included in all copies or substantial portions
|
||||
* of the Software.
|
||||
*/
|
||||
|
||||
#ifndef _AMDGPU_ASIC_ADDR_H
|
||||
#define _AMDGPU_ASIC_ADDR_H
|
||||
|
||||
#define ATI_VENDOR_ID 0x1002
|
||||
#define AMD_VENDOR_ID 0x1022
|
||||
|
||||
// AMDGPU_VENDOR_IS_AMD(vendorId)
|
||||
#define AMDGPU_VENDOR_IS_AMD(v) ((v == ATI_VENDOR_ID) || (v == AMD_VENDOR_ID))
|
||||
|
||||
#define FAMILY_UNKNOWN 0x00
|
||||
#define FAMILY_TN 0x69
|
||||
#define FAMILY_SI 0x6E
|
||||
#define FAMILY_CI 0x78
|
||||
#define FAMILY_KV 0x7D
|
||||
#define FAMILY_VI 0x82
|
||||
#define FAMILY_POLARIS 0x82
|
||||
#define FAMILY_CZ 0x87
|
||||
#define FAMILY_AI 0x8D
|
||||
#define FAMILY_RV 0x8E
|
||||
|
||||
// AMDGPU_FAMILY_IS(familyId, familyName)
|
||||
#define FAMILY_IS(f, fn) (f == FAMILY_##fn)
|
||||
#define FAMILY_IS_TN(f) FAMILY_IS(f, TN)
|
||||
#define FAMILY_IS_SI(f) FAMILY_IS(f, SI)
|
||||
#define FAMILY_IS_CI(f) FAMILY_IS(f, CI)
|
||||
#define FAMILY_IS_KV(f) FAMILY_IS(f, KV)
|
||||
#define FAMILY_IS_VI(f) FAMILY_IS(f, VI)
|
||||
#define FAMILY_IS_POLARIS(f) FAMILY_IS(f, POLARIS)
|
||||
#define FAMILY_IS_CZ(f) FAMILY_IS(f, CZ)
|
||||
#define FAMILY_IS_AI(f) FAMILY_IS(f, AI)
|
||||
#define FAMILY_IS_RV(f) FAMILY_IS(f, RV)
|
||||
|
||||
#define AMDGPU_UNKNOWN 0xFF
|
||||
|
||||
#define AMDGPU_TAHITI_RANGE 0x05, 0x14
|
||||
#define AMDGPU_PITCAIRN_RANGE 0x15, 0x28
|
||||
#define AMDGPU_CAPEVERDE_RANGE 0x29, 0x3C
|
||||
#define AMDGPU_OLAND_RANGE 0x3C, 0x46
|
||||
#define AMDGPU_HAINAN_RANGE 0x46, 0xFF
|
||||
|
||||
#define AMDGPU_BONAIRE_RANGE 0x14, 0x28
|
||||
#define AMDGPU_HAWAII_RANGE 0x28, 0x3C
|
||||
|
||||
#define AMDGPU_SPECTRE_RANGE 0x01, 0x41
|
||||
#define AMDGPU_SPOOKY_RANGE 0x41, 0x81
|
||||
#define AMDGPU_KALINDI_RANGE 0x81, 0xA1
|
||||
#define AMDGPU_GODAVARI_RANGE 0xA1, 0xFF
|
||||
|
||||
#define AMDGPU_ICELAND_RANGE 0x01, 0x14
|
||||
#define AMDGPU_TONGA_RANGE 0x14, 0x28
|
||||
#define AMDGPU_FIJI_RANGE 0x3C, 0x50
|
||||
|
||||
#define AMDGPU_POLARIS10_RANGE 0x50, 0x5A
|
||||
#define AMDGPU_POLARIS11_RANGE 0x5A, 0x64
|
||||
#define AMDGPU_POLARIS12_RANGE 0x64, 0x6E
|
||||
|
||||
#define AMDGPU_CARRIZO_RANGE 0x01, 0x21
|
||||
#define AMDGPU_BRISTOL_RANGE 0x10, 0x21
|
||||
#define AMDGPU_STONEY_RANGE 0x61, 0xFF
|
||||
|
||||
#define AMDGPU_VEGA10_RANGE 0x01, 0x14
|
||||
|
||||
#define AMDGPU_RAVEN_RANGE 0x01, 0x81
|
||||
|
||||
#define AMDGPU_EXPAND_FIX(x) x
|
||||
#define AMDGPU_RANGE_HELPER(val, min, max) ((val >= min) && (val < max))
|
||||
#define AMDGPU_IN_RANGE(val, ...) AMDGPU_EXPAND_FIX(AMDGPU_RANGE_HELPER(val, __VA_ARGS__))
|
||||
|
||||
|
||||
// ASICREV_IS(eRevisionId, revisionName)
|
||||
#define ASICREV_IS(r, rn) AMDGPU_IN_RANGE(r, AMDGPU_##rn##_RANGE)
|
||||
#define ASICREV_IS_TAHITI_P(r) ASICREV_IS(r, TAHITI)
|
||||
#define ASICREV_IS_PITCAIRN_PM(r) ASICREV_IS(r, PITCAIRN)
|
||||
#define ASICREV_IS_CAPEVERDE_M(r) ASICREV_IS(r, CAPEVERDE)
|
||||
#define ASICREV_IS_OLAND_M(r) ASICREV_IS(r, OLAND)
|
||||
#define ASICREV_IS_HAINAN_V(r) ASICREV_IS(r, HAINAN)
|
||||
|
||||
#define ASICREV_IS_BONAIRE_M(r) ASICREV_IS(r, BONAIRE)
|
||||
#define ASICREV_IS_HAWAII_P(r) ASICREV_IS(r, HAWAII)
|
||||
|
||||
#define ASICREV_IS_SPECTRE(r) ASICREV_IS(r, SPECTRE)
|
||||
#define ASICREV_IS_SPOOKY(r) ASICREV_IS(r, SPOOKY)
|
||||
#define ASICREV_IS_KALINDI(r) ASICREV_IS(r, KALINDI)
|
||||
#define ASICREV_IS_KALINDI_GODAVARI(r) ASICREV_IS(r, GODAVARI)
|
||||
|
||||
#define ASICREV_IS_ICELAND_M(r) ASICREV_IS(r, ICELAND)
|
||||
#define ASICREV_IS_TONGA_P(r) ASICREV_IS(r, TONGA)
|
||||
#define ASICREV_IS_FIJI_P(r) ASICREV_IS(r, FIJI)
|
||||
|
||||
#define ASICREV_IS_POLARIS10_P(r) ASICREV_IS(r, POLARIS10)
|
||||
#define ASICREV_IS_POLARIS11_M(r) ASICREV_IS(r, POLARIS11)
|
||||
#define ASICREV_IS_POLARIS12_V(r) ASICREV_IS(r, POLARIS12)
|
||||
|
||||
#define ASICREV_IS_CARRIZO(r) ASICREV_IS(r, CARRIZO)
|
||||
#define ASICREV_IS_CARRIZO_BRISTOL(r) ASICREV_IS(r, BRISTOL)
|
||||
#define ASICREV_IS_STONEY(r) ASICREV_IS(r, STONEY)
|
||||
|
||||
#define ASICREV_IS_VEGA10_M(r) ASICREV_IS(r, VEGA10)
|
||||
#define ASICREV_IS_VEGA10_P(r) ASICREV_IS(r, VEGA10)
|
||||
|
||||
#define ASICREV_IS_RAVEN(r) ASICREV_IS(r, RAVEN)
|
||||
|
||||
#endif // _AMDGPU_ASIC_ADDR_H
|
@@ -36,16 +36,14 @@
|
||||
|
||||
#include "addrinterface.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <assert.h>
|
||||
|
||||
#if !defined(DEBUG)
|
||||
#ifdef NDEBUG
|
||||
#define DEBUG 0
|
||||
#else
|
||||
#define DEBUG 1
|
||||
#endif
|
||||
// ADDR_LNX_KERNEL_BUILD is for internal build
|
||||
// Moved from addrinterface.h so __KERNEL__ is not needed any more
|
||||
#if ADDR_LNX_KERNEL_BUILD // || (defined(__GNUC__) && defined(__KERNEL__))
|
||||
#include "lnx_common_defs.h" // ported from cmmqs
|
||||
#elif !defined(__APPLE__) || defined(HAVE_TSERVER)
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#endif
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -53,7 +51,7 @@
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
#if DEBUG
|
||||
#if defined(__GNUC__)
|
||||
#define ADDR_DBG_BREAK() assert(false)
|
||||
#define ADDR_DBG_BREAK()
|
||||
#elif defined(__APPLE__)
|
||||
#define ADDR_DBG_BREAK() { IOPanic("");}
|
||||
#else
|
||||
@@ -73,10 +71,21 @@
|
||||
#define ADDR_ANALYSIS_ASSUME(expr) do { (void)(expr); } while (0)
|
||||
#endif
|
||||
|
||||
#define ADDR_ASSERT(__e) assert(__e)
|
||||
#define ADDR_ASSERT_ALWAYS() ADDR_DBG_BREAK()
|
||||
#define ADDR_UNHANDLED_CASE() ADDR_ASSERT(!"Unhandled case")
|
||||
#define ADDR_NOT_IMPLEMENTED() ADDR_ASSERT(!"Not implemented");
|
||||
#if DEBUG
|
||||
#define ADDR_ASSERT(__e) \
|
||||
do { \
|
||||
ADDR_ANALYSIS_ASSUME(__e); \
|
||||
if ( !((__e) ? TRUE : FALSE)) { ADDR_DBG_BREAK(); } \
|
||||
} while (0)
|
||||
#define ADDR_ASSERT_ALWAYS() ADDR_DBG_BREAK()
|
||||
#define ADDR_UNHANDLED_CASE() ADDR_ASSERT(!"Unhandled case")
|
||||
#define ADDR_NOT_IMPLEMENTED() ADDR_ASSERT(!"Not implemented");
|
||||
#else //DEBUG
|
||||
#define ADDR_ASSERT(__e) ADDR_ANALYSIS_ASSUME(__e)
|
||||
#define ADDR_ASSERT_ALWAYS()
|
||||
#define ADDR_UNHANDLED_CASE()
|
||||
#define ADDR_NOT_IMPLEMENTED()
|
||||
#endif //DEBUG
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -154,8 +163,6 @@
|
||||
#endif // DEBUG
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define ADDR_C_ASSERT(__e) typedef char __ADDR_C_ASSERT__[(__e) ? 1 : -1]
|
||||
|
||||
namespace Addr
|
||||
{
|
||||
|
||||
|
@@ -1271,9 +1271,6 @@ VOID ElemLib::RestoreSurfaceInfo(
|
||||
UINT_32 height;
|
||||
UINT_32 bpp;
|
||||
|
||||
BOOL_32 bBCnFormat = FALSE;
|
||||
(void)bBCnFormat;
|
||||
|
||||
ADDR_ASSERT(pBpp != NULL);
|
||||
ADDR_ASSERT(pWidth != NULL && pHeight != NULL);
|
||||
|
||||
@@ -1292,17 +1289,22 @@ VOID ElemLib::RestoreSurfaceInfo(
|
||||
break;
|
||||
case ADDR_PACKED_GBGR:
|
||||
case ADDR_PACKED_BGRG:
|
||||
originalBits = bpp; // 32-bit packed ==> 2 32-bit result
|
||||
if (m_pAddrLib->GetChipFamily() >= ADDR_CHIP_FAMILY_AI)
|
||||
{
|
||||
originalBits = bpp / expandX;
|
||||
}
|
||||
else
|
||||
{
|
||||
originalBits = bpp; // 32-bit packed ==> 2 32-bit result
|
||||
}
|
||||
break;
|
||||
case ADDR_PACKED_BC1: // Fall through
|
||||
case ADDR_PACKED_BC4:
|
||||
originalBits = 64;
|
||||
bBCnFormat = TRUE;
|
||||
break;
|
||||
case ADDR_PACKED_BC2: // Fall through
|
||||
case ADDR_PACKED_BC3: // Fall through
|
||||
case ADDR_PACKED_BC5:
|
||||
bBCnFormat = TRUE;
|
||||
// fall through
|
||||
case ADDR_PACKED_ASTC:
|
||||
case ADDR_PACKED_ETC2_128BPP:
|
||||
@@ -1392,11 +1394,27 @@ UINT_32 ElemLib::GetBitsPerPixel(
|
||||
break;
|
||||
case ADDR_FMT_GB_GR: // treat as FMT_8_8
|
||||
elemMode = ADDR_PACKED_GBGR;
|
||||
bpp = 16;
|
||||
if (m_pAddrLib->GetChipFamily() >= ADDR_CHIP_FAMILY_AI)
|
||||
{
|
||||
bpp = 32;
|
||||
expandX = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
bpp = 16;
|
||||
}
|
||||
break;
|
||||
case ADDR_FMT_BG_RG: // treat as FMT_8_8
|
||||
elemMode = ADDR_PACKED_BGRG;
|
||||
bpp = 16;
|
||||
if (m_pAddrLib->GetChipFamily() >= ADDR_CHIP_FAMILY_AI)
|
||||
{
|
||||
bpp = 32;
|
||||
expandX = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
bpp = 16;
|
||||
}
|
||||
break;
|
||||
case ADDR_FMT_8_8_8_8:
|
||||
case ADDR_FMT_2_10_10_10:
|
||||
|
@@ -218,16 +218,7 @@ ADDR_E_RETURNCODE Lib::Create(
|
||||
}
|
||||
break;
|
||||
case CIASICIDGFXENGINE_ARCTICISLAND:
|
||||
switch (pCreateIn->chipFamily)
|
||||
{
|
||||
case FAMILY_AI:
|
||||
case FAMILY_RV:
|
||||
pLib = Gfx9HwlInit(&client);
|
||||
break;
|
||||
default:
|
||||
ADDR_ASSERT_ALWAYS();
|
||||
break;
|
||||
}
|
||||
pLib = Gfx9HwlInit(&client);
|
||||
break;
|
||||
default:
|
||||
ADDR_ASSERT_ALWAYS();
|
||||
|
@@ -38,7 +38,11 @@
|
||||
#include "addrobject.h"
|
||||
#include "addrelemlib.h"
|
||||
|
||||
#include "amdgpu_asic_addr.h"
|
||||
#if BRAHMA_BUILD
|
||||
#include "amdgpu_id.h"
|
||||
#else
|
||||
#include "atiid.h"
|
||||
#endif
|
||||
|
||||
#ifndef CIASICIDGFXENGINE_R600
|
||||
#define CIASICIDGFXENGINE_R600 0x00000006
|
||||
@@ -122,123 +126,6 @@ enum BankSwapSize
|
||||
ADDR_BANKSWAP_1KB = 1024,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define max compressed fragments config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum NumMaxCompressedFragmentsConfig
|
||||
{
|
||||
ADDR_CONFIG_1_MAX_COMPRESSED_FRAGMENTS = 0x00000000,
|
||||
ADDR_CONFIG_2_MAX_COMPRESSED_FRAGMENTS = 0x00000001,
|
||||
ADDR_CONFIG_4_MAX_COMPRESSED_FRAGMENTS = 0x00000002,
|
||||
ADDR_CONFIG_8_MAX_COMPRESSED_FRAGMENTS = 0x00000003,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define num pipes config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum NumPipesConfig
|
||||
{
|
||||
ADDR_CONFIG_1_PIPE = 0x00000000,
|
||||
ADDR_CONFIG_2_PIPE = 0x00000001,
|
||||
ADDR_CONFIG_4_PIPE = 0x00000002,
|
||||
ADDR_CONFIG_8_PIPE = 0x00000003,
|
||||
ADDR_CONFIG_16_PIPE = 0x00000004,
|
||||
ADDR_CONFIG_32_PIPE = 0x00000005,
|
||||
ADDR_CONFIG_64_PIPE = 0x00000006,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define num banks config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum NumBanksConfig
|
||||
{
|
||||
ADDR_CONFIG_1_BANK = 0x00000000,
|
||||
ADDR_CONFIG_2_BANK = 0x00000001,
|
||||
ADDR_CONFIG_4_BANK = 0x00000002,
|
||||
ADDR_CONFIG_8_BANK = 0x00000003,
|
||||
ADDR_CONFIG_16_BANK = 0x00000004,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define num rb per shader engine config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum NumRbPerShaderEngineConfig
|
||||
{
|
||||
ADDR_CONFIG_1_RB_PER_SHADER_ENGINE = 0x00000000,
|
||||
ADDR_CONFIG_2_RB_PER_SHADER_ENGINE = 0x00000001,
|
||||
ADDR_CONFIG_4_RB_PER_SHADER_ENGINE = 0x00000002,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define num shader engines config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum NumShaderEnginesConfig
|
||||
{
|
||||
ADDR_CONFIG_1_SHADER_ENGINE = 0x00000000,
|
||||
ADDR_CONFIG_2_SHADER_ENGINE = 0x00000001,
|
||||
ADDR_CONFIG_4_SHADER_ENGINE = 0x00000002,
|
||||
ADDR_CONFIG_8_SHADER_ENGINE = 0x00000003,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define pipe interleave size config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum PipeInterleaveSizeConfig
|
||||
{
|
||||
ADDR_CONFIG_PIPE_INTERLEAVE_256B = 0x00000000,
|
||||
ADDR_CONFIG_PIPE_INTERLEAVE_512B = 0x00000001,
|
||||
ADDR_CONFIG_PIPE_INTERLEAVE_1KB = 0x00000002,
|
||||
ADDR_CONFIG_PIPE_INTERLEAVE_2KB = 0x00000003,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define row size config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum RowSizeConfig
|
||||
{
|
||||
ADDR_CONFIG_1KB_ROW = 0x00000000,
|
||||
ADDR_CONFIG_2KB_ROW = 0x00000001,
|
||||
ADDR_CONFIG_4KB_ROW = 0x00000002,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define bank interleave size config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum BankInterleaveSizeConfig
|
||||
{
|
||||
ADDR_CONFIG_BANK_INTERLEAVE_1 = 0x00000000,
|
||||
ADDR_CONFIG_BANK_INTERLEAVE_2 = 0x00000001,
|
||||
ADDR_CONFIG_BANK_INTERLEAVE_4 = 0x00000002,
|
||||
ADDR_CONFIG_BANK_INTERLEAVE_8 = 0x00000003,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief Enums that define engine tile size config
|
||||
****************************************************************************************************
|
||||
*/
|
||||
enum ShaderEngineTileSizeConfig
|
||||
{
|
||||
ADDR_CONFIG_SE_TILE_16 = 0x00000000,
|
||||
ADDR_CONFIG_SE_TILE_32 = 0x00000001,
|
||||
};
|
||||
|
||||
/**
|
||||
****************************************************************************************************
|
||||
* @brief This class contains asic independent address lib functionalities
|
||||
|
@@ -1281,54 +1281,36 @@ ADDR_E_RETURNCODE Lib::ComputeHtileInfo(
|
||||
|
||||
if (returnCode == ADDR_OK)
|
||||
{
|
||||
if (pIn->flags.tcCompatible)
|
||||
pOut->bpp = ComputeHtileInfo(pIn->flags,
|
||||
pIn->pitch,
|
||||
pIn->height,
|
||||
pIn->numSlices,
|
||||
pIn->isLinear,
|
||||
isWidth8,
|
||||
isHeight8,
|
||||
pIn->pTileInfo,
|
||||
&pOut->pitch,
|
||||
&pOut->height,
|
||||
&pOut->htileBytes,
|
||||
&pOut->macroWidth,
|
||||
&pOut->macroHeight,
|
||||
&pOut->sliceSize,
|
||||
&pOut->baseAlign);
|
||||
|
||||
if (pIn->flags.tcCompatible && (pIn->numSlices > 1))
|
||||
{
|
||||
const UINT_32 sliceSize = pIn->pitch * pIn->height * 4 / (8 * 8);
|
||||
const UINT_32 align = HwlGetPipes(pIn->pTileInfo) * pIn->pTileInfo->banks * m_pipeInterleaveBytes;
|
||||
pOut->sliceSize = pIn->pitch * pIn->height * 4 / (8 * 8);
|
||||
|
||||
if (pIn->numSlices > 1)
|
||||
const UINT_32 align = HwlGetPipes(pIn->pTileInfo) * pIn->pTileInfo->banks * m_pipeInterleaveBytes;
|
||||
|
||||
if ((pOut->sliceSize % align) == 0)
|
||||
{
|
||||
const UINT_32 surfBytes = (sliceSize * pIn->numSlices);
|
||||
|
||||
pOut->sliceSize = sliceSize;
|
||||
pOut->htileBytes = pIn->flags.skipTcCompatSizeAlign ?
|
||||
surfBytes : PowTwoAlign(surfBytes, align);
|
||||
pOut->sliceInterleaved = ((sliceSize % align) != 0) ? TRUE : FALSE;
|
||||
pOut->sliceInterleaved = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
pOut->sliceSize = pIn->flags.skipTcCompatSizeAlign ?
|
||||
sliceSize : PowTwoAlign(sliceSize, align);
|
||||
pOut->htileBytes = pOut->sliceSize;
|
||||
pOut->sliceInterleaved = FALSE;
|
||||
pOut->sliceInterleaved = TRUE;
|
||||
}
|
||||
|
||||
pOut->nextMipLevelCompressible = ((sliceSize % align) == 0) ? TRUE : FALSE;
|
||||
|
||||
pOut->pitch = pIn->pitch;
|
||||
pOut->height = pIn->height;
|
||||
pOut->baseAlign = align;
|
||||
pOut->macroWidth = 0;
|
||||
pOut->macroHeight = 0;
|
||||
pOut->bpp = 32;
|
||||
}
|
||||
else
|
||||
{
|
||||
pOut->bpp = ComputeHtileInfo(pIn->flags,
|
||||
pIn->pitch,
|
||||
pIn->height,
|
||||
pIn->numSlices,
|
||||
pIn->isLinear,
|
||||
isWidth8,
|
||||
isHeight8,
|
||||
pIn->pTileInfo,
|
||||
&pOut->pitch,
|
||||
&pOut->height,
|
||||
&pOut->htileBytes,
|
||||
&pOut->macroWidth,
|
||||
&pOut->macroHeight,
|
||||
&pOut->sliceSize,
|
||||
&pOut->baseAlign);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2180,8 +2162,6 @@ VOID Lib::HwlComputeXmaskCoordFromAddr(
|
||||
{
|
||||
UINT_32 pipe;
|
||||
UINT_32 numPipes;
|
||||
UINT_32 numGroupBits;
|
||||
(void)numGroupBits;
|
||||
UINT_32 numPipeBits;
|
||||
UINT_32 macroTilePitch;
|
||||
UINT_32 macroTileHeight;
|
||||
@@ -2224,7 +2204,6 @@ VOID Lib::HwlComputeXmaskCoordFromAddr(
|
||||
//
|
||||
// Compute the number of group and pipe bits.
|
||||
//
|
||||
numGroupBits = Log2(m_pipeInterleaveBytes);
|
||||
numPipeBits = Log2(numPipes);
|
||||
|
||||
UINT_32 groupBits = 8 * m_pipeInterleaveBytes;
|
||||
@@ -3525,10 +3504,6 @@ VOID Lib::ComputeMipLevel(
|
||||
ADDR_COMPUTE_SURFACE_INFO_INPUT* pIn ///< [in,out] Input structure
|
||||
) const
|
||||
{
|
||||
// Check if HWL has handled
|
||||
BOOL_32 hwlHandled = FALSE;
|
||||
(void)hwlHandled;
|
||||
|
||||
if (ElemLib::IsBlockCompressed(pIn->format))
|
||||
{
|
||||
if (pIn->mipLevel == 0)
|
||||
@@ -3542,7 +3517,7 @@ VOID Lib::ComputeMipLevel(
|
||||
}
|
||||
}
|
||||
|
||||
hwlHandled = HwlComputeMipLevel(pIn);
|
||||
HwlComputeMipLevel(pIn);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user