summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* automake: small cleanup after the meson.build inclusionEmil Velikov2018-01-254-5/+4
| | | | | | | | | Namely extend the EXTRA_DIST list, instead of re-assigning it and bring back a file dropped by mistake. Fixes: 436ed65d38d ("autotools: include meson build files in tarball") Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Daniel Stone <[email protected]>
* automake: anv: ship anv_extensions_gen.py in the tarballEmil Velikov2018-01-251-0/+1
| | | | | | Fixes: dd088d4bec7 ("anv/extensions: Generate a header file with extension tables") Signed-off-by: Emil Velikov <[email protected]>
* automake: vc5: remove non-applicable v3dx_simulator.hEmil Velikov2018-01-251-1/+0
| | | | Signed-off-by: Emil Velikov <[email protected]>
* gallivm: fix crash with seamless cube filtering with different min/mag filterRoland Scheidegger2018-01-251-17/+21
| | | | | | | | | | | | | | We are not allowed to modify the incoming coords values, or things may crash (as we may be inside a llvm conditional and the values may be used in another branch). I recently broke this when fixing an issue with NaNs and seamless cube map filtering, and it causes crashes when doing cubemap filtering if the min and mag filters are different. Add const to the pointers passed in to prevent this mishap in the future. Fixes: a485ad0bcd ("gallivm: fix an issue with NaNs with seamless cube filtering") Reviewed-by: Jose Fonseca <[email protected]>
* egl: keep extension list sorted, per comment at the topEric Engestrom2018-01-251-1/+1
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Adam Jackson <[email protected]>
* swr/rast: support llvm 3.9 type declarationsGeorge Kyriazis2018-01-251-0/+14
| | | | | | | | | | LLVM 3.9 was not taken into account in initial check-in. Fixes: 01ab218bbc ("swr/rast: Initial work for debugging support.") cc: [email protected] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104749 Acked-by: Emil Velikov <[email protected]> Reviewed-by: Bruce Cherniak <[email protected]>
* ac/nir: add break statements in needs_view_index_sgpr()Samuel Pitoiset2018-01-251-0/+2
| | | | | | | | | Previous code is correct but as the first case statement uses a break, keep it consistent. CID: 1428579 Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* loader: let compiler figure out the length of the stringEric Engestrom2018-01-251-2/+1
| | | | | | | Basically, turn comment into code Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* meson: simplify dri3 logicEric Engestrom2018-01-251-8/+2
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* mesa: add missing RGB9_E5 format in _mesa_base_fbo_formatJuan A. Suarez Romero2018-01-251-0/+3
| | | | | | This fixes KHR-GL45.internalformat.renderbuffer.rgb9_e5. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Stop disabling aux during texture preparationJason Ekstrand2018-01-243-12/+8
| | | | | | | | | | | | | | | | | Previously, we were handling self-dependencies by marking the render buffer and then passing disable_aux=true to prepare_texture so that it would do a resolve. This works but ends us up doing to much resolving in some cases. Specifically, if we're doing something such as mipmap generation, this would cause us to resolve all levels of the texture if even one of them is overlapping. Instead, this commit makes us wait until we process the framebuffer to do these resolves and we only resolve the slices needed for rendering. Doing this resolve puts them into the pass-through state so, even if we do texture using CCS_E, the CCS data will effectively be ignored and the real surface contents read. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/draw: Set NEW_AUX_STATE when draw aux changesJason Ekstrand2018-01-241-1/+4
| | | | | | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104411 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104383 Fixes: ea0d2e98ecb369ab84e78c84709c0930ea8c293a Cc: [email protected] Reviewed-by: Topi Pohjolainen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Replace draw_aux_buffer_disabled with draw_aux_usageJason Ekstrand2018-01-244-35/+27
| | | | | | | | | | | Instead of keeping an array of booleans, we now hang onto an array of isl_aux_usage enums. This means that the thing we are passing from brw_draw.c to surface state setup is the thing that surface state setup actually needs instead of an input to compute what it needs. Cc: [email protected] Reviewed-by: Topi Pohjolainen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/surface_state: Drop brw_aux_surface_disabledJason Ekstrand2018-01-241-20/+0
| | | | | | | | | | | | | The only purpose of this function is to disable aux on texture surfaces when the corresponding renderbuffer has aux disabled. However, the act of disabling aux on the renderbuffer will cause it to be resolved and intel_miptree_texture_aux_usage will already check the resolved status of a texture and return ISL_AUX_USAGE_NONE for it. Even if we used CCS for it, that wouldn't really be a problem because the CCS will be in the pass-through state and so it would effectively be ignored. Cc: [email protected] Reviewed-by: Kenneth Graunke <[email protected]>
* i965/miptree: Add an aux_disabled parameter to render_aux_usageJason Ekstrand2018-01-245-8/+17
| | | | | | | | | | | | | | | | | | | | Only one of the callers of intel_miptree_render_aux_usage actually took brw->draw_aux_buffer_disabled into account. This was causing us to ignore draw_aux_buffer_disabled for the intel_miptree_prepare_render. This isn't a problem because the draw_aux_buffer_disabled entry was set during texture preparation and we already did the resolve at that time. However, this also meant that the aux_usage we were passing to brw_cache_flush_for_render and brw_render_cache_add_bo was wrong so our automatic cache flushing around aux_usage changes wasn't happening. This was causing GPU hangs in Oxenfree. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104711 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104411 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104383 Fixes: ea0d2e98ecb369ab84e78c84709c0930ea8c293a Cc: [email protected] Reviewed-by: Iago Toral Quiroga <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/miptree: Take an aux_usage in prepare/finish_renderJason Ekstrand2018-01-244-16/+8
| | | | | | | | | | Both callers of intel_miptree_prepare/finish_render have to call intel_miptree_render_aux_usage anyway for other reasons. They may as well pass the result in instead of us calling it again. Cc: [email protected] Reviewed-by: Iago Toral Quiroga <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* aubinator: Multiply count by 4 to compute buffer sizesJason Ekstrand2018-01-241-1/+1
| | | | The count field is in terms of dwords and not bytes.
* st/glsl_to_nir: remove reallocation of sampler/image locationTimothy Arceri2018-01-251-8/+0
| | | | | | | | | | As far as I can tell this always just reassigns the same value. Also as we don't curretly store UniformHash in the shader cache removing this will help with adding a shader cache to gallium nir drivers. Reviewed-by: Rob Clark <[email protected]>
* docs: add 18.1.0-devel release notes templateJordan Justen2018-01-241-0/+64
| | | | Signed-off-by: Jordan Justen <[email protected]>
* mesa: bump version to 18.1.0-develJordan Justen2018-01-241-1/+1
| | | | Signed-off-by: Jordan Justen <[email protected]>
* meson: handle LLVM 'x.x.xgit-revision' versionsGreg V2018-01-241-2/+6
| | | | | | | | | | | When LLVM is built inside of a git repo (even way below, e.g. /usr/ports/.git exists, and LLVM is built in /usr/ports/devel/llvm50/work), its version becomes something like 5.0.0git-f8ab206b2176. New meson versions already handle this, but we support older versions too. Fixes: 673dda8330769 ("meson: build "radv" vulkan driver for radeon hardware") Reviewed-by: Dylan Baker <[email protected]>
* meson: fix getting cflags from pkg-configGreg V2018-01-241-4/+6
| | | | | | | | | | | | | | get_pkgconfig_variable('cflags') always returns an empty list, it's a function for getting *custom* variables. Meson does not yet support asking for cflags, so explicitly invoke pkg-config for now. Fixes: 68076b87474e ("meson: build gallium vdpau state tracker") Fixes: a817af8a89eb ("meson: build gallium xvmc state tracker") Fixes: 1d36dc674d52 ("meson: build gallium omx state tracker") Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker") Reviewed-by: Dylan Baker <[email protected]>
* meson: fix BSD buildGreg V2018-01-241-26/+28
| | | | | | CC: 18.0 <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: fix missing dependenciesGreg V2018-01-242-2/+2
| | | | | | Fixes: 66f97f6640f5 ("meson: build radeonsi") Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* anv: correct a duplicate check in an assertGrazvydas Ignotas2018-01-251-1/+1
| | | | | | | | Looks like checking both sources was intended, instead of the first one twice. Found with Coccinelle, coccinellery/xand/xand.cocci semantic patch. Signed-off-by: Grazvydas Ignotas <[email protected]> Reviewed-by: Tapani Pälli <[email protected]>
* meson: fix HAVE_LLVM version define in meson buildMarc Dietrich2018-01-241-1/+1
| | | | | | | | | LLVM patch level is not included in HAVE_LLVM. Fixes: e6418ab1566d ("meson: build "radv" vulkan driver for radeon hardware") Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Signed-off-by: Marc Dietrich <[email protected]>
* meson: correctly set SYSCONFDIR for loading dirrcDylan Baker2018-01-241-2/+6
| | | | | | | Fixes: d1992255bb29 ("meson: Add build Intel "anv" vulkan driver") Reported-by: Marc Dietrich <[email protected]> Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* radv: add multisample Z optimisation from amdvlkDave Airlie2018-01-251-0/+3
| | | | | | | | This was just found while reading for other stuff, src/core/hw/gfxip/gfx6/gfx6DepthStencilView.cpp. Reviewed-by: Samuel Pitoiset <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* radv: move spi_baryc_cntl to pipelineDave Airlie2018-01-253-5/+5
| | | | | | | | | | | | We need to enable the pos float location 2 mode anytime we have persample not just when forced by the frag shader. This fixes: dEQP-VK.pipeline.multisample.min_sample_shading* Fixes: 58c97a079 (radv: enable location at sample when persample is forced.) Reviewed-by: Samuel Pitoiset <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* gallium/u_tests: add texture_barrier and FBFETCH testsMarek Olšák2018-01-241-1/+110
| | | | | Tested-by: Dieter Nützel <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: don't ignore pitch for imported texturesMarek Olšák2018-01-241-2/+12
| | | | | | Cc: 17.2 17.3 <[email protected]> Tested-by: Dieter Nützel <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* meson: Fix define for USE_SSE41Scott D Phillips2018-01-241-1/+1
| | | | | | | | | | | Before we were adding -DHAVE_SSE41 which isn't what the code is looking for, so some uses of the sse4.1 code were always being skipped. v2: Don't add any compile check for the quite old -msse4.1 option (Dylan) Fixes: 84486f6462 ("meson: Enable SSE4.1 optimizations") Reviewed-by: Dylan Baker <[email protected]>
* mesa/st/glsl_to_tgsi: remove now unneeded assert.Gert Wollny2018-01-241-1/+0
| | | | | | | | | With the implementation of the tracking of the registers used in reladdr asserting that a driver calling merge_register() uses the address register is no longer needed. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/tests: Add tests for lifetime tracking with indirect addressingGert Wollny2018-01-243-4/+189
| | | | | | | | | Add a code line type that accepts one layer of indirect addressing and add tests to check that temporary register access used for indirect addressing is accounted for in the lifetime estimation. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/glsl_to_tgsi: Add tracking of indirect addressing registersGert Wollny2018-01-241-34/+74
| | | | | | | | | | | | | | | | | | | | | | | So far indirect addressing was not tracked to estimate the temporary life time, and it was not needed, because code to load the address registers was always emitted eliminating the reladdr* handles in the past glsl-to.tgsi stages. Now, with Mareks patch allowing any 1D register to be used for addressing on some hardware this changed, and the tracking becomes necessary. Because the registers have no direct indication on whether the reladdr* was already loaded into an address register, the temporaries in reladdr* are always tracked as reads. This may result in a slight over-estimation of the lifetime in the cases when the load to the address register was emitted. v2: no changes v3: Use debug_log variable instead of directly writing to std::err in debugging output. v6: fix indention and typos Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]> (v1) Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/tests: Add tests for improved tracking of temporariesGert Wollny2018-01-241-7/+486
| | | | | | | | Additional tests are added that check the tracking of access to temporaries in if-else branches. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/glsl_to_tgsi: Add tracking of ifelse writes in register mergingGert Wollny2018-01-241-20/+292
| | | | | | | | | | Improve the life-time evaluation of temporary registers by also tracking writes in both if and else branches and in up to 32 nested scopes. As a result the estimated required register life-times can be further reduced enabling more registers to be merged. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/tests: cleanup whitespace usage and correct some commentsGert Wollny2018-01-241-64/+63
| | | | | Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/tests: unify MockCodeLine* classesGert Wollny2018-01-244-547/+735
| | | | | | | | | | | | | | | | | | | | * Merge the classes MockCodeLine and MockCodelineWithSwizzle into one, and refactor tests accordingly. * Change memory allocations to use ralloc* interface. v2: * move the test classes into a conveniance library * rename the Mock* classes to Fake* since they are not really Mocks * Base assertion of correct number of src and dst registers in tests on what the operatand actually expects * Fix number of destinations in one test v6: * fix local includes using "..." insteadof <...> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/tests: Fix zero-byte allocation leaksGert Wollny2018-01-241-7/+15
| | | | | | | | | | Don't allocate a zero-sized array, when no texture offsets are given. v5: correct spaces and empty lines Reviewed-by: Brian Paul <[email protected]>(v4) Reviewed-by: Nicolai Hähnle <[email protected]> (v1) Signed-off-by: Gert Wollny <[email protected]>
* mesa/st/glsl_to_tgsi: Add some operators for glsl_to_tgsi related classesGert Wollny2018-01-243-88/+202
| | | | | | | | | | | Add the equal operator and the "<<" stream write operator for the st_*_reg classes and the "<<" operator to the instruction class, and make use of these operators in the debugging output. v5: Fix empty lines Reviewed-by: Brian Paul <[email protected]> (v4) Signed-off-by: Gert Wollny <[email protected]>
* mesa/program: Add missing file types to printoutGert Wollny2018-01-241-2/+14
| | | | | Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Gert Wollny <[email protected]>
* vbo: fix incorrect min/max_index values in display list draw callBrian Paul2018-01-243-3/+8
| | | | | | | | | | | | | | This fixes another regression from commit 8e4efdc895ea ("vbo: optimize some display list drawing"). The problem was the min_index, max_index values passed to the vbo drawing function were not computed to compensate for the biased prim::start values. https://bugs.freedesktop.org/show_bug.cgi?id=104746 https://bugs.freedesktop.org/show_bug.cgi?id=104742 https://bugs.freedesktop.org/show_bug.cgi?id=104690 Tested-by: Clayton Craft <[email protected]> Fixes: 8e4efdc895ea ("vbo: optimize some display list drawing") Reviewed-by: Emil Velikov <[email protected]>
* vbo: whitespace/formatting fixes in vbo_split_inplace.cBrian Paul2018-01-241-104/+111
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* vbo: whitespace/formatting fixes in vbo.hBrian Paul2018-01-241-44/+68
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* vbo/i965: move vbo_all_varyings_in_vbos() to brw_draw.cBrian Paul2018-01-243-14/+17
| | | | | | | | It's only used in brw_draw_prims(). s/GLboolean/bool/, etc. Reviewed-by: Roland Scheidegger <[email protected]>
* vbo: remove unused vbo_any_varyings_in_vbos() functionBrian Paul2018-01-242-13/+0
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* vbo: remove unneeded #includesBrian Paul2018-01-244-5/+0
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* vbo: remove vbo_context.h and change includes to use vbo.h insteadBrian Paul2018-01-2418-79/+6
| | | | | | Now vbo.h is the public interface to the VBO module. Reviewed-by: Roland Scheidegger <[email protected]>
* vbo: move remaining items from vbo_context.h to vbo.hBrian Paul2018-01-246-43/+34
| | | | | | | Non-VBO sources files sometimes included vbo.h while others included vbo_context.h. We're moving all public types, functions to the former. Reviewed-by: Roland Scheidegger <[email protected]>