aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* panfrost: Create additional BO for the checksum of imported BOs (Bifrost)Tomeu Vizoso2020-05-013-2/+16
| | | | | | | | | | Similar to what the blob does. My reason for doing this was mainly so traces weren't as different, which makes it more work to spot relevant differences. Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4832>
* panfrost: Split bit out of format.unk3Tomeu Vizoso2020-05-013-1/+7
| | | | | | | | On Bifrost traces, we can observe that this bit is always enabled. Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4832>
* ci: add lists of expected failures & skipped tests for RAVEN with ACOSamuel Pitoiset2020-05-012-0/+16
| | | | | Signed-off-by: Samuel Pitoiset <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4848>
* scripts: remove unittest.mock dependency when not usedAndres Gomez2020-05-011-2/+0
| | | | | | | | | Found upon inspection. Signed-off-by: Andres Gomez <[email protected] Reviewed-and-Tested-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4840>
* ci: fix reporting the number of unexpected/flakesSamuel Pitoiset2020-05-011-2/+2
| | | | | | | | | | `wc -l $file` returns the number of lines and the filename. Fixes: b8c66aeb934 ("ci: Clean up some excessive use of pipes in dEQP results processing.") Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Andres Gomez <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4829>
* gitlab-ci: Use YAML anchor for llvmpipe paths in virgl rulesMichel Dänzer2020-05-011-3/+4
| | | | | | | Instead of duplicating them. Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4808>
* freedreno: we don't need aligned vbo'sRob Clark2020-05-011-3/+5
| | | | | | | | This gets rid of the last reason that mesa/st would use `u_vbuf` on a6xx. Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4812>
* freedreno/a6xx: add some more formatsRob Clark2020-05-011-0/+8
| | | | | | | u_vbuf was translating these for us.. which isn't really necessary. Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4812>
* pan/decode: Don't crash on missing payloadAlyssa Rosenzweig2020-05-011-3/+5
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* panfrost: Fix tiled texture "stride"s on BifrostAlyssa Rosenzweig2020-05-011-6/+29
| | | | | | | | They're not real strides like linear textures but the hw does use them so we do have to get it right annoyingly. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* panfrost: Fix norm coords on bifrost samplerAlyssa Rosenzweig2020-05-013-8/+5
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* panfrost: Fix sampler wrap/filter field ordersAlyssa Rosenzweig2020-05-011-3/+3
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* panfrost: Fix size of bifrost sampler descriptorAlyssa Rosenzweig2020-05-012-6/+5
| | | | | | | Should be 32-bytes, it looks like. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* panfrost: Fix texture field sizeAlyssa Rosenzweig2020-05-011-1/+1
| | | | | | | I have to imagine this was UB. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* pan/bit: Add round testsAlyssa Rosenzweig2020-05-011-0/+16
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* pan/bit: Interpret ROUNDAlyssa Rosenzweig2020-05-011-1/+19
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* pan/bit: Add framework forinterpreting double vs floatAlyssa Rosenzweig2020-05-011-3/+6
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* pan/bi: Pack round opcodes (FMA, either 16 or 32)Alyssa Rosenzweig2020-05-012-1/+17
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* pan/bi: Pipe multiple textures throughAlyssa Rosenzweig2020-05-012-6/+6
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* pan/bi: Add texture indices to IRAlyssa Rosenzweig2020-05-012-2/+18
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4844>
* freedreno/a6xx: fix LRZ hangRob Clark2020-05-012-2/+1
| | | | | | | | | | | | | In detecting the case where we actually do need to re-emit LRZ state (due to new batch), we were checking `ctx->last.dirty` to detect when we cannot trust previous state. But this is cleared before we check it. Move where it is cleared to the end of the draw_vbo() path. Fixes: dfa702e94b9 ("freedreno/a6xx: limit LRZ state emit") Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4842>
* freedreno/ir3: Leave bools as 1-bit, storing them in full regs.Eric Anholt2020-04-302-119/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | If use NIR's 1-bit bool representation , we get exactly the bool behavior the hardware provides: CMPS produces true or false, AND/OR/XOR work as intended without extra absnegs, and we can pass those half values directly to other CMPS. We emit an absneg for b2b1 ("turn a memory load into a 1-bit NIR boolean"), but we would have done so for the ir3_n2b() on the use of that value anyway. The most awkward bit is that inot(a@1) is now a sub(1, a), but we can encode the 1 as an immediate so it's fine. No significant changes to GL_TIME_ELAPSED on my set of traces (n=21). instructions in affected programs: 1570638 -> 1548702 (-1.40%) nops in affected programs: 624053 -> 611381 (-2.03%) non-nops in affected programs: 959061 -> 949797 (-0.97%) mov in affected programs: 5258 -> 5252 (-0.11%) cov in affected programs: 15099 -> 15902 (5.32%) dwords in affected programs: 469600 -> 452768 (-3.58%) last-baryf in affected programs: 162211 -> 154726 (-4.61%) full in affected programs: 4881 -> 4797 (-1.72%) sstall in affected programs: 173953 -> 174545 (0.34%) (ss) in affected programs: 10922 -> 10934 (0.11%) (sy) in affected programs: 728 -> 745 (2.34%) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4518>
* freedreno/ir3: Drop redundant IR3_REG_HALF setup in ALU ops.Eric Anholt2020-04-301-6/+0
| | | | | | It's set by ir3_put_dst() immediately after. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4518>
* radeonsi: revert an accidental change in si_clear_bufferMarek Olšák2020-04-301-1/+1
| | | | | | | | | The change was in: 7b0b085c94347cb9c94d88e11a64a6c341d95477 Fixes: 7b0b085c943 ("radeonsi: drop the negation from fmask_is_not_identity") Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: fix si_compute_clear_render_target with render condition enabledMarek Olšák2020-04-301-6/+9
| | | | | Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: add a workaround to fix KHR-GL45.texture_view.view_classes on gfx9Marek Olšák2020-04-301-0/+15
| | | | | Acked-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: implement and use compute-based DCC decompression on gfx9-10Marek Olšák2020-04-307-14/+128
| | | | | | | | | DCC_DECOMPRESS doesn't work. Instead of trying to figure out why, use a compute blit where the load is compressed and the store is uncompressed. Acked-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: add SI_IMAGE_ACCESS_DCC_OFF to ignore DCC for shader imagesMarek Olšák2020-04-304-6/+9
| | | | | | | A shader-based DCC decompress pass will use this. Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: bind shader images after DCC is disabled for image storesMarek Olšák2020-04-301-3/+3
| | | | | | | | This prevents an infinite recursion with a compute-based DCC decompression when it restores shader images. Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: clean up and deduplicate code around internal compute dispatchesMarek Olšák2020-04-301-38/+43
| | | | | | | | | | | | In addition to the cleanup, there are these changes in behavior: - clear_render_target waits for idle after the dispatch and then flushes L0-L1 caches (this was missing) - sL0 is no longer invalidated before the dispatch, because src resources don't use it - sL0 is no longer invalidated after the dispatch if dst is an image Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* radeonsi: unify and align down the max SSBO/TBO/UBO buffer binding sizeMarek Olšák2020-04-301-9/+3
| | | | | | | | | | Rounding down the size fixes: KHR-GL45.enhanced_layouts.ssb_member_invalid_offset_alignment Fixes: 03e2adc990d239119619f22599204c1b37b83134 Acked-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* tgsi_to_nir: handle TGSI_OPCODE_BARRIERMarek Olšák2020-04-301-0/+12
| | | | | Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* tgsi_to_nir: handle TGSI_SEMANTIC_BLOCK_SIZEMarek Olšák2020-04-301-0/+4
| | | | | Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4761>
* glthread: upload non-VBO vertices and indices for non-Indirect non-IBM drawsMarek Olšák2020-04-309-28/+1006
| | | | | | This is basically the same thing u_vbuf does. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: handle gl{Push,Pop}ClientAttrib{DefaultEXT} for glthread statesMarek Olšák2020-04-304-4/+113
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: handle POS vs GENERIC0 aliasingMarek Olšák2020-04-302-3/+10
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: initialize VAOs properlyMarek Olšák2020-04-303-0/+33
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: track primitive restart stateMarek Olšák2020-04-305-3/+68
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: track instance divisor changesMarek Olšák2020-04-303-13/+39
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: track pointers and strides for Pointer & EXT_dsa attrib functionsMarek Olšák2020-04-307-43/+102
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: don't use atomics for refcounting to decrease overhead on AMD ZenMarek Olšák2020-04-302-1/+33
| | | | | Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* glthread: do glBufferSubData as unsynchronized upload + GPU copyMarek Olšák2020-04-304-2/+138
| | | | | | | | | | | | 1. glthread has a private upload buffer (as struct gl_buffer_object *) 2. the new function glInternalBufferSubDataCopyMESA is used to execute the copy (the source buffer parameter type is struct gl_buffer_object * as GLintptr) Now glthread can handle arbitrary glBufferSubData sizes without syncing. This is a good exercise for uploading data outside of the driver thread. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: add _mesa_InternalBind{ElementBuffer,VertexBuffers} for glthreadMarek Olšák2020-04-305-0/+62
| | | | | | Uploaded non-VBO user data will be set via these functions. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: add glInternalBufferSubDataCopyMESA for glthreadMarek Olšák2020-04-307-1/+66
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: inline vbo_context inside gl_context to remove vbo_context dereferencesMarek Olšák2020-04-306-157/+151
| | | | | | | | | | The number of lines in the disassembly of vbo_exec_api.c.o decreased by 4.5%, which roughly corresponds to a decrease in instructions for immediate mode thanks to the removal of ctx->vbo_context dereferences. It increases performance in one Viewperf11 subtest by 2.8%. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa,st/mesa: add a fast path for non-static VAOsMarek Olšák2020-04-305-0/+64
| | | | | | | | | | | | | Skip most of _mesa_update_vao_derived_arrays if the VAO is not static. Drivers need a separate codepath for this. This increases performance by 7% with glthread and the game "torcs". The reason is that glthread uploads vertices and sets vertex buffers every draw call, so the overhead is very noticable. glthread doesn't hide the overhead, because the driver thread is the busiest thread. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: don't update shaders on fixed-func state changes if user shaders are boundMarek Olšák2020-04-302-3/+28
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: don't set unnecessary program flags in _mesa_update_stateMarek Olšák2020-04-301-2/+1
| | | | | | | _NEW_PROGRAM is already set. _NEW_FRAG_CLAMP is not used by the fixed-func fragment shader. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: set _NEW_FRAG_CLAMP only when neededMathias Fröhlich2020-04-301-3/+5
| | | | | Reviewed-by: Marek Olšák <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>
* mesa: don't call _mesa_update_state for _mesa_get_clamp_fragment_colorMarek Olšák2020-04-304-18/+4
| | | | | | It's not needed. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4314>