summaryrefslogtreecommitdiffstats
BranchCommit messageAuthorAge
gallium_va_encpackedheader01gallium/va/encpackedheader 01: Boldly claim VA_ENC_PACKED_HEADER_* SEQUENCE|S...Sven Gothel4 years
masterllvmpipe: add framebuffer fetching support (v1.1)Dave Airlie4 years
 
TagDownloadAuthorAge
mesa-20.1.3commit 663fa46287...Eric Engestrom4 years
mesa-20.1.2commit 3e417e7cb6...Eric Engestrom5 years
mesa-20.0.8commit 1ad0ce42de...Dylan Baker5 years
mesa-20.1.1commit 127c2be9c5...Eric Engestrom5 years
mesa-20.1.0commit 7de17e2520...Eric Engestrom5 years
mesa-20.1.0-rc4commit d41ccffb63...Eric Engestrom5 years
mesa-20.0.7commit e925e97746...Dylan Baker5 years
mesa-20.1.0-rc3commit c49fbacd94...Eric Engestrom5 years
mesa-20.1.0-rc2commit e658e900bb...Eric Engestrom5 years
mesa-20.0.6commit 4c59d9944a...Dylan Baker5 years
mesa-20.1.0-rc1commit 0865c5107f...Eric Engestrom5 years
20.1-branchpointcommit 3e1b93ec4f...Eric Engestrom5 years
mesa-20.0.5commit 728cf6631f...Dylan Baker5 years
mesa-20.0.4commit d3586b5291...Eric Engestrom5 years
mesa-20.0.3commit 103f12d23e...Eric Engestrom5 years
mesa-20.0.2commit fa6e67066b...Dylan Baker5 years
mesa-19.3.5commit 4ef9bd07c5...Eric Engestrom5 years
mesa-20.0.1commit 53b2b224dc...Dylan Baker5 years
mesa-20.0.0commit 9abde3412d...Dylan Baker5 years
mesa-19.3.4commit 7a3190eb91...Dylan Baker5 years
mesa-20.0.0-rc3commit 6bbbef9699...Dylan Baker5 years
mesa-20.0.0-rc2commit 440e52ca03...Dylan Baker5 years
mesa-20.0.0-rc1commit 21f5d79c7b...Dylan Baker5 years
20.0-branchpointcommit 58fd26c433...Brian Ho5 years
mesa-19.3.3commit 352037317b...Dylan Baker5 years
mesa-19.3.2commit 8734effe13...Dylan Baker5 years
mesa-19.2.8commit 34896d2299...Dylan Baker5 years
mesa-19.3.1commit c5ff7fbeab...Dylan Baker5 years
mesa-19.3.0commit 4c8bd415b4...Dylan Baker5 years
mesa-19.2.7commit 65d255cd1e...Dylan Baker5 years
mesa-19.3.0-rc6commit 9b189cb9b1...Dylan Baker5 years
mesa-19.3.0-rc5commit 5a12bc6454...Dylan Baker5 years
mesa-19.2.6commit 5836dd66e0...Dylan Baker5 years
mesa-19.3.0-rc4commit cd736de7aa...Dylan Baker5 years
mesa-19.2.5commit f418e9231a...Dylan Baker5 years
mesa-19.3.0-rc3commit 3d9c678772...Dylan Baker5 years
mesa-19.2.4commit 6f1b8e554f...Dylan Baker5 years
mesa-19.3.0-rc2commit 15342abc5b...Dylan Baker5 years
mesa-19.2.3commit 019dbc4b3b...Dylan Baker5 years
mesa-19.3.0-rc1commit 20512e9ddb...Dylan Baker5 years
19.3-branchpointcommit 98da208660...Dylan Baker5 years
mesa-19.2.2commit c5f5ce1e37...Dylan Baker5 years
mesa-19.1.8commit 5c6d266c59...Juan A. Suarez Romero5 years
mesa-19.2.1commit 877417918f...Dylan Baker5 years
mesa-19.2.0commit 0c47b502c2...Dylan Baker5 years
mesa-19.2.0-rc4commit 71fafc13b9...Dylan Baker5 years
mesa-19.1.7commit f632aac938...Juan A. Suarez Romero5 years
mesa-19.2.0-rc3commit 3771534b2f...Dylan Baker5 years
mesa-19.2.0-rc2commit 7f9b49218f...Dylan Baker5 years
mesa-19.1.6commit 85c8f88a49...Juan A. Suarez Romero5 years
mesa-19.1.5commit a384fe0ceb...Juan A. Suarez Romero5 years
mesa-19.2.0-rc1commit c0b9399d9d...Emil Velikov5 years
19.2-branchpointcommit 71fb721ca5...Emil Velikov5 years
mesa-19.1.4commit b84ffa028d...Juan A. Suarez Romero5 years
chadv/review/anv-drm-format-mod/2019-08-01-r1commit dad560939c...Chad Versace5 years
chadv/review/anv-drm-format-mod/2019-07-26-r1commit 3678509c33...Chad Versace5 years
mesa-19.1.3commit 09a1b2bdba...Juan A. Suarez Romero5 years
mesa-19.1.2commit fe1f7b538b...Juan A. Suarez Romero5 years
mesa-19.0.8commit 1625c02d65...Dylan Baker5 years
mesa-19.1.1commit 22eddd8b9d...Juan A. Suarez Romero6 years
mesa-19.0.7commit 7efa08da14...Dylan Baker6 years
mesa-19.1.0commit 1517811f4f...Juan A. Suarez Romero6 years
mesa-19.0.6commit 095d22b2cb...Dylan Baker6 years
mesa-19.1.0-rc5commit 9d8f104f39...Juan A. Suarez Romero6 years
mesa-19.1.0-rc4commit dd9635c1d2...Juan A. Suarez Romero6 years
mesa-19.0.5commit 9e3d9c4e13...Dylan Baker6 years
mesa-19.1.0-rc3commit 1dd62eb6e2...Juan A. Suarez Romero6 years
mesa-19.1.0-rc2commit c03d9a7fa9...Juan A. Suarez Romero6 years
mesa-19.0.4commit a17ac460a2...Dylan Baker6 years
mesa-19.1.0-rc1commit 5d72a334e8...Juan A. Suarez Romero6 years
19.1-branchpointcommit bdd273d873...Rob Clark6 years
mesa-19.0.3commit c8cdee5dc3...Dylan Baker6 years
mesa-19.0.2commit 2964ee3ad0...Dylan Baker6 years
mesa-18.3.6commit 11049bcff8...Emil Velikov6 years
mesa-19.0.1commit 08fbf25ce1...Dylan Baker6 years
mesa-18.3.5commit 022708cb40...Emil Velikov6 years
mesa-19.0.0commit 5925a57258...Dylan Baker6 years
mesa-19.0.0-rc7commit f852e93815...Dylan Baker6 years
chadv/cros-mesa-19.0-r1-vanillacommit b43b55d461...Juan A. Suarez Romero6 years
cros-mesa-19.0-r1-vanillacommit b43b55d461...Juan A. Suarez Romero6 years
mesa-19.0.0-rc6commit 3e72463ce0...Dylan Baker6 years
mesa-19.0.0-rc5commit 2e7833ad91...Dylan Baker6 years
arc-mesa-19.0-r1-vanillacommit 2e7833ad91...Dylan Baker6 years
chadv/arc-mesa-19.0-r1-vanillacommit 2e7833ad91...Dylan Baker6 years
mesa-18.3.4commit b26488dead...Emil Velikov6 years
mesa-19.0.0-rc4commit 838baab472...Dylan Baker6 years
mesa-19.0.0-rc3commit 56a47e3421...Dylan Baker6 years
mesa-19.0.0-rc2commit 131f12d49f...Dylan Baker6 years
mesa-18.3.3commit 190a79f462...Emil Velikov6 years
mesa-19.0.0-rc1commit 2fddad9e3f...Dylan Baker6 years
mesa-19.0-rc1commit 2fddad9e3f...Dylan Baker6 years
19.0-branchpointcommit 90a7a9c973...Dylan Baker6 years
mesa-18.3.2commit 95a3b709c0...Emil Velikov6 years
mesa-18.2.8commit 785e09e3b3...Juan A. Suarez Romero6 years
mesa-18.2.7commit 419ee20097...Juan A. Suarez Romero6 years
mesa-18.3.1commit f6ad9cf1eb...Emil Velikov6 years
mesa-18.3.0commit d603cd9d84...Emil Velikov6 years
mesa-18.3.0-rc6commit af223b57a4...Emil Velikov6 years
mesa-18.3.0-rc5commit b28aa1178a...Emil Velikov6 years
mesa-18.2.6commit 3e741344d7...Juan A. Suarez Romero6 years
mesa-18.3.0-rc4commit 33f1569f02...Emil Velikov6 years
mesa-18.3.0-rc3commit 4b3f884673...Emil Velikov6 years
mesa-18.2.5commit f34bddc325...Juan A. Suarez Romero6 years
mesa-18.3.0-rc2commit f55265776f...Emil Velikov6 years
mesa-18.3.0-rc1commit 949b1048f7...Emil Velikov6 years
18.3-branchpointcommit 1f41104b9b...Emil Velikov6 years
mesa-18.2.4commit 1cdef5e70c...Juan A. Suarez Romero6 years
mesa-18.2.3commit d219361b42...Juan A. Suarez Romero6 years
mesa-18.2.2commit abaeb79eb2...Juan A. Suarez Romero6 years
mesa-18.1.9commit f57f37f3ba...Dylan Baker6 years
mesa-18.2.1commit 3c8c851fe4...Juan A. Suarez Romero6 years
mesa-18.2.0commit 7378180e7a...Andres Gomez6 years
mesa-18.1.8commit 92497d659b...Dylan Baker6 years
mesa-18.2.0-rc6commit 86704dc08f...Andres Gomez6 years
mesa-18.2.0-rc5commit 3d52cfe80b...Andres Gomez6 years
mesa-18.1.7commit ab384a10ce...Dylan Baker6 years
mesa-18.2.0-rc4commit 86aa912dda...Andres Gomez6 years
mesa-18.2.0-rc3commit dcd3786e6e...Andres Gomez6 years
mesa-18.1.6commit 5343019cfa...Dylan Baker6 years
mesa-18.2.0-rc2commit 4a25d8b623...Andres Gomez6 years
mesa-18.2.0-rc1commit cb542ac550...Andres Gomez6 years
18.2-branchpointcommit 8d3ccdbb9b...Andres Gomez6 years
chadv/wip/arc-18.2.0-pre1-i965-mutable-render-buffer-2018-07-30commit 8cb2b5c37a...Chad Versace6 years
mesa-18.1.5commit 711035e355...Dylan Baker6 years
mesa-18.1.4commit 7f76bfcc7e...Dylan Baker6 years
mesa-18.1.3commit f7e89b2f48...Dylan Baker6 years
mesa-18.1.2commit aa1f6934f8...Dylan Baker7 years
mesa-18.0.5commit ca0037aaef...Juan A. Suarez Romero7 years
mesa-18.1.1commit 1f3536b80b...Dylan Baker7 years
mesa-18.1.0commit 204159b481...Dylan Baker7 years
mesa-18.0.4commit 3b49ab6219...Juan A. Suarez Romero7 years
mesa-18.1.0-rc4commit 630559e054...Dylan Baker7 years
mesa-18.0.3commit 6dc2658fd6...Juan A. Suarez Romero7 years
mesa-18.1.0-rc3commit ea1d5faa96...Dylan Baker7 years
chadv/wip/arc-17.3-i965-mutable-render-buffer-v06commit 3302281f00...Chad Versace7 years
mesa-18.0.2commit d38da7bd2d...Juan A. Suarez Romero7 years
mesa-18.1.0-rc2commit c2768b8a51...Dylan Baker7 years
mesa-18.1.0-rc1commit ff1ecebb1d...Dylan Baker7 years
18.1-branchpointcommit 6754c2e83d...Dylan Baker7 years
mesa-18.0.1commit 8bd719e3fa...Juan A. Suarez Romero7 years
mesa-17.3.9commit 6d88ea9dd4...Juan A. Suarez Romero7 years
mesa-17.3.8commit 3bf5c10c5c...Juan A. Suarez Romero7 years
mesa-18.0.0commit dceb1ce807...Emil Velikov7 years
mesa-17.3.7commit 8a51f3857c...Juan A. Suarez Romero7 years
mesa-18.0.0-rc5commit 15f1b50cee...Emil Velikov7 years
mesa-17.3.6commit b3e5a3f35b...Emil Velikov7 years
mesa-17.3.5commit 2529d77179...Emil Velikov7 years
mesa-17.3.4commit 2f9820c553...Emil Velikov7 years
mesa-18.0.0-rc4commit 1e1734634b...Emil Velikov7 years
mesa-18.0.0-rc3commit 17c0e248d7...Emil Velikov7 years
chadv/cros-mesa-18.1_pre1-r4-vanillacommit 131e871385...Rafael Antognolli7 years
cros-mesa-18.1_pre1-r4-vanillacommit 131e871385...Rafael Antognolli7 years
mesa-18.0.0-rc2commit 99a48002a2...Emil Velikov7 years
mesa-18.0-0-rc1commit e91e68d6a8...Emil Velikov7 years
mesa-18.0.0-rc1commit e91e68d6a8...Emil Velikov7 years
18.0-branchpointcommit a9db8ac935...Emil Velikov7 years
mesa-17.3.3commit 80f5f279b3...Juan A. Suarez Romero7 years
mesa-17.3.2commit 0f27052e32...Emil Velikov7 years
mesa-17.2.8commit 3482790712...Andres Gomez7 years
mesa-17.3.1commit 4f5e85e9e9...Emil Velikov7 years
mesa-17.2.7commit 834c36fa65...Emil Velikov7 years
mesa-17.3.0commit 8d55da9f57...Emil Velikov7 years
mesa-17.3.0-rc6commit 30abe7dfae...Emil Velikov7 years
mesa-17.2.6commit 00b52f8e99...Andres Gomez7 years
mesa-17.3.0-rc5commit d1e6cf4639...Emil Velikov7 years
mesa-17.3.0-rc4commit cb9d207ff3...Emil Velikov7 years
mesa-17.2.5commit ae52410bf0...Andres Gomez7 years
chadv/review/anv-dma-buf-v01commit e44b35b37e...Chad Versace7 years
mesa-17.3.0-rc3commit 19b62847e0...Emil Velikov7 years
mesa-17.2.4commit a4b72e2643...Andres Gomez7 years
mesa-17.3.0-rc2commit 3eb187f376...Emil Velikov7 years
mesa-17.3.0-rc1commit ae720e2873...Emil Velikov7 years
17.3-branchpointcommit 2665d012a8...Emil Velikov7 years
mesa-17.2.3commit 28dc4b64f2...Emil Velikov7 years
chadv/cros-mesa-17.2.3-vanillacommit 11adea4b24...Marek Olšák7 years
cros-mesa-17.2.3-vanillacommit 11adea4b24...Marek Olšák7 years
mesa-17.2.2commit bc12538a8e...Juan A. Suarez Romero7 years
mesa-17.1.10commit 834d6c60db...Juan A. Suarez Romero7 years
mesa-17.2.1commit d6d2b6b5ec...Emil Velikov7 years
mesa-17.1.9commit aef6ffabf9...Andres Gomez7 years
mesa-17.2.0commit f5925b2897...Emil Velikov7 years
mesa-17.2.0-rc6commit 909f2b6aa2...Emil Velikov7 years
mesa-17.1.8commit e644f9996b...Andres Gomez7 years
mesa-17.1.7commit c2d9f33f2c...Andres Gomez7 years
mesa-17.2.0-rc5commit 15f23fb855...Emil Velikov7 years
mesa-17.2.0-rc4commit 3165f9877e...Emil Velikov7 years
mesa-17.1.6commit 3d48433078...Emil Velikov7 years
mesa-17.2.0-rc3commit 29df4deef2...Emil Velikov7 years
mesa-17.2.0-rc2commit 58fe86a6d6...Emil Velikov7 years
mesa-17.2.0-rc1commit a455f594bb...Emil Velikov7 years
17.2-branchpointcommit 33236a306d...Emil Velikov7 years
mesa-17.1.5commit 2542ddd4dc...Andres Gomez7 years
chadv/cros-mesa-17.1.1-r3-vanillacommit 7250cbafb9...Kenneth Graunke7 years
cros-mesa-17.1.1-r3-vanillacommit 7250cbafb9...Kenneth Graunke7 years
mesa-17.1.4commit e60d010ef4...Andres Gomez7 years
chadv/cros-mesa-17.1.1-r14-vanillacommit 277621bbb7...Bruce Cherniak7 years
cros-mesa-17.1.1-r14-vanillacommit 277621bbb7...Bruce Cherniak7 years
mesa-17.1.3commit f60875e211...Emil Velikov8 years
mesa-17.1.2commit 97f6404e50...Juan A. Suarez Romero8 years
mesa-17.0.7commit 46cc7a1746...Emil Velikov8 years
mesa-17.1.1commit ca0a148a4d...Emil Velikov8 years
mesa-17.0.6commit 08abf3a2a2...Andres Gomez8 years
mesa-17.1.0commit 15a38605fc...Emil Velikov8 years
mesa-17.1.0-rc4commit da13cc7e4b...Emil Velikov8 years
chadv/review/fix-lost-android-window-v01commit 202ef9b8eb...Chad Versace8 years
mesa-17.1.0-rc3commit 72e52fa7c8...Emil Velikov8 years
mesa-17.0.5commit 61b134a862...Andres Gomez8 years
mesa-17.1.0-rc2commit 2bf79cb2f1...Emil Velikov8 years
mesa-17.1.0-rc1commit ed846b4c78...Emil Velikov8 years
mesa-17.0.4commit 367bafc7c1...Emil Velikov8 years
17.1-branchpointcommit 7748c3f5eb...Emil Velikov8 years
mesa-17.0.3commit 7f34ecae7f...Andres Gomez8 years
mesa-17.0.2commit 373d88a711...Emil Velikov8 years
mesa-13.0.6commit fcef88d13a...Emil Velikov8 years
mesa-17.0.1commit 8fee1d348c...Emil Velikov8 years
mesa-13.0.5commit 71f3ff57fa...Emil Velikov8 years
mesa-17.0.0commit 683462e680...Emil Velikov8 years
mesa-17.0.0-rc3commit 07571cd8cc...Emil Velikov8 years
mesa-13.0.4commit 3255d10da4...Emil Velikov8 years
chadv/cros-mesa-17.1.0-r1-vanillacommit 9baf1ff8fc...Eric Anholt8 years
chadv/cros-mesa-17.1.0-r2-vanillacommit 9baf1ff8fc...Eric Anholt8 years
cros-mesa-17.1.0-r1-vanillacommit 9baf1ff8fc...Eric Anholt8 years
cros-mesa-17.1.0-r2-vanillacommit 9baf1ff8fc...Eric Anholt8 years
mesa-17.0.0-rc2commit d283ec0a7b...Emil Velikov8 years
mesa-12.0.6commit 555885a0bf...Emil Velikov8 years
mesa-17.0.0-rc1commit 9cb066601c...Emil Velikov8 years
17.0-branchpointcommit d1efa09d34...Emil Velikov8 years
mesa-13.0.3commit bec04114d2...Emil Velikov8 years
mesa-12.0.5commit 01579a9d00...Emil Velikov8 years
mesa-13.0.2commit c9e993ba13...Emil Velikov8 years
mesa-13.0.1commit f2f487ebbb...Emil Velikov8 years
mesa-12.0.4commit 20370d4f1b...Emil Velikov8 years
mesa-13.0.0commit df1b0a5a86...Emil Velikov8 years
mesa-13.0.0-rc3commit 91b2b925d1...Emil Velikov8 years
mesa-13.0.0-rc2commit f623a8be3e...Emil Velikov8 years
mesa-13.0.0-rc1commit e45c4586c2...Emil Velikov8 years
13.0-branchpointcommit 3ef8d4288a...Emil Velikov8 years
mesa-12.0.3commit d79b2e7bf3...Emil Velikov8 years
mesa-12.0.2commit 2fc6a31f10...Emil Velikov8 years
mesa-12.0.1commit 04277f058d...Emil Velikov8 years
mesa-12.0.0commit 8b06176f31...Emil Velikov8 years
mesa-12.0.0-rc4commit 5e0b11cb6d...Emil Velikov9 years
mesa-12.0.0-rc3commit 7d41c8aa25...Emil Velikov9 years
chadv/cros-mesa-12.1.0-r3-vanillacommit b010fa8567...Timothy Arceri9 years
chadv/cros-mesa-12.1.0-r5-vanillacommit b010fa8567...Timothy Arceri9 years
chadv/cros-mesa-12.1.0-r7-vanillacommit b010fa8567...Timothy Arceri9 years
cros-mesa-12.1.0-r3-vanillacommit b010fa8567...Timothy Arceri9 years
cros-mesa-12.1.0-r5-vanillacommit b010fa8567...Timothy Arceri9 years
cros-mesa-12.1.0-r7-vanillacommit b010fa8567...Timothy Arceri9 years
mesa-12.0.0-rc2commit a7649abe9f...Emil Velikov9 years
mesa-12.0.0-rc1commit 9a56e7d25b...Emil Velikov9 years
12.0-branchpointcommit f25fdf21e7...Emil Velikov9 years
mesa-11.2.2commit 3a9f6283f4...Emil Velikov9 years
mesa-11.1.4commit 514a330cc0...Emil Velikov9 years
mesa-11.1.3commit ca2fbf6f8f...Emil Velikov9 years
mesa-11.2.1commit 21e6440e82...Emil Velikov9 years
mesa-11.2.0commit ff9ddb9eb1...Emil Velikov9 years
mesa-11.2.0-rc4commit bcb7e8b084...Emil Velikov9 years
mesa-11.2.0-rc3commit 9f21fdd8e6...Emil Velikov9 years
mesa-11.2.0-rc2commit 33b045688d...Emil Velikov9 years
mesa-11.2.0-rc1commit 35b7adb937...Emil Velikov9 years
11.2-branchpointcommit 4cd5e5b48e...Emil Velikov9 years
mesa-11.1.2commit 7bcd827806...Emil Velikov9 years
mesa-11.0.9commit 02028d679b...Emil Velikov9 years
mesa-11.1.1commit 330aa44a0d...Emil Velikov9 years
mesa-11.0.8commit 261daab6b4...Emil Velikov9 years
mesa-11.1.0commit 5a616125ac...Emil Velikov9 years
mesa-11.0.7commit bec983b738...Emil Velikov9 years
mesa-11.1.0-rc3commit 20db46c227...Emil Velikov9 years
mesa-11.1.0-rc2commit aefd6769e8...Emil Velikov9 years
mesa-11.1.0-rc1commit f9339359d5...Emil Velikov9 years
11.1-branchpointcommit 623f64efc1...Emil Velikov9 years
mesa-11.0.6commit 04fd3a6f62...Emil Velikov9 years
mesa-11.0.5commit ee57c22141...Emil Velikov9 years
mesa-11.0.4commit 31bf247031...Emil Velikov9 years
mesa-11.0.3commit 914966befc...Emil Velikov9 years
mesa-10.6.9commit ab9aacce2d...Emil Velikov9 years
mesa-11.0.2commit 51e0b06d99...Emil Velikov9 years
mesa-11.0.1commit bcb9e1d26b...Emil Velikov9 years
vulkan-protex-2015.09.24.r01commit e9dff5bb99...Jason Ekstrand9 years
mesa-10.6.8commit 91c6302734...Emil Velikov9 years
mesa-11.0.0commit 4f1e500150...Emil Velikov9 years
mesa-10.6.7commit 32efdc87cb...Emil Velikov9 years
mesa-11.0.0-rc3commit 271290f077...Emil Velikov9 years
mesa-10.6.6commit 4b05739e9d...Emil Velikov9 years
vulkan-protex-2015.09.24.r01-basecommit 76f17266ec...Nanley Chery9 years
mesa-11.0.0-rc2commit 3f8d44210c...Emil Velikov9 years
mesa-11.0.0-rc1commit ab94875352...Emil Velikov9 years
11.0-branchpointcommit d7bafcafd3...Emil Velikov9 years
mesa-10.6.5commit a43b3dd99b...Emil Velikov9 years
mesa-10.6.4commit 6b2fcee64e...Emil Velikov9 years
mesa-10.6.3commit ddc976368f...Emil Velikov9 years
vulkan-header-0.138.0commit 5520221118...Chad Versace9 years
mesa-10.6.2commit 9643cce94c...Emil Velikov9 years
vulkan-header-0.130.0commit 1c4238a8e5...Chad Versace9 years
vulkan-header-0.90.0commit f9dbc34a18...Connor Abbott9 years
mesa-10.5.9commit 7f40d08374...Emil Velikov9 years
mesa-10.6.1commit a871e80fc6...Emil Velikov9 years
mesa-10.5.8commit 24b043aab7...Emil Velikov10 years
mesa-10.6.0commit 3b9cde5c81...Emil Velikov10 years
mesa-10.5.7commit 495bcbc48c...Emil Velikov10 years
mesa-10.6.0-rc3commit 9dc43dc361...Emil Velikov10 years
mesa-10.6.0-rc2commit ffd133bdbe...Emil Velikov10 years
mesa-10.5.6commit b1cf9cfb16...Emil Velikov10 years
mesa-10.6.0-rc1commit 7c5cca5ee2...Emil Velikov10 years
10.6-branchpointcommit 0c9e0b7a6c...Emil Velikov10 years
mesa-10.5.5commit d88fb40505...Emil Velikov10 years
mesa-10.5.4commit ea0d1f575c...Emil Velikov10 years
mesa-10.5.3commit c4b8bff6e2...Emil Velikov10 years
chadv/cros-gerrit-262788-basecommit c2a0600d5b...Kenneth Graunke10 years
chadv/cros-mesa-10.6-vanillacommit c2a0600d5b...Kenneth Graunke10 years
cros-mesa-10.6-vanillacommit c2a0600d5b...Kenneth Graunke10 years
mesa-10.5.2commit 5e59f895c4...Emil Velikov10 years
mesa-10.4.7commit d26f3c1f86...Emil Velikov10 years
mesa-10.5.1commit 11c0ff60ef...Emil Velikov10 years
mesa-10.5.0commit 97357d475f...Emil Velikov10 years
mesa-10.4.6commit 542a754524...Emil Velikov10 years
mesa-10.5.0-rc3commit c32d835281...Emil Velikov10 years
mesa-10.5.0-rc2commit 3592cbb21f...Emil Velikov10 years
mesa-10.4.5commit a5c608e951...Emil Velikov10 years
mesa-10.5.0-rc1commit b9518a41d4...Emil Velikov10 years
10.5-branchpointcommit d1e21325cf...Emil Velikov10 years
mesa-10.4.4commit 62eb27ac8b...Emil Velikov10 years
mesa-10.4.3commit e92bfa3f95...Emil Velikov10 years
mesa-10.4.2commit 02f2e97c3e...Emil Velikov10 years
mesa-10.3.7commit 6b00e5585a...Emil Velikov10 years
mesa-10.4.1commit 60e2e04fe8...Emil Velikov10 years
mesa-10.3.6commit d28a758e44...Emil Velikov10 years
mesa-10.4.0commit 5fe79b0b12...Emil Velikov10 years
mesa-10.4.0-rc4commit 09e4f1a50f...Emil Velikov10 years
mesa-10.3.5commit c90b0db1ae...Emil Velikov10 years
mesa-10.4.0-rc3commit c29ddc923f...Emil Velikov10 years
chadv/cros-mesa-10.3-r13-vanillacommit 129178893b...Chris Forbes10 years
chadv/cros-mesa-10.3-r15-vanillacommit 129178893b...Chris Forbes10 years
chadv/cros-mesa-10.3-r28-vanillacommit 129178893b...Chris Forbes10 years
chadv/cros-mesa-10.3-r29-vanillacommit 129178893b...Chris Forbes10 years
cros-mesa-10.3-r13-vanillacommit 129178893b...Chris Forbes10 years
cros-mesa-10.3-r15-vanillacommit 129178893b...Chris Forbes10 years
cros-mesa-10.3-r28-vanillacommit 129178893b...Chris Forbes10 years
cros-mesa-10.3-r29-vanillacommit 129178893b...Chris Forbes10 years
mesa-10.4.0-rc2commit 7fe9292069...Emil Velikov10 years
mesa-10.3.4commit 26c8ecd85d...Emil Velikov10 years
mesa-10.4.0-rc1commit d133096d26...Emil Velikov10 years
10.4-branchpointcommit a4ffc2a445...Kristian Høgsberg10 years
mesa-10.3.3commit 1a9cc5f50d...Emil Velikov10 years
mesa-10.3.2commit 3b6a4758fa...Emil Velikov10 years
mesa-10.3.1commit 088d350178...Emil Velikov10 years
mesa-10.2.9commit 9f1149876f...Emil Velikov10 years
mesa-10.3commit 1b12af300d...Emil Velikov10 years
mesa-10.2.8commit 1e2b4120f7...Emil Velikov10 years
mesa-10.2.7commit 64d51e2507...Emil Velikov10 years
mesa-10.3-rc3commit 4e1ca4a190...Emil Velikov10 years
mesa-10.3-rc2commit 390a9f6cb7...Emil Velikov10 years
mesa-10.3-rc1commit 04c3c03682...Carl Worth10 years
10.3-branchpointcommit 0fb221065e...Glenn Kennard10 years
mesa-10.2.6commit 346dda24bf...Carl Worth10 years
mesa-10.2.5commit a53047f6d1...Carl Worth10 years
mesa-10.2.4commit efe8cb1e53...Carl Worth10 years
mesa-10.2.3commit 33cb9f9503...Carl Worth10 years
mesa-10.2.2commit 623e68fb1b...Carl Worth11 years
mesa-10.1.6commit 5f41cae633...Carl Worth11 years
mesa-10.2.1commit 1b69ea1c6d...Ian Romanick11 years
mesa-10.2commit f836ef63fd...Ian Romanick11 years
mesa-10.1.5commit feb4c7284c...Carl Worth11 years
android-x86-4.4-r1commit 2af6b7090a...Chih-Wei Huang11 years
mesa-10.2-rc5commit 8b71741222...Ian Romanick11 years
mesa-10.2-rc4commit 697316fe06...Ian Romanick11 years
mesa-10.1.4commit cc9b282f8a...Carl Worth11 years
mesa-10.2-rc3commit d0aa394741...Ian Romanick11 years
mesa-10.2-rc2commit 2e3ded0f44...Ian Romanick11 years
mesa-10.1.3commit 0028eb1083...Carl Worth11 years
mesa-10.1.2commit bde3135717...Carl Worth11 years
10.2-branchpointcommit a06c9791d1...Ian Romanick11 years
mesa-10.2-rc1commit e8f6150320...Ian Romanick11 years
mesa-10.1.1commit 780817af84...Carl Worth11 years
mesa-10.0.5commit c941373838...Carl Worth11 years
7.10-branchpointcommit 0e50c21e24...Eric Anholt11 years
7.11-branchpointcommit ac8f59b23e...Eric Anholt11 years
7.8-branchpointcommit ad7d36e919...Eric Anholt11 years
7.9-branchpointcommit b0bc026c12...Eric Anholt11 years
8.0-branchpointcommit 6fe42b603d...Eric Anholt11 years
9.2-branchpointcommit 9f07ca11c1...Eric Anholt11 years
9.1-branchpointcommit 72916698b0...Eric Anholt11 years
9.0-branchpointcommit 2d2f1fd164...Eric Anholt11 years
10.0-branchpointcommit 035cce83f7...Eric Anholt11 years
10.1-branchpointcommit 81144c049b...Eric Anholt11 years
mesa-10.0.4commit 2cfd35186e...Carl Worth11 years
mesa-10.1commit 4a86465f47...Ian Romanick11 years
mesa-10.1-rc3commit 05b9e6a963...Ian Romanick11 years
mesa-10.1-rc2commit fcb4eabb5f...Ian Romanick11 years
mesa-10.1-rc1commit 1e6bba58d8...Ian Romanick11 years
mesa-10.0.3commit d8225ac67a...Carl Worth11 years
mesa-10.0.2commit 108e50c3bc...Carl Worth11 years
mesa-9.2.5commit 4636e87191...Carl Worth11 years
mesa-10.0.1commit 12484d2582...Carl Worth11 years
mesa-10.0commit 724c07ff12...Ian Romanick11 years
mesa-9.2.4commit 3e385d1bc3...Carl Worth11 years
mesa-10.0-rc2commit 866ce39ca0...Ian Romanick11 years
mesa-10.0-rc1commit 15118b45a0...Ian Romanick11 years
mesa-9.2.3commit f4657c4e10...Carl Worth11 years
mesa-10.1-develcommit 9f4366f1ac...Ian Romanick11 years
mesa-9.2.2commit 8f0742051e...Carl Worth11 years
mesa-9.1.7commit 7d4a1f508b...Carl Worth11 years
mesa-9.2.1commit 2c3aa1b4ee...Carl Worth11 years
mesa-9.2commit 46273ba256...Ian Romanick11 years
mesa-9.2-rc2commit fe6526f439...Ian Romanick11 years
mesa-9.2-rc1commit 796b4a7b40...Ian Romanick11 years
mesa-9.1.6commit 1ed76d697f...Carl Worth11 years
mesa-9.1.5commit 42146f777b...Carl Worth11 years
mesa-9.1.4commit e64febb4b7...Ian Romanick11 years
mesa-9.1.3commit f32ec82a8c...Ian Romanick12 years
mesa-9.1.2commit 8c2981b8e0...Ian Romanick12 years
mesa-9.1.1commit 1e5e805fd0...Ian Romanick12 years
mesa-9.1commit 17493b8848...Ian Romanick12 years
mesa-9.0.3commit f75b27a53e...Andreas Boll12 years
mesa-9.1-rc2commit 456cdb6d01...Ian Romanick12 years
mesa-9.1-rc1commit a0528269a3...Ian Romanick12 years
mesa-9.0.2commit 1c1b424408...Andreas Boll12 years
gles3-fmt-v1commit ae0120f247...Jordan Justen12 years
mesa-9.0.1commit 2d85170eb7...Ian Romanick12 years
intel-2012q4.1commit 895a5873d1...Ian Romanick12 years
mesa-8.0.5commit 16aaa75d9f...Andreas Boll12 years
mesa-9.0commit e5fdeef1e0...Ian Romanick12 years
core-context-v2commit 85e97b18e0...Jordan Justen12 years
rgb10_a2ui-v3commit 257f32ad20...Jordan Justen12 years
mesa-8.0.4commit c1f4867c89...Ian Romanick12 years
instanced_arrays-v2commit c988bf94bc...Jordan Justen13 years
mesa-8.0.3commit 1659d87afe...Ian Romanick13 years
i965-primitive-restart-v2commit c7e77fcc31...Jordan Justen13 years
mesa-8.0.2commit 5f7204c3bb...Jakob Bornecrantz13 years
mesa-8.0.1commit fe77fd3983...Ian Romanick13 years
mesa-8.0commit f9c9933f9c...Ian Romanick13 years
mesa-8.0-rc2commit 0dddf4c575...Ian Romanick13 years
mesa-8.0-rc1commit c85402aba9...Jakob Bornecrantz13 years
mesa-7.11.2commit ea72e3cda8...Ian Romanick13 years
mesa-7.11.1commit c0009739bf...Ian Romanick13 years
mesa-7.11commit de8f22af28...Ian Romanick13 years
mesa-7.11-rc4commit fad610fec9...Ian Romanick13 years
mesa-7.11-rc3commit 7e1d9b3dfc...Ian Romanick13 years
mesa-7.11-rc2commit 73b68316f4...Ian Romanick13 years
mesa-7.11-rc1commit b033f050fd...Ian Romanick13 years
mesa-7.10.3commit 2d0fd07037...Ian Romanick14 years
usefulcommit d6db9143b6...Ian Romanick14 years
android-x86-2.2-r2commit 559a79ff87...Chih-Wei Huang14 years
mesa-7.10.2commit b0866f6cfd...Ian Romanick14 years
mesa-7.9.2commit 7e9d853665...Ian Romanick14 years
mesa-7.10.1commit 565caabf40...Ian Romanick14 years
mesa-7.10commit 7a3f869a47...Ian Romanick14 years
mesa-7.9.1commit 42a9472dc6...Ian Romanick14 years
android-x86-2.2commit f189dfe9e9...Chih-Wei Huang14 years
snb-magiccommit ef6967ddc2...Ian Romanick14 years
mesa-7.9commit 889cb2539b...Ian Romanick14 years
mesa-7.9-rc2commit 5d3a4317e8...Ian Romanick14 years
mesa-7.9-rc1commit 61653b488d...Ian Romanick14 years
mesa-7.8.2-2commit d0691bdef0...Julien Cristau14 years
mesa-7.8.2-1commit d74b848277...Julien Cristau14 years
mesa-7.8.2commit a2782af384...Ian Romanick15 years
mesa-7.8.1-2commit e61d717a8d...Julien Cristau15 years
mesa-7.7.1-2commit 1cfffc29f6...Julien Cristau15 years
mesa-7.8.1-1commit b7baa7ea1f...Brice Goglin15 years
mesa-7.8.1commit 582e292a88...Ian Romanick15 years
mesa-7.7.1-1commit 8d98d78320...Brice Goglin15 years
mesa-7.8commit dec94903d9...Ian Romanick15 years
mesa_7_7_1commit 0c88e34049...Ian Romanick15 years
mesa_7_7_1_rc2commit e33121b2d8...Ian Romanick15 years
7.8-rc2commit 4eead42550...Ian Romanick15 years
7.8-rc1commit 4161830642...Ian Romanick15 years
mesa-7.7-4commit b5f7f02399...Brice Goglin15 years
mesa-7.7-3commit eef7b39a36...Brice Goglin15 years
mesa-7.7-2commit adcbe9af69...Brice Goglin15 years
mesa-7.7-1commit 2b5f0b8669...Brice Goglin15 years
mesa-7.6.1-1commit 53d395336d...Julien Cristau15 years
mesa_7_7commit 7e210b9337...Ian Romanick15 years
mesa_7_6commit 75ad099d3c...Ian Romanick15 years
mesa_7_6_1commit b8f6444a07...Ian Romanick15 years
mesa_7_7_rc3commit bf75ee9ccc...Ian Romanick15 years
mesa_7_6_1_rc4commit 42d9409873...Ian Romanick15 years
mesa-7.7-rc2-1commit bb1193ca83...Brice Goglin15 years
mesa-7.6.1-rc3-1commit 7f8952d242...Brice Goglin15 years
mesa_7_7_rc2commit ba167f812c...Ian Romanick15 years
mesa_7_6_1_rc3commit 9dbd47fc6b...Ian Romanick15 years
mesa-7.6.1-rc2-1commit a7109f3ae5...Brice Goglin15 years
mesa_7_7_rc1commit f17dbe256b...Ian Romanick15 years
mesa_7_6_1_rc2commit 910aaed4da...Ian Romanick15 years
android-x86-1.6commit 74237c1a10...Chih-Wei Huang15 years
mesa_7_6_1_rc1commit fe5c46546e...Brian Paul15 years
mesa-7.6-1commit ee9811de78...Brice Goglin15 years
mesa_7_5_2commit 18f3afbe88...Ian Romanick15 years
mesa_7_5_2_rc1commit 126d62edd1...Eric Anholt15 years
mesa_7_6_rc1commit cc8084932c...Eric Anholt15 years
mesa-7.5.1-1commit 70fd9421ac...Brice Goglin15 years
mesa_7_5_1commit 7d3af894d6...Brian Paul15 years
mesa-7.5-3commit 3c4727a4e9...Brice Goglin15 years
mesa-7.5-2commit 04493de67b...Brice Goglin15 years
mesa-7.5-1commit 767c0b16f3...Brice Goglin15 years
mesa_7_5commit cd10996d4f...Brian Paul15 years
intel_2009q2_rc3commit 022e8e582e...Ian Romanick15 years
mesa-7.5-rc4-1commit 9032d6b40b...Julien Cristau15 years
mesa-7.4.4-1commit 2c8046b1bc...Julien Cristau15 years
mesa_7_5_rc4commit 418987ff05...Brian Paul16 years
mesa_7_4_4commit d0c391b6a2...Brian Paul16 years
mesa_7_4_3commit 5d387a35ff...Brian Paul16 years
mesa_7_5_rc3commit cfff2a6189...Brian Paul16 years
mesa_7_5_rc2commit 483e247804...Brian Paul16 years
mesa_7_4_2commit da709f163f...Brian Paul16 years
mesa_7_5_rc1commit 9b3d748f02...Brian Paul16 years
mesa-7.4.1-1commit 4842cde28f...Julien Cristau16 years
intel_2009q1_rc3commit 85396d8ef4...Ian Romanick16 years
mesa-7.4-2commit 3d81e934e5...Julien Cristau16 years
mesa-7.4-1commit 99f159339e...Julien Cristau16 years
mesa_7_4commit bf1e6581a5...Brian Paul16 years
intel_2009q1_rc2commit f535de8721...Ian Romanick16 years
mesa_7_4_rc2commit 20d34b50b5...Brian Paul16 years
mesa-7.4-rc1-1commit af3c568475...Julien Cristau16 years
mesa_7_4_rc1commit 17db2db9dc...Brian Paul16 years
intel_2009q1_rc1commit a8528a2e86...Ian Romanick16 years
mesa_20090313commit 7d6478cfcc...Brian Paul16 years
mesa-7.3-1commit cff0971f87...Julien Cristau16 years
mesa_7_3commit faa6d8af59...Brian Paul16 years
mesa-7.3-rc3-1commit f5c47105db...Julien Cristau16 years
mesa_7_3_rc3commit 39e6d0d810...Brian Paul16 years
mesa_7_3_rc2commit 8f8435637d...Brian Paul16 years
mesa-7.3-rc1-1commit 88083e9bab...Julien Cristau16 years
mesa_7_3_rc1commit f1455ca5f4...Brian Paul16 years
mesa-7.0.3-7commit 85d882983f...Julien Cristau16 years
mesa-7.2-1commit 84bb8fc695...Julien Cristau16 years
mesa-7.0.3-6commit 07c1fcc604...Julien Cristau16 years
mesa_7_2commit 35fe0e56e6...Brian Paul16 years
mesa_7_2_rc1commit 419353dc2f...Brian Paul16 years
mesa-7.1-1commit f9affb3059...Julien Cristau16 years
mesa_7_1commit 6d9b25e522...Brian Paul16 years
mesa_7_1_rc4commit 5d762e1613...Brian Paul16 years
mesa-7.1-rc3-1commit a8dde163dc...Julien Cristau16 years
mesa-7.0.3-5commit e325b76444...Julien Cristau16 years
mesa_7_1_rc3commit 2f1b5ffcda...Brian Paul16 years
mesa_7_1_rc2commit 6fe7857629...Brian Paul16 years
mesa-7.0.3-4commit 2b831e73f5...Brice Goglin17 years
mesa-7.0.3-3commit 5033e5b36d...Brice Goglin17 years
mesa_7_1_rc1commit 8bd70a7bbe...Brian Paul17 years
mesa-7.0.3-1commit 59c9c40c01...Brice Goglin17 years
mesa_7_0_3commit 48616e71d2...Brian17 years
mesa_7_0_3_rc3commit 70d227ac62...Brian17 years
mesa-7.0.3-rc2-2commit 2e5a63f365...Julien Cristau17 years
mesa-7.0.3-rc2-1commit d89cf0649e...Julien Cristau17 years
mesa-7.0.2-4commit 09504dde1f...Brice Goglin17 years
mesa-7.0.2-3commit 9fd22f0e3f...Julien Cristau17 years
mesa-7.0.2-1commit caf283329b...Brice Goglin17 years
mesa_7_0_2commit 8a40b670c3...Brian17 years
mesa_7_0_2_rc1commit 574fd63ff0...Brian17 years
mesa-7.0.1-2commit 369cda3752...Julien Cristau17 years
mesa-7.0.1-1commit 34beaefe1c...Julien Cristau17 years
mesa_7_0_1commit ae16a51e95...Brian17 years
mesa-7.0.1-rc2-1commit 593de57fa2...Julien Cristau17 years
mesa_7_0_1_rc2commit 756a7a4e4b...Brian17 years
mesa_7_0_1_rc1commit 005eea249c...Brian17 years
mesa-6.5.2-7commit 6186261589...Julien Cristau17 years
mesa-6.5.2-6commit 31f3433635...Julien Cristau17 years
mesa_7_0commit 131baefac3...Brian18 years
mesa-6.5.3-1commit e1b0715dd6...Julien Cristau18 years
mesa-6.5.2-5commit 1865ef6fd4...Julien Cristau18 years
mesa_6_5_3commit 02e958a1e4...Brian18 years
mesa_6_5_3_rc4commit 3de20aead2...Brian18 years
mesa-6.5.3-rc3-1commit 03cdacfb6a...Julien Cristau18 years
mesa_6_5_3_rc3commit 3e5eda9ee9...Brian18 years
mesa_6_5_3_rc2commit ad02042db2...Brian18 years
mesa-6.5.2-4commit 6c0fba2480...Julien Cristau18 years
post-merge-glsl-compiler-1commit 22d9132081...Brian18 years
pre-merge-glsl-compiler-1commit 8051c95a7e...Brian18 years
mesa-6.5.1-0.6commit 0aa8f1df3c...Julien Cristau18 years
mesa-6.5.2-3commit d39147a8a1...Julien Cristau18 years
mesa-6.5.2-2commit 7991f7e936...Julien Cristau18 years
mesa-6.5.1-0.5commit 6da1323437...Julien Cristau18 years
mesa-6.5.1-0.4commit 1dd29785cf...Julien Cristau18 years
mesa-6.5.1-0.3commit 5681987ee4...Julien Cristau18 years
mesa-6.5.1-0.2commit 75733e4237...Julien Cristau18 years
R300_DRIVER_0commit 20330f422f...Nicolai Haehnle
before_upgrade_03_01_05commit d1e40c9bdd...Aapo Tahkola
blended_fountaincommit 380ba2daec...Vladimir Dergachev
embedded-1-20030120commit 2005348110...Brian Paul
embedded-1-20030224commit 4b930d3080...Keith Whitwell
embedded-1-20030305commit 7b7af467dd...Keith Whitwell
embedded-1-20030324commit f221b8df75...Keith Whitwell
embedded-1-20030417commit f1f331ef4d...Alan Hourihane
embedded-1-20030502commit 3e713fe38c...Keith Whitwell
gliding_penguincommit a30402b56a...Vladimir Dergachev
jump_and_clickcommit 5dd4030e76...Vladimir Dergachev
kw-mesa-1commit 485f040741...Keith Whitwell
mesa-6.4.1commit db4236fe0b...David Nusinow
mesa-6.5.1-0.1commit bc8084da74...David Nusinow
mesa-6_5-20060712commit 59cfd3cd3f...Brian Paul
mesa_20050504commit ebef61f5c0...Brian Paul
mesa_20050526commit 020225496e...Keith Whitwell
mesa_20050610commit b4979ec178...Keith Whitwell
mesa_20050715commit 8d3aca655e...Brian Paul
mesa_20060201commit 11c0215bf8...Keith Whitwell
mesa_20060325commit ea4fe661d7...Brian Paul
mesa_3_1commit b0294cbbfe...Brian Paul
mesa_3_1_beta_3commit 0b6ae412d3...Jon Taylor
mesa_3_2commit 5febd0ce8b...Brian Paul
mesa_3_2_1commit e1aaeb5a45...Keith Whitwell
mesa_3_2_beta_1commit 1b539ed613...Brian Paul
mesa_3_3commit 5d5b09cf79...Brian Paul
mesa_3_4commit e5c8261f76...Brian Paul
mesa_3_4_1commit e430f93ea0...Brian Paul
mesa_3_4_2commit 217ff8f196...Brian Paul
mesa_3_5commit 5e7591f94c...Jouk Jansen
mesa_4_0commit a7f8117153...Brian Paul
mesa_4_0_1commit a340c4f6ef...Brian Paul
mesa_4_0_2commit aa5698e8ed...Brian Paul
mesa_4_0_3commit 4266ec91fe...Brian Paul
mesa_4_0_4commit 61b226a4f4...Brian Paul
mesa_4_1commit fd062077c6...Brian Paul
mesa_5_0commit 33c0b3e233...Brian Paul
mesa_5_0_1commit 6faeeb59ba...Brian Paul
mesa_6_3commit d4596584f6...Brian Paul
mesa_6_3_1commit 1585c234e0...Ian Romanick
mesa_6_3_1_1commit 14fa5f6a60...Ian Romanick
mesa_6_3_2commit eacd347fce...Brian Paul
mesa_6_4commit 7cd7a78d72...Brian Paul
mesa_6_4_1commit 53e595017e...Brian Paul
mesa_6_4_2commit 3b0c8dcaa3...Brian Paul
mesa_6_5commit 482d9dd21d...Eric Anholt
mesa_6_5_1commit 0321dac2cd...Brian Paul
mesa_6_5_2commit eb667b979b...Brian Paul
mesa_texman_20060210commit a6f78d4eee...Keith Whitwell
noisy_cubecommit f50a1964d1...Vladimir Dergachev
red_tinted_cubecommit 2fc9351ee7...Vladimir Dergachev
rotating_gearscommit e443d1ec47...Vladimir Dergachev
shimmering_gearscommit 4a04f002db...Vladimir Dergachev
startcommit fd624c0601...jtg
texman_0_1_20060325commit af6a480117...Brian Paul
texman_0_1_20060330commit 8ecd83f6cd...Keith Whitwell
texman_0_1_20060621commit bcc4804410...Keith Whitwell
texman_0_1_20060705commit f248927f47...Keith Whitwell
texman_0_1_pre_ttmcommit b3b325e560...Keith Whitwell
texmem_0_2_20060912commit b7fc1c32f8...Brian Paul
texmem_0_3_20060923commit 814cae6a45...Thomas Hellström
texmem_0_3_20060929commit 9b87fafc91...Thomas Hellström
the_perfect_fragcommit e3cdbca63f...Aapo Tahkola
trunk_20040329commit 068039eec1...Brian Paul
unichrome-last-xineramacommit 302c5694c6...Keith Whitwell
vtx-0-2-21112003-freezecommit f2f09abce4...Keith Whitwell
vtx-0-2-24112003commit 027fdb8bbd...Keith Whitwell
an>, num_texcoords); util_semantic_table_from_layout(fpc->generic_to_slot, fpc->fp->slot_to_generic, 0, num_texcoords); memset(fpc->fp->slot_to_fp_input, 0xff, sizeof(fpc->fp->slot_to_fp_input)); fpc->r_imm = CALLOC(fpc->pfp->info.immediate_count, sizeof(struct nvfx_reg)); tgsi_parse_init(&p, fpc->pfp->pipe.tokens); while (!tgsi_parse_end_of_tokens(&p)) { const union tgsi_full_token *tok = &p.FullToken; tgsi_parse_token(&p); switch(tok->Token.Type) { case TGSI_TOKEN_TYPE_DECLARATION: { const struct tgsi_full_declaration *fdec; fdec = &p.FullToken.FullDeclaration; switch (fdec->Declaration.File) { case TGSI_FILE_OUTPUT: if (!nvfx_fragprog_parse_decl_output(nvfx, fpc, fdec)) goto out_err; break; case TGSI_FILE_TEMPORARY: if (fdec->Range.Last > high_temp) { high_temp = fdec->Range.Last; } break; default: break; } } break; case TGSI_TOKEN_TYPE_IMMEDIATE: { struct tgsi_full_immediate *imm; imm = &p.FullToken.FullImmediate; assert(imm->Immediate.DataType == TGSI_IMM_FLOAT32); assert(fpc->nr_imm < fpc->pfp->info.immediate_count); fpc->r_imm[fpc->nr_imm++] = nvfx_fp_imm(fpc, imm->u[0].Float, imm->u[1].Float, imm->u[2].Float, imm->u[3].Float); break; } default: break; } } tgsi_parse_free(&p); if (++high_temp) { fpc->r_temp = CALLOC(high_temp, sizeof(struct nvfx_reg)); for (i = 0; i < high_temp; i++) fpc->r_temp[i] = temp(fpc); fpc->r_temps_discard = 0ULL; } return TRUE; out_err: if (fpc->r_temp) { FREE(fpc->r_temp); fpc->r_temp = NULL; } tgsi_parse_free(&p); return FALSE; } DEBUG_GET_ONCE_BOOL_OPTION(nvfx_dump_fp, "NVFX_DUMP_FP", FALSE) static struct nvfx_fragment_program* nvfx_fragprog_translate(struct nvfx_context *nvfx, struct nvfx_pipe_fragment_program *pfp, boolean emulate_sprite_flipping) { struct tgsi_parse_context parse; struct nvfx_fpc *fpc = NULL; struct util_dynarray insns; struct nvfx_fragment_program* fp = NULL; const int min_size = 4096; fp = CALLOC_STRUCT(nvfx_fragment_program); if(!fp) goto out_err; fpc = CALLOC_STRUCT(nvfx_fpc); if (!fpc) goto out_err; fpc->max_temps = nvfx->use_nv4x ? 48 : 32; fpc->pfp = pfp; fpc->fp = fp; fpc->num_regs = 2; for (unsigned i = 0; i < pfp->info.num_properties; ++i) { if (pfp->info.properties[i].name == TGSI_PROPERTY_FS_COORD_ORIGIN) { if(pfp->info.properties[i].data[0]) fp->coord_conventions |= NV30_3D_COORD_CONVENTIONS_ORIGIN_INVERTED; } else if (pfp->info.properties[i].name == TGSI_PROPERTY_FS_COORD_PIXEL_CENTER) { if(pfp->info.properties[i].data[0]) fp->coord_conventions |= NV30_3D_COORD_CONVENTIONS_CENTER_INTEGER; } } if (!nvfx_fragprog_prepare(nvfx, fpc)) goto out_err; tgsi_parse_init(&parse, pfp->pipe.tokens); util_dynarray_init(&insns); if(emulate_sprite_flipping) { struct nvfx_reg reg = temp(fpc); struct nvfx_src sprite_input = nvfx_src(nvfx_reg(NVFXSR_RELOCATED, fp->num_slots)); struct nvfx_src imm = nvfx_src(nvfx_fp_imm(fpc, 1, -1, 0, 0)); fpc->sprite_coord_temp = reg.index; fpc->r_temps_discard = 0ULL; nvfx_fp_emit(fpc, arith(0, MAD, reg, NVFX_FP_MASK_ALL, sprite_input, swz(imm, X, Y, X, X), swz(imm, Z, X, Z, Z))); } while (!tgsi_parse_end_of_tokens(&parse)) { tgsi_parse_token(&parse); switch (parse.FullToken.Token.Type) { case TGSI_TOKEN_TYPE_INSTRUCTION: { const struct tgsi_full_instruction *finst; util_dynarray_append(&insns, unsigned, fp->insn_len); finst = &parse.FullToken.FullInstruction; if (!nvfx_fragprog_parse_instruction(nvfx, fpc, finst)) goto out_err; } break; default: break; } } util_dynarray_append(&insns, unsigned, fp->insn_len); for(unsigned i = 0; i < fpc->label_relocs.size; i += sizeof(struct nvfx_relocation)) { struct nvfx_relocation* label_reloc = (struct nvfx_relocation*)((char*)fpc->label_relocs.data + i); fp->insn[label_reloc->location] |= ((unsigned*)insns.data)[label_reloc->target]; } util_dynarray_fini(&insns); if(!nvfx->is_nv4x) fp->fp_control |= (fpc->num_regs-1)/2; else fp->fp_control |= fpc->num_regs << NV40_3D_FP_CONTROL_TEMP_COUNT__SHIFT; /* Terminate final instruction */ if(fp->insn) fp->insn[fpc->inst_offset] |= 0x00000001; /* Append NOP + END instruction for branches to the end of the program */ fpc->inst_offset = fp->insn_len; grow_insns(fpc, 4); fp->insn[fpc->inst_offset + 0] = 0x00000001; fp->insn[fpc->inst_offset + 1] = 0x00000000; fp->insn[fpc->inst_offset + 2] = 0x00000000; fp->insn[fpc->inst_offset + 3] = 0x00000000; if(debug_get_option_nvfx_dump_fp()) { debug_printf("\n"); tgsi_dump(pfp->pipe.tokens, 0); debug_printf("\n%s fragment program:\n", nvfx->is_nv4x ? "nv4x" : "nv3x"); for (unsigned i = 0; i < fp->insn_len; i += 4) debug_printf("%3u: %08x %08x %08x %08x\n", i >> 2, fp->insn[i], fp->insn[i + 1], fp->insn[i + 2], fp->insn[i + 3]); debug_printf("\n"); } fp->prog_size = (fp->insn_len * 4 + 63) & ~63; if(fp->prog_size >= min_size) fp->progs_per_bo = 1; else fp->progs_per_bo = min_size / fp->prog_size; fp->bo_prog_idx = fp->progs_per_bo - 1; out: tgsi_parse_free(&parse); if(fpc) { if (fpc->r_temp) FREE(fpc->r_temp); util_dynarray_fini(&fpc->if_stack); util_dynarray_fini(&fpc->label_relocs); util_dynarray_fini(&fpc->imm_data); //util_dynarray_fini(&fpc->loop_stack); FREE(fpc); } return fp; out_err: _debug_printf("Error: failed to compile this fragment program:\n"); tgsi_dump(pfp->pipe.tokens, 0); if(fp) { FREE(fp); fp = NULL; } goto out; } static inline void nvfx_fp_memcpy(void* dst, const void* src, size_t len) { #ifndef WORDS_BIGENDIAN memcpy(dst, src, len); #else size_t i; for(i = 0; i < len; i += 4) { uint32_t v = (uint32_t*)((char*)src + i); *(uint32_t*)((char*)dst + i) = (v >> 16) | (v << 16); } #endif } /* The hardware only supports immediate constants inside the fragment program, * and at least on nv30 doesn't support an indirect linkage table. * * Hence, we need to patch the fragment program itself both to update constants * and update linkage. * * Using a single fragment program would entail unacceptable stalls if the GPU is * already rendering with that fragment program. * Thus, we instead use a "rotating queue" of buffer objects, each of which is * packed with multiple versions of the same program. * * Whenever we need to patch something, we move to the next program and * patch it. If all buffer objects are in use by the GPU, we allocate another one, * expanding the queue. * * As an additional optimization, we record when all the programs have the * current input slot configuration, and at that point we stop patching inputs. * This happens, for instance, if a given fragment program is always used with * the same vertex program (i.e. always with GLSL), or if the layouts match * enough (non-GLSL). * * Note that instead of using multiple programs, we could push commands * on the FIFO to patch a single program: it's not fully clear which option is * faster, but my guess is that the current way is faster. * * We also track the previous slot assignments for each version and don't * patch if they are the same (this could perhaps be removed). */ void nvfx_fragprog_validate(struct nvfx_context *nvfx) { struct nouveau_channel* chan = nvfx->screen->base.channel; struct nvfx_pipe_fragment_program *pfp = nvfx->fragprog; struct nvfx_vertex_program* vp; // TODO: the multiplication by point_quad_rasterization is probably superfluous unsigned sprite_coord_enable = nvfx->rasterizer->pipe.point_quad_rasterization * nvfx->rasterizer->pipe.sprite_coord_enable; boolean emulate_sprite_flipping = sprite_coord_enable && nvfx->rasterizer->pipe.sprite_coord_mode; unsigned key = emulate_sprite_flipping; struct nvfx_fragment_program* fp; fp = pfp->fps[key]; if (!fp) { fp = nvfx_fragprog_translate(nvfx, pfp, emulate_sprite_flipping); if(!fp) { if(!nvfx->dummy_fs) { struct ureg_program *ureg = ureg_create( TGSI_PROCESSOR_FRAGMENT ); if (ureg) { ureg_END( ureg ); nvfx->dummy_fs = ureg_create_shader_and_destroy( ureg, &nvfx->pipe ); } if(!nvfx->dummy_fs) { _debug_printf("Error: unable to create a dummy fragment shader: aborting."); abort(); } } fp = nvfx_fragprog_translate(nvfx, nvfx->dummy_fs, FALSE); emulate_sprite_flipping = FALSE; if(!fp) { _debug_printf("Error: unable to compile even a dummy fragment shader: aborting."); abort(); } } pfp->fps[key] = fp; } vp = nvfx->hw_vertprog; if (fp->last_vp_id != vp->id || fp->last_sprite_coord_enable != sprite_coord_enable) { int sprite_real_input = -1; int sprite_reloc_input; unsigned i; fp->last_vp_id = vp->id; fp->last_sprite_coord_enable = sprite_coord_enable; if(sprite_coord_enable) { sprite_real_input = vp->sprite_fp_input; if(sprite_real_input < 0) { unsigned used_texcoords = 0; for(unsigned i = 0; i < fp->num_slots; ++i) { unsigned generic = fp->slot_to_generic[i]; if((generic < 32) && !((1 << generic) & sprite_coord_enable)) { unsigned char slot_mask = vp->generic_to_fp_input[generic]; if(slot_mask >= 0xf0) used_texcoords |= 1 << ((slot_mask & 0xf) - NVFX_FP_OP_INPUT_SRC_TC0); } } sprite_real_input = NVFX_FP_OP_INPUT_SRC_TC(__builtin_ctz(~used_texcoords)); } fp->point_sprite_control |= (1 << (sprite_real_input - NVFX_FP_OP_INPUT_SRC_TC0 + 8)); } else fp->point_sprite_control = 0; if(emulate_sprite_flipping) sprite_reloc_input = 0; else sprite_reloc_input = sprite_real_input; for(i = 0; i < fp->num_slots; ++i) { unsigned generic = fp->slot_to_generic[i]; if((generic < 32) && ((1 << generic) & sprite_coord_enable)) { if(fp->slot_to_fp_input[i] != sprite_reloc_input) goto update_slots; } else { unsigned char slot_mask = vp->generic_to_fp_input[generic]; if((slot_mask >> 4) & (slot_mask ^ fp->slot_to_fp_input[i])) goto update_slots; } } if(emulate_sprite_flipping) { if(fp->slot_to_fp_input[fp->num_slots] != sprite_real_input) goto update_slots; } if(0) { update_slots: /* optimization: we start updating from the slot we found the first difference in */ for(; i < fp->num_slots; ++i) { unsigned generic = fp->slot_to_generic[i]; if((generic < 32) && ((1 << generic) & sprite_coord_enable)) fp->slot_to_fp_input[i] = sprite_reloc_input; else fp->slot_to_fp_input[i] = vp->generic_to_fp_input[generic] & 0xf; } fp->slot_to_fp_input[fp->num_slots] = sprite_real_input; if(nvfx->is_nv4x) { fp->or = 0; for(i = 0; i <= fp->num_slots; ++i) { unsigned fp_input = fp->slot_to_fp_input[i]; if(fp_input == NVFX_FP_OP_INPUT_SRC_TC(8)) fp->or |= (1 << 12); else if(fp_input == NVFX_FP_OP_INPUT_SRC_TC(9)) fp->or |= (1 << 13); else if(fp_input >= NVFX_FP_OP_INPUT_SRC_TC(0) && fp_input <= NVFX_FP_OP_INPUT_SRC_TC(7)) fp->or |= (1 << (fp_input - NVFX_FP_OP_INPUT_SRC_TC0 + 14)); } } fp->progs_left_with_obsolete_slot_assignments = fp->progs; goto update; } } /* We must update constants even on "just" fragprog changes, because * we don't check whether the current constant buffer matches the latest * one bound to this fragment program. * Doing such a check would likely be a pessimization. */ if ((nvfx->hw_fragprog != fp) || (nvfx->dirty & (NVFX_NEW_FRAGPROG | NVFX_NEW_FRAGCONST))) { int offset; uint32_t* fpmap; update: ++fp->bo_prog_idx; if(fp->bo_prog_idx >= fp->progs_per_bo) { if(fp->fpbo && !nouveau_bo_busy(fp->fpbo->next->bo, NOUVEAU_BO_WR)) { fp->fpbo = fp->fpbo->next; } else { struct nvfx_fragment_program_bo* fpbo = os_malloc_aligned(sizeof(struct nvfx_fragment_program) + (fp->prog_size + 8) * fp->progs_per_bo, 16); uint8_t* map; uint8_t* buf; fpbo->slots = (unsigned char*)&fpbo->insn[(fp->prog_size) * fp->progs_per_bo]; memset(fpbo->slots, 0, 8 * fp->progs_per_bo); if(fp->fpbo) { fpbo->next = fp->fpbo->next; fp->fpbo->next = fpbo; } else fpbo->next = fpbo; fp->fpbo = fpbo; fpbo->bo = 0; fp->progs += fp->progs_per_bo; fp->progs_left_with_obsolete_slot_assignments += fp->progs_per_bo; nouveau_bo_new(nvfx->screen->base.device, NOUVEAU_BO_VRAM | NOUVEAU_BO_MAP, 64, fp->prog_size * fp->progs_per_bo, &fpbo->bo); nouveau_bo_map(fpbo->bo, NOUVEAU_BO_NOSYNC); map = fpbo->bo->map; buf = (uint8_t*)fpbo->insn; for(unsigned i = 0; i < fp->progs_per_bo; ++i) { memcpy(buf, fp->insn, fp->insn_len * 4); nvfx_fp_memcpy(map, fp->insn, fp->insn_len * 4); map += fp->prog_size; buf += fp->prog_size; } } fp->bo_prog_idx = 0; } offset = fp->bo_prog_idx * fp->prog_size; fpmap = (uint32_t*)((char*)fp->fpbo->bo->map + offset); if(nvfx->constbuf[PIPE_SHADER_FRAGMENT]) { struct pipe_resource* constbuf = nvfx->constbuf[PIPE_SHADER_FRAGMENT]; uint32_t* map = (uint32_t*)nvfx_buffer(constbuf)->data; uint32_t* fpmap = (uint32_t*)((char*)fp->fpbo->bo->map + offset); uint32_t* buf = (uint32_t*)((char*)fp->fpbo->insn + offset); int i; for (i = 0; i < fp->nr_consts; ++i) { unsigned off = fp->consts[i].offset; unsigned idx = fp->consts[i].index * 4; /* TODO: is checking a good idea? */ if(memcmp(&buf[off], &map[idx], 4 * sizeof(uint32_t))) { memcpy(&buf[off], &map[idx], 4 * sizeof(uint32_t)); nvfx_fp_memcpy(&fpmap[off], &map[idx], 4 * sizeof(uint32_t)); } } } /* we only do this if we aren't sure that all program versions have the * current slot assignments, otherwise we just update constants for speed */ if(fp->progs_left_with_obsolete_slot_assignments) { unsigned char* fpbo_slots = &fp->fpbo->slots[fp->bo_prog_idx * 8]; /* also relocate sprite coord slot, if any */ for(unsigned i = 0; i <= fp->num_slots; ++i) { unsigned value = fp->slot_to_fp_input[i];; if(value != fpbo_slots[i]) { unsigned* p; unsigned* begin = (unsigned*)fp->slot_relocations[i].data; unsigned* end = (unsigned*)((char*)fp->slot_relocations[i].data + fp->slot_relocations[i].size); //printf("fp %p reloc slot %u/%u: %u -> %u\n", fp, i, fp->num_slots, fpbo_slots[i], value); if(value == 0) { /* was relocated to an input, switch type to temporary */ for(p = begin; p != end; ++p) { unsigned off = *p; unsigned dw = fp->insn[off]; dw &=~ NVFX_FP_REG_TYPE_MASK; //printf("reloc_tmp at %x\n", off); nvfx_fp_memcpy(&fpmap[off], &dw, sizeof(dw)); } } else { if(!fpbo_slots[i]) { /* was relocated to a temporary, switch type to input */ for(p= begin; p != end; ++p) { unsigned off = *p; unsigned dw = fp->insn[off]; //printf("reloc_in at %x\n", off); dw |= NVFX_FP_REG_TYPE_INPUT << NVFX_FP_REG_TYPE_SHIFT; nvfx_fp_memcpy(&fpmap[off], &dw, sizeof(dw)); } } /* set the correct input index */ for(p = begin; p != end; ++p) { unsigned off = *p & ~3; unsigned dw = fp->insn[off]; //printf("reloc&~3 at %x\n", off); dw = (dw & ~NVFX_FP_OP_INPUT_SRC_MASK) | (value << NVFX_FP_OP_INPUT_SRC_SHIFT); nvfx_fp_memcpy(&fpmap[off], &dw, sizeof(dw)); } } fpbo_slots[i] = value; } } --fp->progs_left_with_obsolete_slot_assignments; } nvfx->hw_fragprog = fp; MARK_RING(chan, 8, 1); OUT_RING(chan, RING_3D(NV30_3D_FP_ACTIVE_PROGRAM, 1)); OUT_RELOC(chan, fp->fpbo->bo, offset, NOUVEAU_BO_VRAM | NOUVEAU_BO_GART | NOUVEAU_BO_RD | NOUVEAU_BO_LOW | NOUVEAU_BO_OR, NV30_3D_FP_ACTIVE_PROGRAM_DMA0, NV30_3D_FP_ACTIVE_PROGRAM_DMA1); OUT_RING(chan, RING_3D(NV30_3D_FP_CONTROL, 1)); OUT_RING(chan, fp->fp_control); if(!nvfx->is_nv4x) { OUT_RING(chan, RING_3D(NV30_3D_FP_REG_CONTROL, 1)); OUT_RING(chan, (1<<16)|0x4); OUT_RING(chan, RING_3D(NV30_3D_TEX_UNITS_ENABLE, 1)); OUT_RING(chan, fp->samplers); } } { unsigned pointsprite_control = fp->point_sprite_control | nvfx->rasterizer->pipe.point_quad_rasterization; if(pointsprite_control != nvfx->hw_pointsprite_control) { WAIT_RING(chan, 2); OUT_RING(chan, RING_3D(NV30_3D_POINT_SPRITE, 1)); OUT_RING(chan, pointsprite_control); nvfx->hw_pointsprite_control = pointsprite_control; } } nvfx->relocs_needed &=~ NVFX_RELOCATE_FRAGPROG; } void nvfx_fragprog_relocate(struct nvfx_context *nvfx) { struct nouveau_channel* chan = nvfx->screen->base.channel; struct nvfx_fragment_program *fp = nvfx->hw_fragprog; struct nouveau_bo* bo = fp->fpbo->bo; int offset = fp->bo_prog_idx * fp->prog_size; unsigned fp_flags = NOUVEAU_BO_VRAM | NOUVEAU_BO_RD; // TODO: GART? fp_flags |= NOUVEAU_BO_DUMMY; MARK_RING(chan, 2, 2); OUT_RELOC(chan, bo, RING_3D(NV30_3D_FP_ACTIVE_PROGRAM, 1), fp_flags, 0, 0); OUT_RELOC(chan, bo, offset, fp_flags | NOUVEAU_BO_LOW | NOUVEAU_BO_OR, NV30_3D_FP_ACTIVE_PROGRAM_DMA0, NV30_3D_FP_ACTIVE_PROGRAM_DMA1); nvfx->relocs_needed &=~ NVFX_RELOCATE_FRAGPROG; } void nvfx_fragprog_destroy(struct nvfx_context *nvfx, struct nvfx_fragment_program *fp) { unsigned i; struct nvfx_fragment_program_bo* fpbo = fp->fpbo; if(fpbo) { do { struct nvfx_fragment_program_bo* next = fpbo->next; nouveau_bo_unmap(fpbo->bo); nouveau_bo_ref(0, &fpbo->bo); os_free_aligned(fpbo); fpbo = next; } while(fpbo != fp->fpbo); } for(i = 0; i < Elements(fp->slot_relocations); ++i) util_dynarray_fini(&fp->slot_relocations[i]); if (fp->insn_len) FREE(fp->insn); } static void * nvfx_fp_state_create(struct pipe_context *pipe, const struct pipe_shader_state *cso) { struct nvfx_pipe_fragment_program *pfp; pfp = CALLOC(1, sizeof(struct nvfx_pipe_fragment_program)); pfp->pipe.tokens = tgsi_dup_tokens(cso->tokens); tgsi_scan_shader(pfp->pipe.tokens, &pfp->info); return (void *)pfp; } static void nvfx_fp_state_bind(struct pipe_context *pipe, void *hwcso) { struct nvfx_context *nvfx = nvfx_context(pipe); nvfx->fragprog = hwcso; nvfx->dirty |= NVFX_NEW_FRAGPROG; } static void nvfx_fp_state_delete(struct pipe_context *pipe, void *hwcso) { struct nvfx_context *nvfx = nvfx_context(pipe); struct nvfx_pipe_fragment_program *pfp = hwcso; unsigned i; for(i = 0; i < Elements(pfp->fps); ++i) { if(pfp->fps[i]) { nvfx_fragprog_destroy(nvfx, pfp->fps[i]); FREE(pfp->fps[i]); } } FREE((void*)pfp->pipe.tokens); FREE(pfp); } void nvfx_init_fragprog_functions(struct nvfx_context *nvfx) { nvfx->pipe.create_fs_state = nvfx_fp_state_create; nvfx->pipe.bind_fs_state = nvfx_fp_state_bind; nvfx->pipe.delete_fs_state = nvfx_fp_state_delete; }