sylware / nyanlinux (public) (License: AFFERO GPLv3) (since 2019-09-09) (hash sha1)
scripts for a lean, from scratch, amd hardware, linux distro
List of commits:
Subject Hash Author Date (UTC)
gfx stack update 53b14f9e2383f3c5b24ff5ba47a97295ad778389 Sylvain BERTRAND 2019-11-24 20:50:01
enable mplayer av1 decoding with ffmpeg c77b02db60e924fe8473827903712d6456d0e04b Sylvain BERTRAND 2019-11-19 23:31:12
remove old vulkan loader f6c3134c6c5603ef3c8ca628b0aae6cfe2aa806c Sylvain BERTRAND 2019-11-19 20:24:12
added ffmpeg av1 decoding using dav1d 656ff5ec5cd4f66ad3d26e81ca9fc62a4a24f056 Sylvain BERTRAND 2019-11-19 20:15:06
gfx stack update f504d662bcef4ea5ee49de01a312b2b6eead3a72 Sylvain BERTRAND 2019-11-18 15:56:11
significant gfx stack update 81b1641e4a68d13bdb3207958c1b61f5c9178110 Sylvain BERTRAND 2019-11-12 17:19:01
st with alpha 40c4dd0ba37efa471f371b5ebb2c700791cf2e41 Sylvain BERTRAND 2019-10-29 04:12:09
gfx stack update 2e34313ea063d321682a21a4d1b18b33fd1c08b2 Sylvain BERTRAND 2019-10-28 19:42:48
add a direct into steam startup 2f9f5cdf6cc52bd91252d3320e84a75b51e9ba29 Sylvain BERTRAND 2019-10-27 18:38:37
gfx stack update 7f8dbe3e5666565b1d7dbd593894440dce671843 Sylvain BERTRAND 2019-10-24 23:08:53
alsa 1.1.9 1962471fe6f6cbf49db17de01d37a0eb312c351a Sylvain BERTRAND 2019-10-16 19:48:29
gfx stack update (xserver broken) 24366ffbb58e6ab17e36fd7857d1740ea00e5c3f Sylvain BERTRAND 2019-10-14 22:57:04
gfx stack update 83dc9bfacd6249162046aadbc77c968955fa5036 Sylvain BERTRAND 2019-10-07 20:54:30
add x11 compositing 9308f9158cac1fef16bb64b105e7c9583a55b2b8 Sylvain BERTRAND 2019-10-02 20:48:29
gfx stack update 0fc55d155b358c036a3032d045c78e6f3adab111 Sylvain BERTRAND 2019-09-30 20:46:52
gfx stack update c8c3e4d0abe14e601250bccc72d0cd3423f16805 Sylvain BERTRAND 2019-09-25 21:05:20
gfx stack update 4e84d92d1f9f30dd4c42347e1d92829f4563e1ab Sylvain BERTRAND 2019-09-16 16:54:42
fix openssh nasty bug due to linking to static libressl bddd58feb4ffd205f08430069840f0878775ec75 Sylvain BERTRAND 2019-09-13 23:28:10
update links and enable freetype/fontconfig b51e63a4d6ef5e78789d7246a5f1481ac62b68a0 Sylvain BERTRAND 2019-09-11 02:32:00
update openssh 56c06574ee36175891cd6ac8bca4405324f6dcf9 Sylvain BERTRAND 2019-09-11 01:49:32
Commit 53b14f9e2383f3c5b24ff5ba47a97295ad778389 - gfx stack update
Author: Sylvain BERTRAND
Author date (UTC): 2019-11-24 20:50
Committer name: Sylvain BERTRAND
Committer date (UTC): 2019-11-24 20:50
Parent(s): c77b02db60e924fe8473827903712d6456d0e04b
Signing key:
Tree: 98681a3ccd02e04b1074b0344007077b3a301996
File Lines added Lines deleted
README 1 1
builders/dav1d-0/contrib/x86_64_linux_glibc_gcc.sh 1 0
builders/drm-1/builder.sh 1 1
builders/ffmpeg-1/builder.sh 13 3
builders/llvm-0/builder.sh 1 1
builders/mesa-gl-0/builder.sh 1 1
builders/mesa-gl-0/contrib/compiler_glsl.sh 1 0
builders/mesa-gl-0/contrib/compiler_nir.sh 0 1
builders/mesa-gl-0/contrib/gallium_auxiliary.sh 0 19
builders/mesa-gl-0/contrib/gallium_drivers.sh 1 1
builders/mesa-gl-0/contrib/util.sh 21 1
builders/mesa-vulkan-0/builder.sh 1 1
builders/mesa-vulkan-0/contrib/generators/nir/intrinsics/generic/generic.c 0 31
builders/mesa-vulkan-0/contrib/generators/nir/intrinsics/generic/load.c 46 0
builders/mesa-vulkan-0/contrib/generators/nir/intrinsics/generic/store.c 28 0
builders/mesa-vulkan-0/contrib/generators/nir/nir_database_alu.c 687 82
builders/mesa-vulkan-0/contrib/generators/nir/nir_opcodes_c.c 4 2
builders/mesa-vulkan-0/contrib/x86_64_amdgpu_linux_gnu_vulkan_x11_drm_gcc.sh 8 6
builders/mplayer-0/builder.sh 29 5
builders/xf86-video-amdgpu-1/builder.sh 1 1
builders/xserver-0/builder.sh 1 1
File README changed (mode: 100644) (index 0b63350..6aa180f)
... ... notes:
39 39
40 40 -- --
41 41 Sylvain BERTRAND Sylvain BERTRAND
42 sylvain.bertrand@gmail.com
42 sylvain.bertrand@legeek.net
File builders/dav1d-0/contrib/x86_64_linux_glibc_gcc.sh changed (mode: 100755) (index 886d5f5..da39d69)
... ... fi
42 42 if test "${cc-unset}" = unset; then if test "${cc-unset}" = unset; then
43 43 cc="gcc -pipe -fPIC -O2 -c -static-libgcc \ cc="gcc -pipe -fPIC -O2 -c -static-libgcc \
44 44 -mpreferred-stack-boundary=5 -mincoming-stack-boundary=4 \ -mpreferred-stack-boundary=5 -mincoming-stack-boundary=4 \
45 -fomit-frame-pointer -ffast-math \
45 46 -I/nyan/glibc/current/include-linux" -I/nyan/glibc/current/include-linux"
46 47 fi fi
47 48 #=============================================================================== #===============================================================================
File builders/drm-1/builder.sh changed (mode: 100644) (index f854f6b..30abb08)
1 1 src_name=drm src_name=drm
2 git_commit=0a7ad7df1472a3002cc1baa8e9879350bc59acfa
2 git_commit=9d48895425a2d51287455e2c63517cdacd879953
3 3 git_url0=git://anongit.freedesktop.org/mesa/$src_name git_url0=git://anongit.freedesktop.org/mesa/$src_name
4 4
5 5 slot=1 slot=1
File builders/ffmpeg-1/builder.sh changed (mode: 100644) (index 2cfdf25..3df1019)
1 1 src_name=ffmpeg src_name=ffmpeg
2 git_commit=f897d8c863c54acbe15f3149ca0d6b774fab2cf5
2 git_commit=d65aaf8ea986bb138ca0a6e86825c5ce03b9013a
3 3 git_url0=https://git.ffmpeg.org/$src_name.git git_url0=https://git.ffmpeg.org/$src_name.git
4 4
5 5 pkg_dir=$pkgs_dir_root/$pkg_name pkg_dir=$pkgs_dir_root/$pkg_name
 
... ... git reset --hard
17 17 # libunistring) for native build, switch to manual detection # libunistring) for native build, switch to manual detection
18 18 sed -i -e '/^enabled gnutls/ c\enabled gnutls && require gnutls gnutls/gnutls.h gnutls_global_init -lgnutls -lidn2 -lhogweed -lnettle -lgmp -ltasn1 -lunistring' ./configure sed -i -e '/^enabled gnutls/ c\enabled gnutls && require gnutls gnutls/gnutls.h gnutls_global_init -lgnutls -lidn2 -lhogweed -lnettle -lgmp -ltasn1 -lunistring' ./configure
19 19
20 # force libdav1d
21 sed -i -e '/^enabled libdav1d/ c\enabled libdav1d' ./configure
22
20 23 # opus is not supported as a static lib, switch to manual detection # opus is not supported as a static lib, switch to manual detection
21 24 sed -i -e '/require_pkg_config libopus opus opus_multistream.h opus_multistream_surround_encoder_create/ c\ require libopus opus_multistream.h opus_multistream_surround_encoder_create -lopus -lm' ./configure sed -i -e '/require_pkg_config libopus opus opus_multistream.h opus_multistream_surround_encoder_create/ c\ require libopus opus_multistream.h opus_multistream_surround_encoder_create -lopus -lm' ./configure
22 25 sed -i -e '/require_pkg_config libopus opus opus_multistream.h opus_multistream_decoder_create/ c\ require libopus opus_multistream.h opus_multistream_decoder_create -lopus -lm' ./configure sed -i -e '/require_pkg_config libopus opus opus_multistream.h opus_multistream_decoder_create/ c\ require libopus opus_multistream.h opus_multistream_decoder_create -lopus -lm' ./configure
 
... ... export "LD_LIBRARY_PATH=\
52 55 /nyan/fontconfig/current/lib:\ /nyan/fontconfig/current/lib:\
53 56 /nyan/freetype/current/lib:\ /nyan/freetype/current/lib:\
54 57 /nyan/libpng/current/lib:\ /nyan/libpng/current/lib:\
58 /nyan/dav1d/current/lib:\
55 59 $LD_LIBRARY_PATH" $LD_LIBRARY_PATH"
56 60
57 61 $pkg_dir/configure \ $pkg_dir/configure \
 
... ... $pkg_dir/configure \
62 66 -I/nyan/libtasn1/current/include \ -I/nyan/libtasn1/current/include \
63 67 -I/nyan/nettle/current/include \ -I/nyan/nettle/current/include \
64 68 -I/nyan/gnutls/current/include \ -I/nyan/gnutls/current/include \
69 -I/nyan/dav1d/current/include \
65 70 -O2 -pipe -fPIC" \ -O2 -pipe -fPIC" \
66 71 "--extra-ldflags=\ "--extra-ldflags=\
67 72 -B/nyan/glibc/current/lib -L/nyan/glibc/current/lib -static-libgcc \ -B/nyan/glibc/current/lib -L/nyan/glibc/current/lib -static-libgcc \
68 73 -Wl,-rpath-link,\ -Wl,-rpath-link,\
69 74 /nyan/glibc/current/lib:\ /nyan/glibc/current/lib:\
70 75 /nyan/libpng/current/lib:\ /nyan/libpng/current/lib:\
71 /nyan/libXau/current/lib \
76 /nyan/libXau/current/lib:\
77 /nyan/dav1d/current/lib \
72 78 \ \
73 79 -L/nyan/libvpx/current/lib \ -L/nyan/libvpx/current/lib \
74 80 -L/nyan/opus/current/lib \ -L/nyan/opus/current/lib \
 
... ... $pkg_dir/configure \
77 83 -L/nyan/nettle/current/lib \ -L/nyan/nettle/current/lib \
78 84 -L/nyan/libtasn1/current/lib \ -L/nyan/libtasn1/current/lib \
79 85 -L/nyan/libidn2/current/lib \ -L/nyan/libidn2/current/lib \
80 -L/nyan/gnutls/current/lib" \
86 -L/nyan/gnutls/current/lib \
87 -L/nyan/dav1d/current/lib" \
88 "--extra-libs=\
89 -ldav1d" \
81 90 --enable-pic \ --enable-pic \
82 91 --prefix=/nyan/ffmpeg/1 \ --prefix=/nyan/ffmpeg/1 \
83 92 --enable-error-resilience \ --enable-error-resilience \
 
... ... $pkg_dir/configure \
94 103 --disable-podpages \ --disable-podpages \
95 104 --disable-txtpages \ --disable-txtpages \
96 105 --enable-gmp \ --enable-gmp \
106 --enable-libdav1d \
97 107 --enable-gnutls \ --enable-gnutls \
98 108 --enable-libass \ --enable-libass \
99 109 --enable-libfontconfig \ --enable-libfontconfig \
File builders/llvm-0/builder.sh changed (mode: 100644) (index 932035c..4db755c)
1 1 src_name=llvm-project src_name=llvm-project
2 git_commit=44e5879f0fb7c28b90e8042fde81bba30b4090a3
2 git_commit=f04a3e981d3175d7f3d0f5008b842823034f47ed
3 3 git_url0=git://github.com/llvm/$src_name git_url0=git://github.com/llvm/$src_name
4 4
5 5 slot=0 slot=0
File builders/mesa-gl-0/builder.sh changed (mode: 100644) (index 4c984fd..14d5694)
1 1 src_name=mesa src_name=mesa
2 git_commit=9e440b8d0b982933650c7b600de1e4b6e33f9c7d
2 git_commit=a2689ebcd68ccf9b3bcbf9bae926c70beccd6a11
3 3 git_url0=git://anongit.freedesktop.org/mesa/$pkg_name git_url0=git://anongit.freedesktop.org/mesa/$pkg_name
4 4
5 5 slot=0 slot=0
File builders/mesa-gl-0/contrib/compiler_glsl.sh changed (mode: 100644) (index 1587176..5d38943)
... ... wait
19 19
20 20 libglcpp_files="\ libglcpp_files="\
21 21 $src_dir/src/compiler/glsl/glcpp/pp.c \ $src_dir/src/compiler/glsl/glcpp/pp.c \
22 $src_dir/src/compiler/glsl/glcpp/pp_standalone_scaffolding.c \
22 23 $build_dir/src/compiler/glsl/glcpp/glcpp-lex.c \ $build_dir/src/compiler/glsl/glcpp/glcpp-lex.c \
23 24 $build_dir/src/compiler/glsl/glcpp/glcpp-parse.c \ $build_dir/src/compiler/glsl/glcpp/glcpp-parse.c \
24 25 " "
File builders/mesa-gl-0/contrib/compiler_nir.sh changed (mode: 100644) (index 0de24e2..c9c9739)
... ... $src_dir/src/compiler/nir/nir_serialize.c \
153 153 $src_dir/src/compiler/nir/nir_split_per_member_structs.c \ $src_dir/src/compiler/nir/nir_split_per_member_structs.c \
154 154 $src_dir/src/compiler/nir/nir_split_var_copies.c \ $src_dir/src/compiler/nir/nir_split_var_copies.c \
155 155 $src_dir/src/compiler/nir/nir_split_vars.c \ $src_dir/src/compiler/nir/nir_split_vars.c \
156 $src_dir/src/compiler/nir/nir_strip.c \
157 156 $src_dir/src/compiler/nir/nir_sweep.c \ $src_dir/src/compiler/nir/nir_sweep.c \
158 157 $src_dir/src/compiler/nir/nir_to_lcssa.c \ $src_dir/src/compiler/nir/nir_to_lcssa.c \
159 158 $src_dir/src/compiler/nir/nir_validate.c \ $src_dir/src/compiler/nir/nir_validate.c \
File builders/mesa-gl-0/contrib/gallium_auxiliary.sh changed (mode: 100644) (index d9876a5..0661dc9)
... ... $python3 $src_dir/src/gallium/auxiliary/indices/u_unfilled_gen.py \
12 12
13 13 #------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
14 14
15 mkdir -p $build_dir/src/gallium/auxiliary/util
16
17 $python3 $src_dir/src/gallium/auxiliary/util/u_format_table.py \
18 $src_dir/src/gallium/auxiliary/util/u_format.csv \
19 >$build_dir/src/gallium/auxiliary/util/u_format_table.c
20
21 #-------------------------------------------------------------------------------
22
23 15 libgallium_c_files="\ libgallium_c_files="\
24 16 $build_dir/src/gallium/auxiliary/indices/u_indices_gen.c \ $build_dir/src/gallium/auxiliary/indices/u_indices_gen.c \
25 17 $build_dir/src/gallium/auxiliary/indices/u_unfilled_gen.c \ $build_dir/src/gallium/auxiliary/indices/u_unfilled_gen.c \
26 $build_dir/src/gallium/auxiliary/util/u_format_table.c
27 18 $src_dir/src/gallium/auxiliary/cso_cache/cso_cache.c \ $src_dir/src/gallium/auxiliary/cso_cache/cso_cache.c \
28 19 $src_dir/src/gallium/auxiliary/cso_cache/cso_cache.h \ $src_dir/src/gallium/auxiliary/cso_cache/cso_cache.h \
29 20 $src_dir/src/gallium/auxiliary/cso_cache/cso_context.c \ $src_dir/src/gallium/auxiliary/cso_cache/cso_context.c \
 
... ... $src_dir/src/gallium/auxiliary/util/u_draw.c \
155 146 $src_dir/src/gallium/auxiliary/util/u_draw_quad.c \ $src_dir/src/gallium/auxiliary/util/u_draw_quad.c \
156 147 $src_dir/src/gallium/auxiliary/util/u_dump_defines.c \ $src_dir/src/gallium/auxiliary/util/u_dump_defines.c \
157 148 $src_dir/src/gallium/auxiliary/util/u_dump_state.c \ $src_dir/src/gallium/auxiliary/util/u_dump_state.c \
158 $src_dir/src/gallium/auxiliary/util/u_format.c \
159 $src_dir/src/gallium/auxiliary/util/u_format_bptc.c \
160 $src_dir/src/gallium/auxiliary/util/u_format_etc.c \
161 $src_dir/src/gallium/auxiliary/util/u_format_latc.c \
162 $src_dir/src/gallium/auxiliary/util/u_format_other.c \
163 $src_dir/src/gallium/auxiliary/util/u_format_rgtc.c \
164 $src_dir/src/gallium/auxiliary/util/u_format_s3tc.c \
165 $src_dir/src/gallium/auxiliary/util/u_format_tests.c \
166 $src_dir/src/gallium/auxiliary/util/u_format_yuv.c \
167 $src_dir/src/gallium/auxiliary/util/u_format_zs.c \
168 149 $src_dir/src/gallium/auxiliary/util/u_framebuffer.c \ $src_dir/src/gallium/auxiliary/util/u_framebuffer.c \
169 150 $src_dir/src/gallium/auxiliary/util/u_gen_mipmap.c \ $src_dir/src/gallium/auxiliary/util/u_gen_mipmap.c \
170 151 $src_dir/src/gallium/auxiliary/util/u_handle_table.c \ $src_dir/src/gallium/auxiliary/util/u_handle_table.c \
File builders/mesa-gl-0/contrib/gallium_drivers.sh changed (mode: 100644) (index 9555592..4860ee8)
... ... unset PYTHONPATH
10 10
11 11 export PYTHONPATH=$mako export PYTHONPATH=$mako
12 12 $python3 $src_dir/src/gallium/drivers/radeonsi/gfx10_format_table.py \ $python3 $src_dir/src/gallium/drivers/radeonsi/gfx10_format_table.py \
13 $src_dir/src/gallium/auxiliary/util/u_format.csv \
13 $src_dir/src/util/format/u_format.csv \
14 14 $src_dir/src/amd/registers/gfx10-rsrc.json \ $src_dir/src/amd/registers/gfx10-rsrc.json \
15 15 >$build_dir/src/gallium/drivers/radeonsi/gfx10_format_table.h >$build_dir/src/gallium/drivers/radeonsi/gfx10_format_table.h
16 16 unset PYTHONPATH unset PYTHONPATH
File builders/mesa-gl-0/contrib/util.sh changed (mode: 100644) (index f4f561c..2ad40c7)
... ... $python3 $src_dir/src/util/format_srgb.py >$build_dir/src/util/format_srgb.c
11 11
12 12 #$src_dir/util/bitset_test.cpp wtf? rotten brain? #$src_dir/util/bitset_test.cpp wtf? rotten brain?
13 13
14 mkdir -p $build_dir/src/util/format
15
16 $python3 $src_dir/src/util/format/u_format_table.py \
17 $src_dir/src/util/format/u_format.csv \
18 >$build_dir/src/util/format/u_format_table.c
19
20 #-------------------------------------------------------------------------------
21
14 22 libmesa_util_files="\ libmesa_util_files="\
15 $build_dir/src/util/format_srgb.c
23 $build_dir/src/util/format_srgb.c \
24 $build_dir/src/util/format/u_format_table.c \
16 25 $src_dir/src/util/anon_file.c \ $src_dir/src/util/anon_file.c \
17 26 $src_dir/src/util/bitscan.c \ $src_dir/src/util/bitscan.c \
18 27 $src_dir/src/util/blob.c \ $src_dir/src/util/blob.c \
 
... ... $src_dir/src/util/sparse_array.c \
42 51 $src_dir/src/util/string_buffer.c \ $src_dir/src/util/string_buffer.c \
43 52 $src_dir/src/util/strtod.c \ $src_dir/src/util/strtod.c \
44 53 $src_dir/src/util/u_atomic.c \ $src_dir/src/util/u_atomic.c \
54 $src_dir/src/util/format/u_format.c \
55 $src_dir/src/util/format/u_format_bptc.c \
56 $src_dir/src/util/format/u_format_etc.c \
57 $src_dir/src/util/format/u_format_latc.c \
58 $src_dir/src/util/format/u_format_other.c \
59 $src_dir/src/util/format/u_format_rgtc.c \
60 $src_dir/src/util/format/u_format_s3tc.c \
61 $src_dir/src/util/format/u_format_tests.c \
62 $src_dir/src/util/format/u_format_yuv.c \
63 $src_dir/src/util/format/u_format_zs.c \
45 64 $src_dir/src/util/u_queue.c \ $src_dir/src/util/u_queue.c \
46 65 $src_dir/src/util/u_vector.c \ $src_dir/src/util/u_vector.c \
47 66 $src_dir/src/util/u_math.c \ $src_dir/src/util/u_math.c \
 
... ... do
65 84 $cco_slib -o $libmesa_util_obj $f \ $cco_slib -o $libmesa_util_obj $f \
66 85 -I$src_dir/src/gallium/auxiliary \ -I$src_dir/src/gallium/auxiliary \
67 86 -I$src_dir/src/gallium/include \ -I$src_dir/src/gallium/include \
87 -I$src_dir/src/util/format \
68 88 -I$src_dir/src/util \ -I$src_dir/src/util \
69 89 -I$src_dir/src/mesa \ -I$src_dir/src/mesa \
70 90 -I$src_dir/src \ -I$src_dir/src \
File builders/mesa-vulkan-0/builder.sh changed (mode: 100644) (index f0d5780..40888ee)
1 1 src_name=mesa src_name=mesa
2 git_commit=9e440b8d0b982933650c7b600de1e4b6e33f9c7d
2 git_commit=a2689ebcd68ccf9b3bcbf9bae926c70beccd6a11
3 3 git_url0=git://anongit.freedesktop.org/mesa/$src_name git_url0=git://anongit.freedesktop.org/mesa/$src_name
4 4
5 5 slot=0 slot=0
File builders/mesa-vulkan-0/contrib/generators/nir/intrinsics/generic/generic.c changed (mode: 100644) (index aa28770..617b611)
... ... struct nir_intrinsic nir_is_helper_invocation= {
1659 1659 }; };
1660 1660 /* Demote related */ /* Demote related */
1661 1661 /******************************************************************************/ /******************************************************************************/
1662
1663 /******************************************************************************/
1664 /*
1665 * Intrinsics used by the Midgard/Bifrost blend pipeline. These are defined
1666 * within a blend shader to read/write the raw value from the tile buffer,
1667 * without applying any format conversion in the process. If the shader needs
1668 * usable pixel values, it must apply format conversions itself.
1669 *
1670 * These definitions are generic, but they are explicitly vendored to prevent
1671 * other drivers from using them, as their semantics is defined in terms of the
1672 * Midgard/Bifrost hardware tile buffer and may not line up with anything sane.
1673 * One notable divergence is sRGB, which is asymmetric: raw_input_pan requires
1674 * an sRGB->linear conversion, but linear values should be written to
1675 * raw_output_pan and the hardware handles linear->sRGB.
1676 */
1677
1678 /* src[] = { value } */
1679 struct nir_intrinsic nir_store_raw_output_pan = {
1680 .name = "store_raw_output_pan",
1681 .srcs_n = 1,
1682 .src_components_n = {
1683 0
1684 }
1685 };
1686 struct nir_intrinsic nir_load_raw_output_pan = {
1687 .name = "load_raw_output_pan",
1688 .has_dest = true,
1689 .flags = NIR_INTRINSIC_FLAGS_CAN_ELIMINATE | NIR_INTRINSIC_FLAGS_CAN_REORDER
1690 };
1691
1692 /******************************************************************************/
File builders/mesa-vulkan-0/contrib/generators/nir/intrinsics/generic/load.c changed (mode: 100644) (index ae633c9..3b968d7)
... ... struct nir_intrinsic nir_load_scratch = {
237 237 }, },
238 238 .flags = NIR_INTRINSIC_FLAGS_CAN_ELIMINATE .flags = NIR_INTRINSIC_FLAGS_CAN_ELIMINATE
239 239 }; };
240 /******************************************************************************/
241 /*
242 * Intrinsics used by the Midgard/Bifrost blend pipeline. These are defined
243 * within a blend shader to read/write the raw value from the tile buffer,
244 * without applying any format conversion in the process. If the shader needs
245 * usable pixel values, it must apply format conversions itself.
246 *
247 * These definitions are generic, but they are explicitly vendored to prevent
248 * other drivers from using them, as their semantics is defined in terms of the
249 * Midgard/Bifrost hardware tile buffer and may not line up with anything sane.
250 * One notable divergence is sRGB, which is asymmetric: raw_input_pan requires
251 * an sRGB->linear conversion, but linear values should be written to
252 * raw_output_pan and the hardware handles linear->sRGB.
253 *
254 * We also have format-specific Midgard intrinsics. There are rather
255 * here-be-dragons. load_output_u8_as_fp16_pan does the equivalent of
256 * load_raw_out_pan on an RGBA8 UNORM framebuffer followed by u2u16 -> fp16 ->
257 * division by 255.
258 */
259 /* src[] = { value } */
260 struct nir_intrinsic nir_load_raw_output_pan = {
261 .name = "load_raw_output_pan",
262 .has_dest = true,
263 .flags = NIR_INTRINSIC_FLAGS_CAN_ELIMINATE | NIR_INTRINSIC_FLAGS_CAN_REORDER
264 };
265 struct nir_intrinsic nir_load_output_u8_as_fd16_pan = {
266 .name = "load_output_u8_as_fd16_pan",
267 .has_dest = true,
268 .flags = NIR_INTRINSIC_FLAGS_CAN_ELIMINATE | NIR_INTRINSIC_FLAGS_CAN_REORDER
269 };
270 /*
271 * hardware specific ??
272 * Loads the sampler paramaters <min_lod, max_lod, lod_bias>
273 * src[] = { sampler_index }
274 */
275 struct nir_intrinsic nir_load_sampler_lod_parameters_pan = {
276 .name = "load_sampler_lod_paramenters_pan",
277 .srcs_n = 1,
278 .src_components_n = {
279 1
280 },
281 .has_dest = true,
282 .flags = NIR_INTRINSIC_FLAGS_CAN_ELIMINATE | NIR_INTRINSIC_FLAGS_CAN_REORDER
283 };
284 /******************************************************************************/
285
File builders/mesa-vulkan-0/contrib/generators/nir/intrinsics/generic/store.c changed (mode: 100644) (index edb45e6..4d99c0f)
... ... struct nir_intrinsic nir_store_scratch = {
92 92 [NIR_INTRINSIC_IDX_WRMASK] = 3 [NIR_INTRINSIC_IDX_WRMASK] = 3
93 93 } }
94 94 }; };
95 /******************************************************************************/
96 /*
97 * Intrinsics used by the Midgard/Bifrost blend pipeline. These are defined
98 * within a blend shader to read/write the raw value from the tile buffer,
99 * without applying any format conversion in the process. If the shader needs
100 * usable pixel values, it must apply format conversions itself.
101 *
102 * These definitions are generic, but they are explicitly vendored to prevent
103 * other drivers from using them, as their semantics is defined in terms of the
104 * Midgard/Bifrost hardware tile buffer and may not line up with anything sane.
105 * One notable divergence is sRGB, which is asymmetric: raw_input_pan requires
106 * an sRGB->linear conversion, but linear values should be written to
107 * raw_output_pan and the hardware handles linear->sRGB.
108 *
109 * We also have format-specific Midgard intrinsics. There are rather
110 * here-be-dragons. load_output_u8_as_fp16_pan does the equivalent of
111 * load_raw_out_pan on an RGBA8 UNORM framebuffer followed by u2u16 -> fp16 ->
112 * division by 255.
113 */
114 /* src[] = { value } */
115 struct nir_intrinsic nir_store_raw_output_pan = {
116 .name = "store_raw_output_pan",
117 .srcs_n = 1,
118 .src_components_n = {
119 0
120 }
121 };
122 /******************************************************************************/
File builders/mesa-vulkan-0/contrib/generators/nir/nir_database_alu.c changed (mode: 100644) (index b97ab69..1a05f13)
4 4 */ */
5 5 #define NIR_TYPE_BOOL 1 #define NIR_TYPE_BOOL 1
6 6 #define NIR_TYPE_BOOL1 2 #define NIR_TYPE_BOOL1 2
7 #define NIR_TYPE_BOOL32 3
8 #define NIR_TYPE_INT 4
9 #define NIR_TYPE_INT1 5
10 #define NIR_TYPE_INT8 6
11 #define NIR_TYPE_INT16 7
12 #define NIR_TYPE_INT32 8
13 #define NIR_TYPE_INT64 9
14 #define NIR_TYPE_UINT 10
15 #define NIR_TYPE_UINT1 11
16 #define NIR_TYPE_UINT8 12
17 #define NIR_TYPE_UINT16 13
18 #define NIR_TYPE_UINT32 14
19 #define NIR_TYPE_UINT64 15
20 #define NIR_TYPE_FLOAT 16
21 #define NIR_TYPE_FLOAT16 17
22 #define NIR_TYPE_FLOAT32 18
23 #define NIR_TYPE_FLOAT64 19
7 #define NIR_TYPE_BOOL8 3
8 #define NIR_TYPE_BOOL16 4
9 #define NIR_TYPE_BOOL32 5
10 #define NIR_TYPE_INT 6
11 #define NIR_TYPE_INT1 7
12 #define NIR_TYPE_INT8 8
13 #define NIR_TYPE_INT16 9
14 #define NIR_TYPE_INT32 10
15 #define NIR_TYPE_INT64 11
16 #define NIR_TYPE_UINT 12
17 #define NIR_TYPE_UINT1 13
18 #define NIR_TYPE_UINT8 14
19 #define NIR_TYPE_UINT16 15
20 #define NIR_TYPE_UINT32 16
21 #define NIR_TYPE_UINT64 17
22 #define NIR_TYPE_FLOAT 18
23 #define NIR_TYPE_FLOAT16 19
24 #define NIR_TYPE_FLOAT32 20
25 #define NIR_TYPE_FLOAT64 21
24 26
25 27 #define NIR_OP_TYPE_UNDEFINED 0 #define NIR_OP_TYPE_UNDEFINED 0
26 28 /* XXX: current database factorization makes the following useless */ /* XXX: current database factorization makes the following useless */
 
... ... static struct nir_op nir_b2i8 = {
123 125 {NIR_TYPE_BOOL}, {NIR_TYPE_BOOL},
124 126 0 0
125 127 }; };
128 /*============================================================================*/
129 /* b[1,8,16,32]all_fequal */
130 static struct nir_op nir_ball_fequal2 = {
131 "ball_fequal2",
132 NIR_OP_TYPE_ALU,
133 1,
134 NIR_TYPE_BOOL1,
135 2,
136 {2,2},
137 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
138 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
139 };
140 static struct nir_op nir_ball_fequal3 = {
141 "ball_fequal3",
142 NIR_OP_TYPE_ALU,
143 1,
144 NIR_TYPE_BOOL1,
145 2,
146 {3,3},
147 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
148 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
149 };
150 static struct nir_op nir_ball_fequal4 = {
151 "ball_fequal4",
152 NIR_OP_TYPE_ALU,
153 1,
154 NIR_TYPE_BOOL1,
155 2,
156 {4,4},
157 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
158 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
159 };
160 /*----------------------------------------------------------------------------*/
161 static struct nir_op nir_b8all_fequal2 = {
162 "b8all_fequal2",
163 NIR_OP_TYPE_ALU,
164 1,
165 NIR_TYPE_BOOL8,
166 2,
167 {2,2},
168 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
169 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
170 };
171 static struct nir_op nir_b8all_fequal3 = {
172 "b8all_fequal3",
173 NIR_OP_TYPE_ALU,
174 1,
175 NIR_TYPE_BOOL8,
176 2,
177 {3,3},
178 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
179 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
180 };
181 static struct nir_op nir_b8all_fequal4 = {
182 "b8all_fequal4",
183 NIR_OP_TYPE_ALU,
184 1,
185 NIR_TYPE_BOOL8,
186 2,
187 {4,4},
188 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
189 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
190 };
191 /*----------------------------------------------------------------------------*/
192 static struct nir_op nir_b16all_fequal2 = {
193 "b16all_fequal2",
194 NIR_OP_TYPE_ALU,
195 1,
196 NIR_TYPE_BOOL16,
197 2,
198 {2,2},
199 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
200 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
201 };
202 static struct nir_op nir_b16all_fequal3 = {
203 "b16all_fequal3",
204 NIR_OP_TYPE_ALU,
205 1,
206 NIR_TYPE_BOOL16,
207 2,
208 {3,3},
209 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
210 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
211 };
212 static struct nir_op nir_b16all_fequal4 = {
213 "b16all_fequal4",
214 NIR_OP_TYPE_ALU,
215 1,
216 NIR_TYPE_BOOL16,
217 2,
218 {4,4},
219 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
220 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
221 };
222 /*----------------------------------------------------------------------------*/
126 223 static struct nir_op nir_b32all_fequal2 = { static struct nir_op nir_b32all_fequal2 = {
127 224 "b32all_fequal2", "b32all_fequal2",
128 225 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_b32all_fequal4 = {
153 250 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
154 251 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
155 252 }; };
156 static struct nir_op nir_b32all_iequal2 = {
157 "b32all_iequal2",
253 /* b[1,8,16,32]all_fequal */
254 /*============================================================================*/
255 /* b[1,8,16,32]all_iequal */
256 static struct nir_op nir_ball_iequal2 = {
257 "ball_iequal2",
158 258 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
159 259 1, 1,
160 NIR_TYPE_BOOL32,
260 NIR_TYPE_BOOL1,
161 261 2, 2,
162 262 {2,2}, {2,2},
163 263 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
164 264 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
165 265 }; };
166 static struct nir_op nir_b32all_iequal3 = {
167 "b32all_iequal3",
266 static struct nir_op nir_ball_iequal3 = {
267 "ball_iequal3",
168 268 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
169 269 1, 1,
170 NIR_TYPE_BOOL32,
270 NIR_TYPE_BOOL1,
171 271 2, 2,
172 272 {3,3}, {3,3},
173 273 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
174 274 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
175 275 }; };
176 static struct nir_op nir_b32all_iequal4 = {
177 "b32all_iequal4",
276 static struct nir_op nir_ball_iequal4 = {
277 "ball_iequal4",
178 278 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
179 279 1, 1,
180 NIR_TYPE_BOOL32,
280 NIR_TYPE_BOOL1,
181 281 2, 2,
182 282 {4,4}, {4,4},
183 283 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
184 284 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
185 285 }; };
186 static struct nir_op nir_b32any_fnequal2 = {
187 "b32any_fnequal2",
286 /*----------------------------------------------------------------------------*/
287 static struct nir_op nir_b8all_iequal2 = {
288 "b8all_iequal2",
188 289 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
189 290 1, 1,
190 NIR_TYPE_BOOL32,
291 NIR_TYPE_BOOL8,
191 292 2, 2,
192 293 {2,2}, {2,2},
193 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
294 {NIR_TYPE_INT,NIR_TYPE_INT},
194 295 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
195 296 }; };
196 static struct nir_op nir_b32any_fnequal3 = {
197 "b32any_fnequal3",
297 static struct nir_op nir_b8all_iequal3 = {
298 "b8all_iequal3",
198 299 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
199 300 1, 1,
200 NIR_TYPE_BOOL32,
301 NIR_TYPE_BOOL8,
201 302 2, 2,
202 303 {3,3}, {3,3},
203 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
304 {NIR_TYPE_INT,NIR_TYPE_INT},
204 305 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
205 306 }; };
206 static struct nir_op nir_b32any_fnequal4 = {
207 "b32any_fnequal4",
307 static struct nir_op nir_b8all_iequal4 = {
308 "b8all_iequal4",
208 309 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
209 310 1, 1,
210 NIR_TYPE_BOOL32,
311 NIR_TYPE_BOOL8,
211 312 2, 2,
212 313 {4,4}, {4,4},
213 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
314 {NIR_TYPE_INT,NIR_TYPE_INT},
214 315 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
215 316 }; };
216 static struct nir_op nir_b32any_inequal2 = {
217 "b32any_inequal2",
317 /*----------------------------------------------------------------------------*/
318 static struct nir_op nir_b16all_iequal2 = {
319 "b16all_iequal2",
320 NIR_OP_TYPE_ALU,
321 1,
322 NIR_TYPE_BOOL16,
323 2,
324 {2,2},
325 {NIR_TYPE_INT,NIR_TYPE_INT},
326 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
327 };
328 static struct nir_op nir_b16all_iequal3 = {
329 "b16all_iequal3",
330 NIR_OP_TYPE_ALU,
331 1,
332 NIR_TYPE_BOOL16,
333 2,
334 {3,3},
335 {NIR_TYPE_INT,NIR_TYPE_INT},
336 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
337 };
338 static struct nir_op nir_b16all_iequal4 = {
339 "b16all_iequal4",
340 NIR_OP_TYPE_ALU,
341 1,
342 NIR_TYPE_BOOL16,
343 2,
344 {4,4},
345 {NIR_TYPE_INT,NIR_TYPE_INT},
346 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
347 };
348 /*----------------------------------------------------------------------------*/
349 static struct nir_op nir_b32all_iequal2 = {
350 "b32all_iequal2",
218 351 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
219 352 1, 1,
220 353 NIR_TYPE_BOOL32, NIR_TYPE_BOOL32,
 
... ... static struct nir_op nir_b32any_inequal2 = {
223 356 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
224 357 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
225 358 }; };
226 static struct nir_op nir_b32any_inequal3 = {
227 "b32any_inequal3",
359 static struct nir_op nir_b32all_iequal3 = {
360 "b32all_iequal3",
228 361 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
229 362 1, 1,
230 363 NIR_TYPE_BOOL32, NIR_TYPE_BOOL32,
 
... ... static struct nir_op nir_b32any_inequal3 = {
233 366 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
234 367 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
235 368 }; };
236 static struct nir_op nir_b32any_inequal4 = {
237 "b32any_inequal4",
369 static struct nir_op nir_b32all_iequal4 = {
370 "b32all_iequal4",
238 371 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
239 372 1, 1,
240 373 NIR_TYPE_BOOL32, NIR_TYPE_BOOL32,
 
... ... static struct nir_op nir_b32any_inequal4 = {
243 376 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
244 377 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
245 378 }; };
246 static struct nir_op nir_b32csel = {
247 "b32csel",
248 NIR_OP_TYPE_ALU,
249 0,
250 NIR_TYPE_UINT,
251 3,
252 {0,0,0},
253 {NIR_TYPE_BOOL32,NIR_TYPE_UINT,NIR_TYPE_UINT},
254 0
255 };
256 static struct nir_op nir_ball_fequal2 = {
257 "ball_fequal2",
379 /* b[1,8,16,32]all_iequal */
380 /*============================================================================*/
381 /* b[1,8,16,32]any_fequal */
382 static struct nir_op nir_bany_fnequal2 = {
383 "bany_fnequal2",
258 384 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
259 385 1, 1,
260 386 NIR_TYPE_BOOL1, NIR_TYPE_BOOL1,
 
... ... static struct nir_op nir_ball_fequal2 = {
263 389 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
264 390 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
265 391 }; };
266 static struct nir_op nir_ball_fequal3 = {
267 "ball_fequal3",
392 static struct nir_op nir_bany_fnequal3 = {
393 "bany_fnequal3",
268 394 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
269 395 1, 1,
270 396 NIR_TYPE_BOOL1, NIR_TYPE_BOOL1,
 
... ... static struct nir_op nir_ball_fequal3 = {
273 399 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
274 400 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
275 401 }; };
276 static struct nir_op nir_ball_fequal4 = {
277 "ball_fequal4",
402 static struct nir_op nir_bany_fnequal4 = {
403 "bany_fnequal4",
278 404 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
279 405 1, 1,
280 406 NIR_TYPE_BOOL1, NIR_TYPE_BOOL1,
 
... ... static struct nir_op nir_ball_fequal4 = {
283 409 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
284 410 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
285 411 }; };
286 static struct nir_op nir_ball_iequal2 = {
287 "ball_iequal2",
412 /*----------------------------------------------------------------------------*/
413 static struct nir_op nir_b8any_fnequal2 = {
414 "b8any_fnequal2",
288 415 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
289 416 1, 1,
290 NIR_TYPE_BOOL1,
417 NIR_TYPE_BOOL8,
291 418 2, 2,
292 419 {2,2}, {2,2},
293 {NIR_TYPE_INT,NIR_TYPE_INT},
420 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
294 421 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
295 422 }; };
296 static struct nir_op nir_ball_iequal3 = {
297 "ball_iequal3",
423 static struct nir_op nir_b8any_fnequal3 = {
424 "b8any_fnequal3",
298 425 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
299 426 1, 1,
300 NIR_TYPE_BOOL1,
427 NIR_TYPE_BOOL8,
301 428 2, 2,
302 429 {3,3}, {3,3},
303 {NIR_TYPE_INT,NIR_TYPE_INT},
430 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
304 431 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
305 432 }; };
306 static struct nir_op nir_ball_iequal4 = {
307 "ball_iequal4",
433 static struct nir_op nir_b8any_fnequal4 = {
434 "b8any_fnequal4",
308 435 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
309 436 1, 1,
310 NIR_TYPE_BOOL1,
437 NIR_TYPE_BOOL8,
311 438 2, 2,
312 439 {4,4}, {4,4},
313 {NIR_TYPE_INT,NIR_TYPE_INT},
440 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
314 441 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
315 442 }; };
316 static struct nir_op nir_bany_fnequal2 = {
317 "bany_fnequal2",
443 /*----------------------------------------------------------------------------*/
444 static struct nir_op nir_b16any_fnequal2 = {
445 "b16any_fnequal2",
318 446 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
319 447 1, 1,
320 NIR_TYPE_BOOL1,
448 NIR_TYPE_BOOL16,
321 449 2, 2,
322 450 {2,2}, {2,2},
323 451 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
324 452 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
325 453 }; };
326 static struct nir_op nir_bany_fnequal3 = {
327 "bany_fnequal3",
454 static struct nir_op nir_b16any_fnequal3 = {
455 "b16any_fnequal3",
328 456 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
329 457 1, 1,
330 NIR_TYPE_BOOL1,
458 NIR_TYPE_BOOL16,
331 459 2, 2,
332 460 {3,3}, {3,3},
333 461 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
334 462 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
335 463 }; };
336 static struct nir_op nir_bany_fnequal4 = {
337 "bany_fnequal4",
464 static struct nir_op nir_b16any_fnequal4 = {
465 "b16any_fnequal4",
338 466 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
339 467 1, 1,
340 NIR_TYPE_BOOL1,
468 NIR_TYPE_BOOL16,
341 469 2, 2,
342 470 {4,4}, {4,4},
343 471 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
344 472 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
345 473 }; };
474 /*----------------------------------------------------------------------------*/
475 static struct nir_op nir_b32any_fnequal2 = {
476 "b32any_fnequal2",
477 NIR_OP_TYPE_ALU,
478 1,
479 NIR_TYPE_BOOL32,
480 2,
481 {2,2},
482 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
483 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
484 };
485 static struct nir_op nir_b32any_fnequal3 = {
486 "b32any_fnequal3",
487 NIR_OP_TYPE_ALU,
488 1,
489 NIR_TYPE_BOOL32,
490 2,
491 {3,3},
492 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
493 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
494 };
495 static struct nir_op nir_b32any_fnequal4 = {
496 "b32any_fnequal4",
497 NIR_OP_TYPE_ALU,
498 1,
499 NIR_TYPE_BOOL32,
500 2,
501 {4,4},
502 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
503 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
504 };
505 /* b[1,8,16,32]any_fequal */
506 /*============================================================================*/
507 /* b[1,8,16,32]any_iequal */
346 508 static struct nir_op nir_bany_inequal2 = { static struct nir_op nir_bany_inequal2 = {
347 509 "bany_inequal2", "bany_inequal2",
348 510 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_bany_inequal4 = {
373 535 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
374 536 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
375 537 }; };
538 /*----------------------------------------------------------------------------*/
539 static struct nir_op nir_b8any_inequal2 = {
540 "b8any_inequal2",
541 NIR_OP_TYPE_ALU,
542 1,
543 NIR_TYPE_BOOL8,
544 2,
545 {2,2},
546 {NIR_TYPE_INT,NIR_TYPE_INT},
547 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
548 };
549 static struct nir_op nir_b8any_inequal3 = {
550 "b8any_inequal3",
551 NIR_OP_TYPE_ALU,
552 1,
553 NIR_TYPE_BOOL8,
554 2,
555 {3,3},
556 {NIR_TYPE_INT,NIR_TYPE_INT},
557 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
558 };
559 static struct nir_op nir_b8any_inequal4 = {
560 "b8any_inequal4",
561 NIR_OP_TYPE_ALU,
562 1,
563 NIR_TYPE_BOOL8,
564 2,
565 {4,4},
566 {NIR_TYPE_INT,NIR_TYPE_INT},
567 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
568 };
569 /*----------------------------------------------------------------------------*/
570 static struct nir_op nir_b16any_inequal2 = {
571 "b16any_inequal2",
572 NIR_OP_TYPE_ALU,
573 1,
574 NIR_TYPE_BOOL16,
575 2,
576 {2,2},
577 {NIR_TYPE_INT,NIR_TYPE_INT},
578 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
579 };
580 static struct nir_op nir_b16any_inequal3 = {
581 "b16any_inequal3",
582 NIR_OP_TYPE_ALU,
583 1,
584 NIR_TYPE_BOOL16,
585 2,
586 {3,3},
587 {NIR_TYPE_INT,NIR_TYPE_INT},
588 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
589 };
590 static struct nir_op nir_b16any_inequal4 = {
591 "b16any_inequal4",
592 NIR_OP_TYPE_ALU,
593 1,
594 NIR_TYPE_BOOL16,
595 2,
596 {4,4},
597 {NIR_TYPE_INT,NIR_TYPE_INT},
598 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
599 };
600 /*----------------------------------------------------------------------------*/
601 static struct nir_op nir_b32any_inequal2 = {
602 "b32any_inequal2",
603 NIR_OP_TYPE_ALU,
604 1,
605 NIR_TYPE_BOOL32,
606 2,
607 {2,2},
608 {NIR_TYPE_INT,NIR_TYPE_INT},
609 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
610 };
611 static struct nir_op nir_b32any_inequal3 = {
612 "b32any_inequal3",
613 NIR_OP_TYPE_ALU,
614 1,
615 NIR_TYPE_BOOL32,
616 2,
617 {3,3},
618 {NIR_TYPE_INT,NIR_TYPE_INT},
619 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
620 };
621 static struct nir_op nir_b32any_inequal4 = {
622 "b32any_inequal4",
623 NIR_OP_TYPE_ALU,
624 1,
625 NIR_TYPE_BOOL32,
626 2,
627 {4,4},
628 {NIR_TYPE_INT,NIR_TYPE_INT},
629 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
630 };
631 /* b[1,8,16,32]any_iequal */
632 /*============================================================================*/
633 /* b[1,8,16,32]csel */
376 634 static struct nir_op nir_bcsel = { static struct nir_op nir_bcsel = {
377 635 "bcsel", "bcsel",
378 636 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_bcsel = {
383 641 {NIR_TYPE_BOOL1,NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_BOOL1,NIR_TYPE_UINT,NIR_TYPE_UINT},
384 642 0 0
385 643 }; };
644 static struct nir_op nir_b8csel = {
645 "b8csel",
646 NIR_OP_TYPE_ALU,
647 0,
648 NIR_TYPE_UINT,
649 3,
650 {0,0,0},
651 {NIR_TYPE_BOOL8,NIR_TYPE_UINT,NIR_TYPE_UINT},
652 0
653 };
654 static struct nir_op nir_b16csel = {
655 "b16csel",
656 NIR_OP_TYPE_ALU,
657 0,
658 NIR_TYPE_UINT,
659 3,
660 {0,0,0},
661 {NIR_TYPE_BOOL16,NIR_TYPE_UINT,NIR_TYPE_UINT},
662 0
663 };
664 static struct nir_op nir_b32csel = {
665 "b32csel",
666 NIR_OP_TYPE_ALU,
667 0,
668 NIR_TYPE_UINT,
669 3,
670 {0,0,0},
671 {NIR_TYPE_BOOL32,NIR_TYPE_UINT,NIR_TYPE_UINT},
672 0
673 };
674 /* b[1,8,16,32]csel */
675 /*============================================================================*/
386 676 static struct nir_op nir_bfi = { static struct nir_op nir_bfi = {
387 677 "bfi", "bfi",
388 678 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_extract_u8 = {
493 783 {NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_UINT,NIR_TYPE_UINT},
494 784 0 0
495 785 }; };
786 /*----------------------------------------------------------------------------*/
496 787 static struct nir_op nir_f2b1 = { static struct nir_op nir_f2b1 = {
497 788 "f2b1", "f2b1",
498 789 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_f2b1 = {
503 794 {NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT},
504 795 0 0
505 796 }; };
797 static struct nir_op nir_f2b8 = {
798 "f2b8",
799 NIR_OP_TYPE_ALU,
800 0,
801 NIR_TYPE_BOOL8,
802 1,
803 {0},
804 {NIR_TYPE_FLOAT},
805 0
806 };
807 static struct nir_op nir_f2b16 = {
808 "f2b16",
809 NIR_OP_TYPE_ALU,
810 0,
811 NIR_TYPE_BOOL32,
812 1,
813 {0},
814 {NIR_TYPE_FLOAT},
815 0
816 };
506 817 static struct nir_op nir_f2b32 = { static struct nir_op nir_f2b32 = {
507 818 "f2b32", "f2b32",
508 819 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_f2b32 = {
513 824 {NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT},
514 825 0 0
515 826 }; };
827 /*----------------------------------------------------------------------------*/
516 828 static struct nir_op nir_f2f16 = { static struct nir_op nir_f2f16 = {
517 829 "f2f16", "f2f16",
518 830 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_fdph_replicated = {
923 1235 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
924 1236 0 0
925 1237 }; };
1238 /*---------------------------------------------------------------------------*/
926 1239 static struct nir_op nir_feq = { static struct nir_op nir_feq = {
927 1240 "feq", "feq",
928 1241 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_feq = {
933 1246 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
934 1247 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
935 1248 }; };
1249 static struct nir_op nir_feq8 = {
1250 "feq8",
1251 NIR_OP_TYPE_ALU,
1252 0,
1253 NIR_TYPE_BOOL8,
1254 2,
1255 {0,0},
1256 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1257 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1258 };
1259 static struct nir_op nir_feq16 = {
1260 "feq16",
1261 NIR_OP_TYPE_ALU,
1262 0,
1263 NIR_TYPE_BOOL16,
1264 2,
1265 {0,0},
1266 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1267 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1268 };
936 1269 static struct nir_op nir_feq32 = { static struct nir_op nir_feq32 = {
937 1270 "feq32", "feq32",
938 1271 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_feq32 = {
943 1276 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
944 1277 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
945 1278 }; };
1279 /*---------------------------------------------------------------------------*/
946 1280 static struct nir_op nir_fexp2 = { static struct nir_op nir_fexp2 = {
947 1281 "fexp2", "fexp2",
948 1282 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ffract = {
983 1317 {NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT},
984 1318 0 0
985 1319 }; };
1320 /*----------------------------------------------------------------------------*/
986 1321 static struct nir_op nir_fge = { static struct nir_op nir_fge = {
987 1322 "fge", "fge",
988 1323 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_fge = {
993 1328 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
994 1329 0 0
995 1330 }; };
1331 static struct nir_op nir_fge8 = {
1332 "fge8",
1333 NIR_OP_TYPE_ALU,
1334 0,
1335 NIR_TYPE_BOOL8,
1336 2,
1337 {0,0},
1338 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1339 0
1340 };
1341 static struct nir_op nir_fge16 = {
1342 "fge16",
1343 NIR_OP_TYPE_ALU,
1344 0,
1345 NIR_TYPE_BOOL16,
1346 2,
1347 {0,0},
1348 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1349 0
1350 };
996 1351 static struct nir_op nir_fge32 = { static struct nir_op nir_fge32 = {
997 1352 "fge32", "fge32",
998 1353 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_fge32 = {
1003 1358 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1004 1359 0 0
1005 1360 }; };
1361 /*----------------------------------------------------------------------------*/
1006 1362 static struct nir_op nir_find_lsb = { static struct nir_op nir_find_lsb = {
1007 1363 "find_lsb", "find_lsb",
1008 1364 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_flrp = {
1033 1389 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1034 1390 0 0
1035 1391 }; };
1392 /*----------------------------------------------------------------------------*/
1036 1393 static struct nir_op nir_flt = { static struct nir_op nir_flt = {
1037 1394 "flt", "flt",
1038 1395 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_flt = {
1043 1400 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1044 1401 0 0
1045 1402 }; };
1403 static struct nir_op nir_flt8 = {
1404 "flt8",
1405 NIR_OP_TYPE_ALU,
1406 0,
1407 NIR_TYPE_BOOL8,
1408 2,
1409 {0,0},
1410 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1411 0
1412 };
1413 static struct nir_op nir_flt16 = {
1414 "flt16",
1415 NIR_OP_TYPE_ALU,
1416 0,
1417 NIR_TYPE_BOOL16,
1418 2,
1419 {0,0},
1420 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1421 0
1422 };
1046 1423 static struct nir_op nir_flt32 = { static struct nir_op nir_flt32 = {
1047 1424 "flt32", "flt32",
1048 1425 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_flt32 = {
1053 1430 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1054 1431 0 0
1055 1432 }; };
1433 /*----------------------------------------------------------------------------*/
1056 1434 static struct nir_op nir_fmax = { static struct nir_op nir_fmax = {
1057 1435 "fmax", "fmax",
1058 1436 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_fmul = {
1123 1501 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1124 1502 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE
1125 1503 }; };
1504 /*----------------------------------------------------------------------------*/
1126 1505 static struct nir_op nir_fne = { static struct nir_op nir_fne = {
1127 1506 "fne", "fne",
1128 1507 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_fne = {
1133 1512 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1134 1513 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1135 1514 }; };
1515 static struct nir_op nir_fne8 = {
1516 "fne8",
1517 NIR_OP_TYPE_ALU,
1518 0,
1519 NIR_TYPE_BOOL8,
1520 2,
1521 {0,0},
1522 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1523 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1524 };
1525 static struct nir_op nir_fne16 = {
1526 "fne16",
1527 NIR_OP_TYPE_ALU,
1528 0,
1529 NIR_TYPE_BOOL16,
1530 2,
1531 {0,0},
1532 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1533 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1534 };
1136 1535 static struct nir_op nir_fne32 = { static struct nir_op nir_fne32 = {
1137 1536 "fne32", "fne32",
1138 1537 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_fne32 = {
1143 1542 {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT,NIR_TYPE_FLOAT},
1144 1543 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1145 1544 }; };
1545 /*----------------------------------------------------------------------------*/
1146 1546 static struct nir_op nir_fneg = { static struct nir_op nir_fneg = {
1147 1547 "fneg", "fneg",
1148 1548 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ftrunc = {
1454 1854 {NIR_TYPE_FLOAT}, {NIR_TYPE_FLOAT},
1455 1855 0 0
1456 1856 }; };
1857 /*----------------------------------------------------------------------------*/
1457 1858 static struct nir_op nir_i2b1 = { static struct nir_op nir_i2b1 = {
1458 1859 "i2b1", "i2b1",
1459 1860 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_i2b1 = {
1464 1865 {NIR_TYPE_INT}, {NIR_TYPE_INT},
1465 1866 0 0
1466 1867 }; };
1868 static struct nir_op nir_i2b8 = {
1869 "i2b8",
1870 NIR_OP_TYPE_ALU,
1871 0,
1872 NIR_TYPE_BOOL8,
1873 1,
1874 {0},
1875 {NIR_TYPE_INT},
1876 0
1877 };
1878 static struct nir_op nir_i2b16 = {
1879 "i2b16",
1880 NIR_OP_TYPE_ALU,
1881 0,
1882 NIR_TYPE_BOOL16,
1883 1,
1884 {0},
1885 {NIR_TYPE_INT},
1886 0
1887 };
1467 1888 static struct nir_op nir_i2b32 = { static struct nir_op nir_i2b32 = {
1468 1889 "i2b32", "i2b32",
1469 1890 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_i2b32 = {
1474 1895 {NIR_TYPE_INT}, {NIR_TYPE_INT},
1475 1896 0 0
1476 1897 }; };
1898 /*----------------------------------------------------------------------------*/
1477 1899 static struct nir_op nir_i2f16 = { static struct nir_op nir_i2f16 = {
1478 1900 "i2f16", "i2f16",
1479 1901 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_idiv = {
1625 2047 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1626 2048 0 0
1627 2049 }; };
2050 /*----------------------------------------------------------------------------*/
1628 2051 static struct nir_op nir_ieq = { static struct nir_op nir_ieq = {
1629 2052 "ieq", "ieq",
1630 2053 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ieq = {
1635 2058 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1636 2059 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1637 2060 }; };
2061 static struct nir_op nir_ieq8 = {
2062 "ieq8",
2063 NIR_OP_TYPE_ALU,
2064 0,
2065 NIR_TYPE_BOOL8,
2066 2,
2067 {0,0},
2068 {NIR_TYPE_INT,NIR_TYPE_INT},
2069 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
2070 };
2071 static struct nir_op nir_ieq16 = {
2072 "ieq16",
2073 NIR_OP_TYPE_ALU,
2074 0,
2075 NIR_TYPE_BOOL16,
2076 2,
2077 {0,0},
2078 {NIR_TYPE_INT,NIR_TYPE_INT},
2079 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
2080 };
1638 2081 static struct nir_op nir_ieq32 = { static struct nir_op nir_ieq32 = {
1639 2082 "ieq32", "ieq32",
1640 2083 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ieq32 = {
1645 2088 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1646 2089 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1647 2090 }; };
2091 /*----------------------------------------------------------------------------*/
1648 2092 static struct nir_op nir_ifind_msb = { static struct nir_op nir_ifind_msb = {
1649 2093 "ifind_msb", "ifind_msb",
1650 2094 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ifind_msb = {
1655 2099 NIR_TYPE_INT32, NIR_TYPE_INT32,
1656 2100 0 0
1657 2101 }; };
2102 /*----------------------------------------------------------------------------*/
1658 2103 static struct nir_op nir_ige = { static struct nir_op nir_ige = {
1659 2104 "ige", "ige",
1660 2105 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ige = {
1665 2110 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1666 2111 0 0
1667 2112 }; };
2113 static struct nir_op nir_ige8 = {
2114 "ige8",
2115 NIR_OP_TYPE_ALU,
2116 0,
2117 NIR_TYPE_BOOL8,
2118 2,
2119 {0,0},
2120 {NIR_TYPE_INT,NIR_TYPE_INT},
2121 0
2122 };
2123 static struct nir_op nir_ige16 = {
2124 "ige16",
2125 NIR_OP_TYPE_ALU,
2126 0,
2127 NIR_TYPE_BOOL16,
2128 2,
2129 {0,0},
2130 {NIR_TYPE_INT,NIR_TYPE_INT},
2131 0
2132 };
1668 2133 static struct nir_op nir_ige32 = { static struct nir_op nir_ige32 = {
1669 2134 "ige32", "ige32",
1670 2135 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ige32 = {
1675 2140 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1676 2141 0 0
1677 2142 }; };
2143 /*----------------------------------------------------------------------------*/
1678 2144 static struct nir_op nir_ihadd = { static struct nir_op nir_ihadd = {
1679 2145 "ihadd", "ihadd",
1680 2146 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ihadd = {
1685 2151 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1686 2152 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1687 2153 }; };
2154 /*----------------------------------------------------------------------------*/
1688 2155 static struct nir_op nir_ilt = { static struct nir_op nir_ilt = {
1689 2156 "ilt", "ilt",
1690 2157 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ilt = {
1695 2162 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1696 2163 0 0
1697 2164 }; };
2165 static struct nir_op nir_ilt8 = {
2166 "ilt8",
2167 NIR_OP_TYPE_ALU,
2168 0,
2169 NIR_TYPE_BOOL8,
2170 2,
2171 {0,0},
2172 {NIR_TYPE_INT,NIR_TYPE_INT},
2173 0
2174 };
2175 static struct nir_op nir_ilt16 = {
2176 "ilt16",
2177 NIR_OP_TYPE_ALU,
2178 0,
2179 NIR_TYPE_BOOL16,
2180 2,
2181 {0,0},
2182 {NIR_TYPE_INT,NIR_TYPE_INT},
2183 0
2184 };
1698 2185 static struct nir_op nir_ilt32 = { static struct nir_op nir_ilt32 = {
1699 2186 "ilt32", "ilt32",
1700 2187 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ilt32 = {
1705 2192 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1706 2193 0 0
1707 2194 }; };
2195 /*----------------------------------------------------------------------------*/
1708 2196 static struct nir_op nir_imax = { static struct nir_op nir_imax = {
1709 2197 "imax", "imax",
1710 2198 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_imul_high = {
1795 2283 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1796 2284 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1797 2285 }; };
2286 /*----------------------------------------------------------------------------*/
1798 2287 static struct nir_op nir_ine = { static struct nir_op nir_ine = {
1799 2288 "ine", "ine",
1800 2289 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ine = {
1805 2294 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1806 2295 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1807 2296 }; };
2297 static struct nir_op nir_ine8 = {
2298 "ine8",
2299 NIR_OP_TYPE_ALU,
2300 0,
2301 NIR_TYPE_BOOL8,
2302 2,
2303 {0,0},
2304 {NIR_TYPE_INT,NIR_TYPE_INT},
2305 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
2306 };
2307 static struct nir_op nir_ine16 = {
2308 "ine16",
2309 NIR_OP_TYPE_ALU,
2310 0,
2311 NIR_TYPE_BOOL16,
2312 2,
2313 {0,0},
2314 {NIR_TYPE_INT,NIR_TYPE_INT},
2315 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
2316 };
1808 2317 static struct nir_op nir_ine32 = { static struct nir_op nir_ine32 = {
1809 2318 "ine32", "ine32",
1810 2319 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ine32 = {
1815 2324 {NIR_TYPE_INT,NIR_TYPE_INT}, {NIR_TYPE_INT,NIR_TYPE_INT},
1816 2325 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
1817 2326 }; };
2327 /*----------------------------------------------------------------------------*/
1818 2328 static struct nir_op nir_ineg = { static struct nir_op nir_ineg = {
1819 2329 "ineg", "ineg",
1820 2330 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ufind_msb = {
2255 2765 {NIR_TYPE_UINT}, {NIR_TYPE_UINT},
2256 2766 0 0
2257 2767 }; };
2768 /*---------------------------------------------------------------------------*/
2258 2769 static struct nir_op nir_uge = { static struct nir_op nir_uge = {
2259 2770 "uge", "uge",
2260 2771 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_uge = {
2265 2776 {NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_UINT,NIR_TYPE_UINT},
2266 2777 0 0
2267 2778 }; };
2779 static struct nir_op nir_uge8 = {
2780 "uge8",
2781 NIR_OP_TYPE_ALU,
2782 0,
2783 NIR_TYPE_BOOL8,
2784 2,
2785 {0,0},
2786 {NIR_TYPE_UINT,NIR_TYPE_UINT},
2787 0
2788 };
2789 static struct nir_op nir_uge16 = {
2790 "uge16",
2791 NIR_OP_TYPE_ALU,
2792 0,
2793 NIR_TYPE_BOOL16,
2794 2,
2795 {0,0},
2796 {NIR_TYPE_UINT,NIR_TYPE_UINT},
2797 0
2798 };
2268 2799 static struct nir_op nir_uge32 = { static struct nir_op nir_uge32 = {
2269 2800 "uge32", "uge32",
2270 2801 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_uge32 = {
2275 2806 {NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_UINT,NIR_TYPE_UINT},
2276 2807 0 0
2277 2808 }; };
2809 /*---------------------------------------------------------------------------*/
2278 2810 static struct nir_op nir_uhadd = { static struct nir_op nir_uhadd = {
2279 2811 "uhadd", "uhadd",
2280 2812 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_uhadd = {
2285 2817 {NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_UINT,NIR_TYPE_UINT},
2286 2818 NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE
2287 2819 }; };
2820 /*---------------------------------------------------------------------------*/
2288 2821 static struct nir_op nir_ult = { static struct nir_op nir_ult = {
2289 2822 "ult", "ult",
2290 2823 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ult = {
2295 2828 {NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_UINT,NIR_TYPE_UINT},
2296 2829 0 0
2297 2830 }; };
2831 static struct nir_op nir_ult8 = {
2832 "ult8",
2833 NIR_OP_TYPE_ALU,
2834 0,
2835 NIR_TYPE_BOOL8,
2836 2,
2837 {0,0},
2838 {NIR_TYPE_UINT,NIR_TYPE_UINT},
2839 0
2840 };
2841 static struct nir_op nir_ult16 = {
2842 "ult16",
2843 NIR_OP_TYPE_ALU,
2844 0,
2845 NIR_TYPE_BOOL16,
2846 2,
2847 {0,0},
2848 {NIR_TYPE_UINT,NIR_TYPE_UINT},
2849 0
2850 };
2298 2851 static struct nir_op nir_ult32 = { static struct nir_op nir_ult32 = {
2299 2852 "ult32", "ult32",
2300 2853 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op nir_ult32 = {
2305 2858 {NIR_TYPE_UINT,NIR_TYPE_UINT}, {NIR_TYPE_UINT,NIR_TYPE_UINT},
2306 2859 0 0
2307 2860 }; };
2861 /*---------------------------------------------------------------------------*/
2308 2862 static struct nir_op nir_umax = { static struct nir_op nir_umax = {
2309 2863 "umax", "umax",
2310 2864 NIR_OP_TYPE_ALU, NIR_OP_TYPE_ALU,
 
... ... static struct nir_op *nir_ops[] = {
2858 3412 &nir_extract_u16, &nir_extract_u16,
2859 3413 &nir_extract_u8, &nir_extract_u8,
2860 3414 &nir_f2b1, &nir_f2b1,
3415 &nir_f2b8,
3416 &nir_f2b16,
2861 3417 &nir_f2b32, &nir_f2b32,
2862 3418 &nir_f2f16, &nir_f2f16,
2863 3419 &nir_f2f16_rtne, &nir_f2f16_rtne,
 
... ... static struct nir_op *nir_ops[] = {
2959 3515 /*---------*/ /*---------*/
2960 3516 &nir_ftrunc, &nir_ftrunc,
2961 3517 &nir_i2b1, &nir_i2b1,
3518 &nir_i2b8,
3519 &nir_i2b16,
2962 3520 &nir_i2b32, &nir_i2b32,
2963 3521 &nir_i2f16, &nir_i2f16,
2964 3522 &nir_i2f32, &nir_i2f32,
 
... ... static struct nir_op *nir_ops[] = {
3094 3652 &nir_amul, &nir_amul,
3095 3653 /* git 35e92a11ddb1450571afc2d66286b97098d486a1..4c9b9ed5f9c83d97ce6ec37c0dd5bfed53f913dc */ /* git 35e92a11ddb1450571afc2d66286b97098d486a1..4c9b9ed5f9c83d97ce6ec37c0dd5bfed53f913dc */
3096 3654 &nir_imad24_ir3, &nir_imad24_ir3,
3097 &nir_imul24
3655 &nir_imul24,
3656 /* git ef9635d0bce9383a22bb3a8506da4d55726e5d59..a2689ebcd68ccf9b3bcbf9bae926c70beccd6a11 */
3657 &nir_flt8,
3658 &nir_flt16,
3659 &nir_fge8,
3660 &nir_fge16,
3661 &nir_feq8,
3662 &nir_feq16,
3663 &nir_fne8,
3664 &nir_fne16,
3665 &nir_ilt8,
3666 &nir_ilt16,
3667 &nir_ige8,
3668 &nir_ige16,
3669 &nir_ieq8,
3670 &nir_ieq16,
3671 &nir_ine8,
3672 &nir_ine16,
3673 &nir_ult8,
3674 &nir_ult16,
3675 &nir_uge8,
3676 &nir_uge16,
3677 &nir_b8all_fequal2,
3678 &nir_b8all_fequal3,
3679 &nir_b8all_fequal4,
3680 &nir_b16all_fequal2,
3681 &nir_b16all_fequal3,
3682 &nir_b16all_fequal4,
3683 &nir_b8any_fnequal2,
3684 &nir_b8any_fnequal3,
3685 &nir_b8any_fnequal4,
3686 &nir_b16any_fnequal2,
3687 &nir_b16any_fnequal3,
3688 &nir_b16any_fnequal4,
3689 &nir_b8all_iequal2,
3690 &nir_b8all_iequal3,
3691 &nir_b8all_iequal4,
3692 &nir_b16all_iequal2,
3693 &nir_b16all_iequal3,
3694 &nir_b16all_iequal4,
3695 &nir_b8any_inequal2,
3696 &nir_b8any_inequal3,
3697 &nir_b8any_inequal4,
3698 &nir_b16any_inequal2,
3699 &nir_b16any_inequal3,
3700 &nir_b16any_inequal4,
3701 &nir_b8csel,
3702 &nir_b16csel
3098 3703 }; };
File builders/mesa-vulkan-0/contrib/generators/nir/nir_opcodes_c.c changed (mode: 100644) (index ee09d08..4a0a892)
... ... static u8 type_bits_n_n[ALU_TYPES_N] = {
71 71 5, /* int */ 5, /* int */
72 72 5, /* uint */ 5, /* uint */
73 73 3, /* float */ 3, /* float */
74 2, /* bool */
74 4, /* bool */
75 75 }; };
76 76 #define TYPE_BITS_N_N_MAX 5 #define TYPE_BITS_N_N_MAX 5
77 77
 
... ... static u8 type_bits_n[ALU_TYPES_N][TYPE_BITS_N_N_MAX] = {
80 80 { 1, 8, 16, 32 , 64}, /* int */ { 1, 8, 16, 32 , 64}, /* int */
81 81 { 1, 8, 16, 32 , 64}, /* uint */ { 1, 8, 16, 32 , 64}, /* uint */
82 82 { 16, 32 , 64}, /* float */ { 16, 32 , 64}, /* float */
83 { 1, 32}, /* bool */
83 { 1, 8, 16, 32}, /* bool */
84 84 }; };
85 85
86 86 static char *rnds_strs[3][2] = { static char *rnds_strs[3][2] = {
 
... ... static char *nir_type_str(u8 nir_type)
311 311 switch (nir_type) { switch (nir_type) {
312 312 case NIR_TYPE_BOOL: return "nir_type_bool"; case NIR_TYPE_BOOL: return "nir_type_bool";
313 313 case NIR_TYPE_BOOL1: return "nir_type_bool1"; case NIR_TYPE_BOOL1: return "nir_type_bool1";
314 case NIR_TYPE_BOOL8: return "nir_type_bool8";
315 case NIR_TYPE_BOOL16: return "nir_type_bool16";
314 316 case NIR_TYPE_BOOL32: return "nir_type_bool32"; case NIR_TYPE_BOOL32: return "nir_type_bool32";
315 317 case NIR_TYPE_INT: return "nir_type_int"; case NIR_TYPE_INT: return "nir_type_int";
316 318 case NIR_TYPE_INT1: return "nir_type_int1"; case NIR_TYPE_INT1: return "nir_type_int1";
File builders/mesa-vulkan-0/contrib/x86_64_amdgpu_linux_gnu_vulkan_x11_drm_gcc.sh changed (mode: 100755) (index 1bb30ed..c12111f)
... ... fi
112 112 # USE_GCC_ATOMIC_BUILTINS # USE_GCC_ATOMIC_BUILTINS
113 113 # enable the use of gcc built-ins for atomic operations in # enable the use of gcc built-ins for atomic operations in
114 114 # src/util/u_atomic.h # src/util/u_atomic.h
115 # HAVE_DLADDR:
116 # glibc dladdr mandatory for disk cache in utils
115 117 # HAVE_STRTOF: # HAVE_STRTOF:
116 118 # glibc provides strtof function, used in src/util/strtod.c # glibc provides strtof function, used in src/util/strtod.c
117 119 # HAVE_TIMESPEC_GET: # HAVE_TIMESPEC_GET:
 
... ... fi
177 179 # - HAVE_FUNC_ATTRIBUTE_VISIBILITY=1, enable the gcc visibilty attribute # - HAVE_FUNC_ATTRIBUTE_VISIBILITY=1, enable the gcc visibilty attribute
178 180 # only in mapi entry headers # only in mapi entry headers
179 181 # - MAJOR_IN_SYSMACROS=1, used in various parts of mesa, but no vulkan parts # - MAJOR_IN_SYSMACROS=1, used in various parts of mesa, but no vulkan parts
180 # - HAVE_DLADDR=1, used in the dri mega driver
181 182 # - HAVE_CLOCK_GETTIME=1, autoconf macro switch, used nowhere # - HAVE_CLOCK_GETTIME=1, autoconf macro switch, used nowhere
182 183 # - HAVE_PTHREAD_PRIO_INHERIT=1, m4 defined macro, used nowhere # - HAVE_PTHREAD_PRIO_INHERIT=1, m4 defined macro, used nowhere
183 184 # - USE_SSE41, enable ssee41 code paths in dri intel 965, and mesa vbo # - USE_SSE41, enable ssee41 code paths in dri intel 965, and mesa vbo
 
... ... linux_glibc_cppflags="\
235 236 -DHAVE_LINUX_FUTEX_H \ -DHAVE_LINUX_FUTEX_H \
236 237 -DHAVE_ENDIAN_H=1 \ -DHAVE_ENDIAN_H=1 \
237 238 -DHAVE_PROGRAM_INVOCATION_NAME=1 \ -DHAVE_PROGRAM_INVOCATION_NAME=1 \
239 -DHAVE_DLADDR=1 \
238 240 " "
239 241 mesa_cppflags="\ mesa_cppflags="\
240 242 -DNDEBUG \ -DNDEBUG \
 
... ... $cc $cppflags $src_dir/src/vulkan/util/vk_debug_report.c \
661 663 -o $build_dir/vk_debug_report.o & -o $build_dir/vk_debug_report.o &
662 664 $cc $cppflags $src_dir/src/vulkan/util/vk_util.c \ $cc $cppflags $src_dir/src/vulkan/util/vk_util.c \
663 665 -o $build_dir/vk_util.o & -o $build_dir/vk_util.o &
666 # $src_dir/src/vulkan/util/vk_format.c deprecated
664 667 #------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
665 668 $cc $cppflags $build_dir/vk_enum_to_str.c \ $cc $cppflags $build_dir/vk_enum_to_str.c \
666 669 -o $build_dir/vk_enum_to_str.o & -o $build_dir/vk_enum_to_str.o &
 
... ... $src_dir/src/compiler/nir/nir_serialize.c \
1143 1146 $src_dir/src/compiler/nir/nir_split_per_member_structs.c \ $src_dir/src/compiler/nir/nir_split_per_member_structs.c \
1144 1147 $src_dir/src/compiler/nir/nir_split_var_copies.c \ $src_dir/src/compiler/nir/nir_split_var_copies.c \
1145 1148 $src_dir/src/compiler/nir/nir_split_vars.c \ $src_dir/src/compiler/nir/nir_split_vars.c \
1146 $src_dir/src/compiler/nir/nir_strip.c \
1147 1149 $src_dir/src/compiler/nir/nir_sweep.c \ $src_dir/src/compiler/nir/nir_sweep.c \
1148 1150 $src_dir/src/compiler/nir/nir_to_lcssa.c \ $src_dir/src/compiler/nir/nir_to_lcssa.c \
1149 1151 $src_dir/src/compiler/nir/nir_validate.c \ $src_dir/src/compiler/nir/nir_validate.c \
 
... ... $cppflags_common \
1355 1357 -DPACKAGE_VERSION=\"$version\" \ -DPACKAGE_VERSION=\"$version\" \
1356 1358 -I$build_dir/src/util \ -I$build_dir/src/util \
1357 1359 -I$build_dir \ -I$build_dir \
1358 -I$src_dir/src/gallium/auxiliary \
1359 -I$src_dir/src/gallium/include \
1360 -I$src_dir/src/vulkan/util \
1361 -I$src_dir/src/vulkan/wsi \
1362 1360 -I$src_dir/src/amd/compiler \ -I$src_dir/src/amd/compiler \
1363 1361 -I$src_dir/src/amd/llvm \ -I$src_dir/src/amd/llvm \
1364 1362 -I$src_dir/src/amd/common \ -I$src_dir/src/amd/common \
1365 1363 -I$src_dir/src/amd/vulkan \ -I$src_dir/src/amd/vulkan \
1366 1364 -I$src_dir/src/amd \ -I$src_dir/src/amd \
1365 -I$src_dir/src/gallium/auxiliary \
1366 -I$src_dir/src/gallium/include \
1367 -I$src_dir/src/vulkan/util \
1368 -I$src_dir/src/vulkan/wsi \
1367 1369 -I$src_dir/src/mesa \ -I$src_dir/src/mesa \
1368 1370 -I$src_dir/src/compiler/nir \ -I$src_dir/src/compiler/nir \
1369 1371 -I$src_dir/src/compiler \ -I$src_dir/src/compiler \
File builders/mplayer-0/builder.sh changed (mode: 100644) (index b2e7389..b74403f)
1 1 src_name=mplayer src_name=mplayer
2 date=2019-11-18
2 date=2019-11-24
3 3 archive_name=$src_name-export-snapshot.tar.bz2 archive_name=$src_name-export-snapshot.tar.bz2
4 4 url0=http://www.mplayerhq.hu/MPlayer/releases/$archive_name url0=http://www.mplayerhq.hu/MPlayer/releases/$archive_name
5 ffmpeg_git_commit=f897d8c863c54acbe15f3149ca0d6b774fab2cf5
5 ffmpeg_git_commit=d65aaf8ea986bb138ca0a6e86825c5ce03b9013a
6 6
7 7 src_dir=$src_dir_root/$src_name-export-$date src_dir=$src_dir_root/$src_name-export-$date
8 8 cd $src_dir_root cd $src_dir_root
 
... ... export "PKG_CONFIG_PATH=\
45 45 -I/nyan/zlib/current/include \ -I/nyan/zlib/current/include \
46 46 -I/nyan/bzip2/current/include \ -I/nyan/bzip2/current/include \
47 47 -I/nyan/mesa-gl/current/include \ -I/nyan/mesa-gl/current/include \
48 -I/nyan/dav1d/current/include \
48 49 -O2 -pipe -fPIC -w" \ -O2 -pipe -fPIC -w" \
49 50 "--extra-ldflags=\ "--extra-ldflags=\
50 51 -B/nyan/glibc/current/lib -L/nyan/glibc/current/lib -static-libgcc \ -B/nyan/glibc/current/lib -L/nyan/glibc/current/lib -static-libgcc \
 
... ... export "PKG_CONFIG_PATH=\
60 61 /nyan/libXfixes/current/lib:\ /nyan/libXfixes/current/lib:\
61 62 /nyan/libXxf86vm/current/lib:\ /nyan/libXxf86vm/current/lib:\
62 63 /nyan/drm/current/lib:\ /nyan/drm/current/lib:\
63 /nyan/mesa-gl/current/lib \
64 /nyan/mesa-gl/current/lib:\
65 /nyan/dav1d/current/lib \
64 66 \ \
65 67 -L/nyan/toolchains/current/lib \ -L/nyan/toolchains/current/lib \
66 68 -L/nyan/fribidi/current/lib \ -L/nyan/fribidi/current/lib \
 
... ... export "PKG_CONFIG_PATH=\
74 76 -L/nyan/alsa-lib/current/lib \ -L/nyan/alsa-lib/current/lib \
75 77 -L/nyan/zlib/current/lib \ -L/nyan/zlib/current/lib \
76 78 -L/nyan/bzip2/current/lib \ -L/nyan/bzip2/current/lib \
79 -L/nyan/dav1d/current/lib \
77 80 -L/nyan/mesa-gl/current/lib" \ -L/nyan/mesa-gl/current/lib" \
78 "--extra-libs-mplayer=-lGL -lXext -lX11 -lass -lfribidi -lfreetype -lfontconfig -luuid -lpthread" \
81 "--extra-libs-mplayer=-lGL -lXext -lX11 -lass -lfribidi -lfreetype -lfontconfig -luuid -ldav1d -lpthread" \
82 --enable-decoder=libdav1d_decoder \
79 83 --disable-mencoder \ --disable-mencoder \
80 84 --enable-mplayer \ --enable-mplayer \
81 85 --disable-termcap \ --disable-termcap \
 
... ... export "PKG_CONFIG_PATH=\
227 231 --disable-xvr100 \ --disable-xvr100 \
228 232 --disable-bl \ --disable-bl \
229 233 --disable-tdfxvid \ --disable-tdfxvid \
230 --disable-xvr100 \
231 234 --disable-tga \ --disable-tga \
232 235 --disable-pnm \ --disable-pnm \
233 236 --disable-md5sum \ --disable-md5sum \
 
... ... export "PKG_CONFIG_PATH=\
255 258 make -j $threads_n make -j $threads_n
256 259 make install make install
257 260
261 # add gross av1 stuff
262 cp -f $src_dir/etc/codecs.conf /nyan/$src_name/0/etc/mplayer
263 cat >>/nyan/$src_name/0/etc/mplayer/codecs.conf <<EOF
264
265 videocodec fflibdav1d
266 info "FFmpeg libdav1d"
267 status working
268 ; mkv
269 format 0x31307661
270 ; mp4
271 format 0x31305641
272 driver ffmpeg
273 dll libdav1d
274 out YV12,420P10,420P12
275 out 422P,422P10,422P12
276 out 440P,440P10,440P12
277 out 444P,444P10,444P12
278 out GBR10P,GBR12P,GBR24P
279
280 EOF
281
258 282 # cleanup and tidying # cleanup and tidying
259 283 rm -Rf /nyan/$src_name/0/share rm -Rf /nyan/$src_name/0/share
260 284 rm -Rf /nyan/$src_name/0/lib rm -Rf /nyan/$src_name/0/lib
File builders/xf86-video-amdgpu-1/builder.sh changed (mode: 100644) (index 5bfdbc6..2d5e9c7)
1 1 src_name=xf86-video-amdgpu src_name=xf86-video-amdgpu
2 git_commit=5b8bc9fc505c551dcd9b0ed5ab835a49fa4f9fda
2 git_commit=fd66f5c0bea2b7c22a47bfd5eb1f22d32d166d9c
3 3 git_url0=git://anongit.freedesktop.org/xorg/driver/$pkg_name git_url0=git://anongit.freedesktop.org/xorg/driver/$pkg_name
4 4
5 5 src_dir=$src_dir_root/$src_name src_dir=$src_dir_root/$src_name
File builders/xserver-0/builder.sh changed (mode: 100644) (index 94b8325..d084fc4)
1 1 src_name=xserver src_name=xserver
2 git_commit=eddad048e35cbf0968d0f892009a248359a15ecd
2 git_commit=e6ab7f9f342f463092c45226f3294074351fdd5e
3 3 git_url0=git://anongit.freedesktop.org/xorg/$src_name git_url0=git://anongit.freedesktop.org/xorg/$src_name
4 4
5 5 src_dir=$src_dir_root/$src_name src_dir=$src_dir_root/$src_name
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/sylware/nyanlinux

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/sylware/nyanlinux

Clone this repository using git:
git clone git://git.rocketgit.com/user/sylware/nyanlinux

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main