aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* nir/lower_ssbo: handle atomicsKarol Herbst2020-02-212-0/+65
| | | | | | Reviewed-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2753> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2753>
* nir: Add SSBO->global lowering passAlyssa Rosenzweig2020-02-215-0/+167
| | | | | | | | | | | | | To facilitate lowering SSBOs to globals, we need a load_ssbo_address intrinsic. This intrinsic takes an SSBO index and loads the address in global memory of the SSBO (likely implemented via a uniform in the driver). In the future, we'll support bounds checking, but at the moment this is not supported (this pass should only be used for trusted contexts at the moment, i.e. contexts without robustness extensions). Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2753>
* panfrost: Rewrite texture descriptor creation logicAlyssa Rosenzweig2020-02-215-168/+306
| | | | | | | | | | | | | | | | | | Rather than creating partially within the Gallium create function and monkeypatching on draw time with code split across N different files with tight Gallium dependencies, let's streamline everything into a series of maintainable routines in mesa/src/panfrost with no Gallium dependencies, doing the entire texture creation in one-shot and thus adding absolutely zero draw-time overhead (since we can allocate a BO for the descriptor and upload ahead-of-time, so switching textures is as cheap as switching pointers). Was this worth it? You know, I'm not sure :| Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* panfrost: Move format translation to rootAlyssa Rosenzweig2020-02-2113-135/+85
| | | | | | | | | | Since PIPE formats are now shared across Mesa we can do this, and the routines themselves are good enough code that I'm happy to move them here. We'll use them momentarily. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* panfrost: Move pan_afbc.c to rootAlyssa Rosenzweig2020-02-215-11/+11
| | | | | | | | | | Now that PIPE formats are shared across Mesa, this well-documented piece of code is a good fit for root panfrost, let's move it and get a little closer to taming the mess of resources. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* panfrost: Move checksum routines to root panfrostAlyssa Rosenzweig2020-02-217-42/+117
| | | | | | | | | | These are Gallium-independent and clean code; as is tradition, let's hoist them up out of the Gallium driver as a bit of yak shaving as we prepare to untangle the monster that is pan_resource.c Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* util: promote u_debug_memory.c to src/utilErik Faye-Lund2020-02-215-2/+2
| | | | | | | | | | | | | | | | When os_memory_debug.h was promoted to src/util, this source-file on which it depends on when the debug-flag is set on windows was left out. So let's move this also. It doesn't seem there's any way of triggering this issue right now, but it seems better to correct this to avoid this from biting us in the ass in the future. Fixes: 88c4680b5a5 ("util: promote u_memory to src/util") Reviewed-by: Dylan Baker <dylan@pnwbakers> Reviewed-by: Jose Fonseca <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3844> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3844>
* lima: implement PLB PP stream cacheVasily Khoruzhick2020-02-216-120/+121
| | | | | | | | | | | | | | | Generating PLB PP stream is expensive. PLB PP stream content depends on damage, and if damage consists of several rects it's impossible to come up with a simple key. Simplify damage to a single bounding box so we have a simple key and cache PLB PP stream. Cache size is limited to 0.1% of system RAM and once limit is reached least recently used entries are dropped. Reviewed-by: Qiang Yu <[email protected]> Signed-off-by: Vasily Khoruzhick <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3834> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3834>
* radv: use RADEON_FLAG_ZERO_VRAM when creating the trace BOSamuel Pitoiset2020-02-201-3/+2
| | | | | | | Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3888> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3888>
* radv/winsys: add a new flag that requests zerovram allocationsSamuel Pitoiset2020-02-202-2/+6
| | | | | | | | This introduces RADON_FLAG_ZERO_VRAM. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3888>
* gallivm: fix crash in emit_get_buffer_sizeRoland Scheidegger2020-02-201-1/+3
| | | | | | | | | | | Seems a bit odd we extract a value from a vector in the first place (as we always extract the first element), but llvm asserts if using a zero-vector instead of zero as the index element. Fixes piglit crashes for example in arb_shader_storage_buffer_object-layout-std140-write-shader. Reviewed-by: Brian Paul <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3886> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3886>
* gallivm: fix crash with bptc border color samplingRoland Scheidegger2020-02-201-1/+10
| | | | | | | | | | bptc uses fallback for decoding, but still need to handle border color properly. v2: adjust piglit gitlab-ci expectations Reviewed-by: Brian Paul <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3886>
* aco: improve GFX9 1D ddx/ddy assertionRhys Perry2020-02-201-1/+1
| | | | | | | | | Signed-off-by: Rhys Perry <[email protected]> Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2547 Reviewed-by: Bas Nieuwenhuizen <[email protected]> Reviewed-by: Samuel Pitoiset <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3890> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3890>
* pan/midgard: Identify clamp(x, -1.0, 1.0) flagAlyssa Rosenzweig2020-02-202-4/+4
| | | | | | | | | | | So *that's* what's .unk2 was about :) We still need to add an opt pass for it, but we can do that further down the line. Signed-off-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3892> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3892>
* panfrost: Remove flush_frontbufferAlyssa Rosenzweig2020-02-201-11/+0
| | | | | | | | | | A relic from software rasterizers. Hardware drivers generally don't need to implement this. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Erik Faye-Lund <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3878> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3878>
* panfrost: LogicOp supportIcecream952020-02-204-9/+88
| | | | | | | | | | | | | | The generated shaders are definitely not optimal, but for a feature hardly anyone uses, it's probably good enough. The XScreensaver demos quasicrystal, blitspin, bouboule, crystal and munch now seem to work, with no obvious problems. Currently this only works for 8-bit textures. Reviewed-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3887> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3887>
* i965: Do not generate D16 B5G6R5_UNORM configs on gen < 8Danylo Piliaiev2020-02-201-11/+23
| | | | | | | | | | | | | | We don't support MESA_FORMAT_Z_UNORM16 before Gen8, see intel_screen_init_surface_formats. As a consequence disables B5G6R5_UNORM configs with depth on gen < 6. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2275 CC: <[email protected]> Signed-off-by: Danylo Piliaiev <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3206> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3206>
* util: remove the dependency on kcmp.hMarek Olšák2020-02-201-1/+2
| | | | | | | | | Fixes: f76cbc7901f7 "util: Add os_same_file_description helper" Acked-by: Eric Engestrom <[email protected]> Reviewed-by: Michel Dänzer <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3860> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3860>
* intel/fs: Correctly handle multiply of fsign with a source modifierIan Romanick2020-02-191-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The other source of the multiply will be interpreted as a uint32_t in an XOR instruction. Any source modifiers with either not be interpreted at all or will be misinterpreted due to the differing types. If the other operand of the multiplication has a source modifier, just emit an extra move to resolve the source modifiers. The negation source modifier problem is difficult to reproduce due to an algebraic optimization that changes (-a*b) to -(a*b). However, changes in MR !1359 push the negations back down. On Gen7+ it might be possible to do slightly better for an abs() source modifier by using BFI2 as a glorified copysign(). On Gen8+ it might be possible to do slightly better for a neg() source modifier by emitting (~a ^ b). There were no shader-db changes on any Intel platform, so I think we can deal with that problem when it arises. See also piglit!224. Fixes: 06d2c116415 ("intel/fs: Add a scale factor to emit_fsign") Reviewed-by: Matt Turner <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3780> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3780>
* gallium/auxiliary/vl: fix bob compute shaders for deint yuvThong Thai2020-02-191-0/+4
| | | | | | | | | | Scales the Y-axis by 2 when using the Bob deinterlace filter. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2523 Signed-off-by: Thong Thai <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3857> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3857>
* radeonsi: Fix compute copies for subsampled formats.Bas Nieuwenhuizen2020-02-191-3/+18
| | | | | | | | | | | | | | | | | | | | | We cannot do image stores (or render) to subsampled formats. Reinterpret as R32_UINT instead. si_set_shader_image_desc already uses the blockwidth from the view formats, so the image width adjustments are already implemented. This is still icky with mipmapping on GFX9+ though, but since it is mostly a video format I don't think that will be much of an issue and broken mipmapping is still better than broken everything. Fixes: e5167a9276d "radeonsi: disable SDMA on gfx8 to fix corruption on RX 580" Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2535 Reviewed-by: Marek Olšák <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3853> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3853>
* turnip: add option to force use of hw binningJonathan Marek2020-02-193-1/+14
| | | | | | | | | | For running deqp tests which have small render sizes and don't otherwise get coverage of hw binning / multiple tiles. Signed-off-by: Jonathan Marek <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3851> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3851>
* anv: Drop anv_image.c:get_surface()Chad Versace2020-02-191-10/+6
| | | | | | | | | It was called exactly once, and even there it returned the wrong surface in a corner case. Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3882> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3882>
* nir/search: Use larger type to hold linearized indexIan Romanick2020-02-191-1/+1
| | | | | | | | | | | | | | "index" is an offset into a linearized 3-dimensional array. Starting with fbd5359a0a6, the 3-dimensional array can have 43 elements in each dimension. 43**3 = 79507, and that will overflow the uint16_t. See also the discussion in MR !3765. Fixes: fbd5359a0a6 ("nir/algebraic: Rearrange bcsel sequences generated by nir_opt_peephole_select") Suggested-by: Connor Abbott <[email protected]> Reviewed-by: Connor Abbott <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3871> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3871>
* gallium/util: remove unused u_surfaces.c/hMarek Olšák2020-02-194-228/+0
| | | | | Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3866> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3866>
* main/get: Converted type conversion macros to inline functionsKristian H. Kristensen2020-02-191-20/+58
| | | | | | | | | | | | | | | Quiet warnings when called with a GLubyte: src/mesa/main/get.c:3215:19: warning: result of comparison of constant 32767 with expression of type 'GLubyte' (aka 'unsigned char') is always false [-Wtautological-constant-out-of-range-compare] params[0] = INT_TO_FIXED(((GLubyte *) p)[0]); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/mesa/main/get.c:78:38: note: expanded from macro 'INT_TO_FIXED' ~~~ ^ ~~~~~~~~ Delete ENUM_TO_INT64, ENUM_TO_FIXED and BOOLEAN_TO_INT64 which aren't used. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3866>
* Mark a few static inline helpers with ASSERTEDKristian H. Kristensen2020-02-193-3/+3
| | | | | | Quiet warnings in release builds where these look unused. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3866>
* mesa/draw: Make sure all the unused fields are initialized to zeroIan Romanick2020-02-191-11/+10
| | | | | | | | | | | | | | | | | | | | | | | Not initializing prim.indexed caused a few thousand failures on Intel drivers. I also compared the generated assembly with this change and before a6d31589097. The code is still somewhat improved, which I am assuming was the original goal. _mesa_DrawArrays, for example, appears to drop an instruction or two... though the body of the function is only one byte shorter. MR !3591 will eventually delete the uninitialized fields. However, I believe that explicitly initializing the whole thing is more future proof. This ensures that if someone adds fields in the future, they will also be initialized. Once the extra fields are removed, the two implementations should generate idential code. Fixes: a6d31589097 ("mesa: don't use memset in glDrawArrays") Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3870> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3870>
* mesa: Fix FLUSH_VERTICES in SubpixelPrecisionBiasNV.Mathias Fröhlich2020-02-191-1/+2
| | | | | | | | The FLUSH_VERTICES macro is supposed to be called before the current context state is changed. Reviewed-by: Marek Olšák <[email protected]> Signed-off-by: Mathias Fröhlich <[email protected]>
* panfrost: Remove old hackAlyssa Rosenzweig2020-02-191-3/+2
| | | | | | | | | I don't know why I thought this was needed. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855>
* panfrost: Remove old commentAlyssa Rosenzweig2020-02-191-2/+0
| | | | | | | | We already handle primitive restart earlier in the function. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855>
* panfrost: Remove dirty trackingAlyssa Rosenzweig2020-02-193-57/+6
| | | | | | | | | | We never really respected it and it doesn't quite make sense for Mali the way it was previously setup. The correct solution is to do push as much code into CSO creation as possible. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855>
* aco: add some helpers for filling/testing register rangesRhys Perry2020-02-191-148/+106
| | | | | | | | | We do this a lot Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3768> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3768>
* aco: add RegisterFileRhys Perry2020-02-191-12/+27
| | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3768>
* st/vdpau: Only call is_video_format_supported hook if neededMichel Dänzer2020-02-191-7/+7
| | | | | | | | | | | | | | | | | | | Namely only if *is_supported is true, otherwise the hook result can't affect it. Avoids ../src/gallium/state_trackers/vdpau/vdpau_private.h:138: FormatYCBCRToPipe: Assertion `0' failed. with assertions enabled. Fixes: 5d5b414a7b84 "st/vdpau: fix chroma_format handling in VideoSurfaceQueryGetPutBitsYCbCrCapabilities" Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Reviewed-by: Christian König <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3848> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3848>
* iris: Do not dereference nullptr with pipe_referenceDanylo Piliaiev2020-02-192-2/+4
| | | | | | | | | | | ../src/gallium/drivers/iris/iris_fence.h:54:8: runtime error: member access within null pointer of type 'struct iris_syncpt' ../src/gallium/drivers/iris/iris_fence.c:136:8: runtime error: member access within null pointer of type 'struct pipe_fence_handle' Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* glsl/blob: Do not call memcpy if there is nothing to copyDanylo Piliaiev2020-02-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | ../src/util/blob.c:166:7: runtime error: null pointer passed as argument 2, which is declared to never be null #0 0x7fe51bc315df in blob_write_bytes ../src/util/blob.c:166 #1 0x7fe51c7a7b9a in iris_disk_cache_store ../src/gallium/drivers/iris/iris_disk_cache.c:115 #2 0x7fe51c7f444d in iris_compile_fs ../src/gallium/drivers/iris/iris_program.c:1693 #3 0x7fe51c7fdcd9 in iris_create_fs_state ../src/gallium/drivers/iris/iris_program.c:2331 #4 0x7fe519e871a3 in st_create_fp_variant ../src/mesa/state_tracker/st_program.c:1275 #5 0x7fe519e89dd0 in st_get_fp_variant ../src/mesa/state_tracker/st_program.c:1435 #6 0x7fe519ed51e1 in st_update_fp ../src/mesa/state_tracker/st_atom_shader.c:163 #7 0x7fe519eb5d73 in st_validate_state ../src/mesa/state_tracker/st_atom.c:261 #8 0x7fe519e4e0bf in prepare_draw ../src/mesa/state_tracker/st_draw.c:132 #9 0x7fe519e4e76e in st_draw_vbo ../src/mesa/state_tracker/st_draw.c:184 #10 0x7fe51aca5245 in vbo_save_playback_vertex_list ../src/mesa/vbo/vbo_save_draw.c:215 #11 0x7fe51a25b1cc in ext_opcode_execute ../src/mesa/main/dlist.c:1126 #12 0x7fe51a2f8d58 in execute_list ../src/mesa/main/dlist.c:11830 #13 0x7fe51a34b2d0 in _mesa_CallList ../src/mesa/main/dlist.c:14267 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* intel/bufmgr: Cast bitshift to unsignedDanylo Piliaiev2020-02-192-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | ../src/mesa/drivers/dri/i965/intel_buffer_objects.c:405:4: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' #0 0x7f9404ac4ae1 in brw_map_buffer_range ../src/mesa/drivers/dri/i965/intel_buffer_objects.c:405 #1 0x7f9405a9cb13 in vbo_save_map_vertex_store ../src/mesa/vbo/vbo_save_api.c:261 #2 0x7f9405b6a89d in vbo_save_NewList ../src/mesa/vbo/vbo_save_api.c:1774 #3 0x7f94051aba3d in _mesa_NewList ../src/mesa/main/dlist.c:14172 ../src/gallium/drivers/iris/iris_resource.c:1725:61: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' #0 0x7fe51c820c8e in iris_map_direct ../src/gallium/drivers/iris/iris_resource.c:1725 #1 0x7fe51c82322c in iris_transfer_map ../src/gallium/drivers/iris/iris_resource.c:1895 #2 0x7fe5202628be in u_transfer_helper_transfer_map ../src/gallium/auxiliary/util/u_transfer_helper.c:243 #3 0x7fe51997c508 in pipe_buffer_map_range ../src/gallium/auxiliary/util/u_inlines.h:344 #4 0x7fe51997ec8d in u_upload_alloc_buffer ../src/gallium/auxiliary/util/u_upload_mgr.c:221 #5 0x7fe51997f24f in u_upload_alloc ../src/gallium/auxiliary/util/u_upload_mgr.c:254 #6 0x7fe51ccf43af in upload_state ../src/gallium/drivers/iris/iris_state.c:323 #7 0x7fe51d06963a in gen9_init_state ../src/gallium/drivers/iris/iris_state.c:7516 #8 0x7fe51c7c2ea0 in iris_create_context ../src/gallium/drivers/iris/iris_context.c:294 #9 0x7fe519dc729b in st_api_create_context ../src/mesa/state_tracker/st_manager.c:921 #10 0x7fe5198c47ea in dri_create_context ../src/gallium/state_trackers/dri/dri_context.c:161 #11 0x7fe519898aac in driCreateContextAttribs ../src/mesa/drivers/dri/common/dri_util.c:475 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* intel/compiler: Do not qsort zero sized arrayDanylo Piliaiev2020-02-191-2/+4
| | | | | | | | | | | | | | | | | | | | | ../src/intel/compiler/brw_nir_analyze_ubo_ranges.c:316:4: runtime error: null pointer passed as argument 1, which is declared to never be null #0 0x7f78f5916611 in brw_nir_analyze_ubo_ranges ../src/intel/compiler/brw_nir_analyze_ubo_ranges.c:316 #1 0x7f78f255c189 in brw_codegen_wm_prog ../src/mesa/drivers/dri/i965/brw_wm.c:97 #2 0x7f78f2565571 in brw_fs_precompile ../src/mesa/drivers/dri/i965/brw_wm.c:608 #3 0x7f78f24edd2c in brw_shader_precompile ../src/mesa/drivers/dri/i965/brw_link.cpp:56 #4 0x7f78f24f3af8 in brw_link_shader ../src/mesa/drivers/dri/i965/brw_link.cpp:381 #5 0x7f78f39a302a in _mesa_glsl_link_shader ../src/mesa/program/ir_to_mesa.cpp:3119 #6 0x7f78f3a43826 in create_new_program ../src/mesa/main/ff_fragment_shader.cpp:1133 #7 0x7f78f3a43d00 in _mesa_get_fixed_func_fragment_program ../src/mesa/main/ff_fragment_shader.cpp:1163 #8 0x7f78f325ddcd in update_program ../src/mesa/main/state.c:134 #9 0x7f78f325fe64 in _mesa_update_state_locked ../src/mesa/main/state.c:360 #10 0x7f78f32600f1 in _mesa_update_state ../src/mesa/main/state.c:394 #11 0x7f78f2b3e587 in clear ../src/mesa/main/clear.c:169 #12 0x7f78f2b3e587 in _mesa_Clear ../src/mesa/main/clear.c:242 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* brw_fs: Avoid zero size vlaDanylo Piliaiev2020-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | ../src/intel/compiler/brw_fs.cpp:2247:46: runtime error: variable length array bound evaluates to non-positive value 0 #0 0x7f78f5697678 in fs_visitor::assign_constant_locations() ../src/intel/compiler/brw_fs.cpp:2247 #1 0x7f78f571d29e in fs_visitor::optimize() ../src/intel/compiler/brw_fs.cpp:7361 #2 0x7f78f574eb84 in fs_visitor::run_fs(bool, bool) ../src/intel/compiler/brw_fs.cpp:8022 #3 0x7f78f575641b in brw_compile_fs ../src/intel/compiler/brw_fs.cpp:8408 #4 0x7f78f255c8e4 in brw_codegen_wm_prog ../src/mesa/drivers/dri/i965/brw_wm.c:123 #5 0x7f78f2565571 in brw_fs_precompile ../src/mesa/drivers/dri/i965/brw_wm.c:608 #6 0x7f78f24edd2c in brw_shader_precompile ../src/mesa/drivers/dri/i965/brw_link.cpp:56 #7 0x7f78f24f3af8 in brw_link_shader ../src/mesa/drivers/dri/i965/brw_link.cpp:381 #8 0x7f78f39a302a in _mesa_glsl_link_shader ../src/mesa/program/ir_to_mesa.cpp:3119 #9 0x7f78f3a43826 in create_new_program ../src/mesa/main/ff_fragment_shader.cpp:1133 #10 0x7f78f3a43d00 in _mesa_get_fixed_func_fragment_program ../src/mesa/main/ff_fragment_shader.cpp:1163 #11 0x7f78f325ddcd in update_program ../src/mesa/main/state.c:134 #12 0x7f78f325fe64 in _mesa_update_state_locked ../src/mesa/main/state.c:360 #13 0x7f78f32600f1 in _mesa_update_state ../src/mesa/main/state.c:394 #14 0x7f78f2b3e587 in clear ../src/mesa/main/clear.c:169 #15 0x7f78f2b3e587 in _mesa_Clear ../src/mesa/main/clear.c:242 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* brw_nir: Cast bitshift to unsignedDanylo Piliaiev2020-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | ../src/intel/compiler/brw_nir.c:979:40: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' #0 0x7f78f590d10b in brw_nir_apply_sampler_key ../src/intel/compiler/brw_nir.c:979 #1 0x7f78f590e07b in brw_nir_apply_key ../src/intel/compiler/brw_nir.c:1057 #2 0x7f78f5754b45 in brw_compile_fs ../src/intel/compiler/brw_fs.cpp:8347 #3 0x7f78f255c8e4 in brw_codegen_wm_prog ../src/mesa/drivers/dri/i965/brw_wm.c:123 #4 0x7f78f2565571 in brw_fs_precompile ../src/mesa/drivers/dri/i965/brw_wm.c:608 #5 0x7f78f24edd2c in brw_shader_precompile ../src/mesa/drivers/dri/i965/brw_link.cpp:56 #6 0x7f78f24f3af8 in brw_link_shader ../src/mesa/drivers/dri/i965/brw_link.cpp:381 #7 0x7f78f39a302a in _mesa_glsl_link_shader ../src/mesa/program/ir_to_mesa.cpp:3119 #8 0x7f78f3a43826 in create_new_program ../src/mesa/main/ff_fragment_shader.cpp:1133 #9 0x7f78f3a43d00 in _mesa_get_fixed_func_fragment_program ../src/mesa/main/ff_fragment_shader.cpp:1163 #10 0x7f78f325ddcd in update_program ../src/mesa/main/state.c:134 #11 0x7f78f325fe64 in _mesa_update_state_locked ../src/mesa/main/state.c:360 #12 0x7f78f32600f1 in _mesa_update_state ../src/mesa/main/state.c:394 #13 0x7f78f2b3e587 in clear ../src/mesa/main/clear.c:169 #14 0x7f78f2b3e587 in _mesa_Clear ../src/mesa/main/clear.c:242 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* gallium: Only define PIPE_ALIGNSTACK on x86.Eric Anholt2020-02-181-1/+1
| | | | | | | | | | At least arm and arm64 don't respect this attribute, producing compiler warnings in lp_test_format.c. The gcc and LLVM docs for the attribute only talk about them being needed on x86. Reviewed-by: Michel Dänzer <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Fix another uninitialized value warning, on init_val.Eric Anholt2020-02-181-1/+1
| | | | | | | It's only used in the vote_ieq paths, but gcc doesn't see that. Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Silence uninitialized variable warning about "scissor"Eric Anholt2020-02-181-1/+1
| | | | | | | nr_planes is only > 3 when scissor is enabled, but gcc doesn't see it. Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Silence uninitialized variable warning about "vals"Eric Anholt2020-02-181-1/+1
| | | | | Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Fix warning about uninitialized "op" in the NIR path.Eric Anholt2020-02-181-74/+75
| | | | | | | Similar to TGSI, move the switch statement and use more unreachable(). Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Silence uninitialized variable warning about "chan"Eric Anholt2020-02-181-1/+1
| | | | | | | Both arms of an if define it, but gcc doesn't notice. Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Silence "possibly uninitialized value" warning for ssbo_limit.Eric Anholt2020-02-181-2/+2
| | | | | | | | The condition for the use matches the def, but you can't trust a compiler to notice. Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* llvmpipe: Fix real uninitialized use of "atype" for SEMANTIC_FACEEric Anholt2020-02-181-0/+1
| | | | | | Fixes: 502548a09c5a ("gallivm/llvmpipe: add support for front facing in sysval.") Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* radv: Squelch possibly-undefined warningEric Anholt2020-02-181-1/+1
| | | | | | | | The same condition is used in the def as in the use, but gcc wasn't figuring it out. Reviewed-by: Samuel Pitoiset <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>