aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* nir/spirv: Refactor variable deocration handlingJason Ekstrand2016-09-081-15/+29
| | | | | | | | | | | Previously, we dind't apply variable decorations to the members of a split structure variable. This doesn't quite work, unfortunately, because things such as the "flat" qualifier may get applied to an entire structure instead of propagated to the members. This fixes 9 of the new CTS tests in the dEQP-VK.glsl.linkage.varying.struct.* group. Signed-off-by: Jason Ekstrand <[email protected]> Cc: "12.0" <[email protected]>
* nir/spirv: Break variable decoration handling into a helperJason Ekstrand2016-09-081-74/+81
| | | | | Signed-off-by: Jason Ekstrand <[email protected]> Cc: "12.0" <[email protected]>
* aubinator: only use program_invocation_short_name with glibc/cygwinJonathan Gray2016-09-081-1/+7
| | | | | | | | | | program_invocation_short_name is a gnu extension. Limit use of it to glibc and cygwin and otherwise use getprogname() which is available on BSD and OS X. Signed-off-by: Jonathan Gray <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* aubinator: include libgen.h for basename(3)Jonathan Gray2016-09-081-0/+1
| | | | | | | | | | Include libgen.h for basename as required by posix. The definition is not found on at least OpenBSD otherwise. Signed-off-by: Jonathan Gray <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* aubinator: stop using non portable error() functionJonathan Gray2016-09-081-16/+30
| | | | | | | | | | | | | error() is a gnu extension and is not present on OpenBSD and likely other systems. Convert use of error to fprintf/strerror/exit. Signed-off-by: Jonathan Gray <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* egl: Fix up indentation on previous commitAdam Jackson2016-09-081-2/+2
| | | | | | This was requested in review but I pushed the wrong version. Signed-off-by: Adam Jackson <[email protected]>
* egl: Document why EGL_OPENGL{, _ES}_API are mostly identicalAdam Jackson2016-09-081-0/+10
| | | | | Signed-off-by: Adam Jackson <[email protected]> Reviewed-by: Alejandro Piñeiro <[email protected]>
* anv: Link to libX11-xcb only when unneededChad Versace2016-09-081-3/+5
| | | | | | | | | | | | | The Makefile unconditionally linked libX11-xcb into libvulkan_intel.so. But it's needed only if HAVE_PLATFORM_X11. Fixes build of libvulkan_intel.so on Chromium OS, which has no X11 libraries. Fixes: 71258e9462c ("anv/x11: Add support for Xlib platform") Cc: Kevin Strasser <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* swr: fixes for format mapping and texture sizingTim Rowley2016-09-081-2/+16
| | | | Signed-off-by: Tim Rowley <[email protected]>
* intel/blorp: Allow single slice converter to suppress number of layersTopi Pohjolainen2016-09-081-3/+0
| | | | | Signed-off-by: Topi Pohjolainen <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* spirv/nir: Implement OpAtomicLoad/Store for shared variablesLionel Landwerlin2016-09-071-1/+34
| | | | | | | Missing bits from 2afb950161f847d9b0a7be03dfb62cacc5ea51ba. Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* nir/spirv: Remove an erroneous "fall through" commentJason Ekstrand2016-09-071-1/+0
|
* EGL: Combine the GL and GLES current contexts (v2)Kyle Brenneman2016-09-074-107/+22
| | | | | | | | | | | | | | | | | | | | | | Only keep track of a single current context, instead of separate contexts for GL and GLES. In EGL 1.4 (and 1.5), EGL_OPENGL_API and EGL_OPENGL_ES_API are supposed to be interchangeable for all purposes except for eglCreateContext. The _EGLThreadInfo::CurrentContexts array is now a single pointer to the current context, which may be a GL or GLES context. In addition, it now keeps track of the current API as an enum instead of an index. eglMakeCurrent will now replace the current context, regardless of which client API is used for for the current and new contexts. It no longer checks for a conflicting context. In addition, calling eglMakeCurrent with EGL_NO_CONTEXT will now release the current context regardless of the current API. v2: Rebased against master (Adam Jackson) Reviewed-by: Adam Jackson <[email protected]>
* gbm: wire up fence extensionRob Clark2016-09-074-1/+6
| | | | | | | | v2: make fence extension optional to not break non-i965 classic drivers, and move __DRI2_FENCE into core extensions, based on comments from Emil Signed-off-by: Rob Clark <[email protected]>
* freedreno: reject imports with bogus pitchRob Clark2016-09-073-8/+7
| | | | Signed-off-by: Rob Clark <[email protected]>
* gbm: add missing R8 and GR88 formatsRob Clark2016-09-072-1/+13
| | | | | Reviewed-by: Eric Engestrom <[email protected]> Signed-off-by: Rob Clark <[email protected]>
* spirv/nir: Add support for OpAtomicLoad/StoreLionel Landwerlin2016-09-071-11/+113
| | | | | | | | | | | | Fixes new CTS tests : dEQP-VK.spirv_assembly.instruction.compute.opatomic.load dEQP-VK.spirv_assembly.instruction.compute.opatomic.store v2: don't handle images like ssbo/ubo (Jason) Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* radeonsi: skip redundant INDEX_TYPE writesMarek Olšák2016-09-073-20/+32
| | | | | | Ported from Vulkan. Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: add more unlikely() uses into si_draw_vboMarek Olšák2016-09-071-5/+5
| | | | Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: skip draws with instance_count == 0Marek Olšák2016-09-071-3/+13
| | | | | | loosely ported from Vulkan Reviewed-by: Nicolai Hähnle <[email protected]>
* gallium/radeon/winsyses: fix counting mapped memoryMarek Olšák2016-09-072-0/+16
| | | | | | Not all buffers are unmapped explicitly. Reviewed-by: Nicolai Hähnle <[email protected]>
* nir: fix definition of pack_uvec2_to_uintIlia Mirkin2016-09-061-1/+1
| | | | | | | | | Found by inspection. Untested beyond compilation. This also matches the logic used in nir_lower_alu_to_scalar. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Cc: [email protected]
* mesa/formatquery: limit ES target support, fix core context supportIlia Mirkin2016-09-061-7/+8
| | | | | | | | | | | | | | | | | First off, as late as ES 3.2, GetInternalformat only supports RENDERBUFFER and 2DMS(_ARRAY) targets. Secondly, the _mesa_has_ext helpers are very accurate... a little too accurate, some might say. If we only show an extension in compat profiles because core profiles have the functionality guaranteed, they will return false. Fix these to either check for a core profile explicitly, or to a different-but-identical extension available in core profile. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Matteo Bruni <[email protected]> Tested-by: Matteo Bruni <[email protected]> Cc: [email protected]
* mapi: add gl32.h to the list of GLES3 headers for installationIlia Mirkin2016-09-061-0/+1
| | | | | | | | This was missed when I added the updated (and new) Khronos headers. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Mark Janes <[email protected]> Tested-by: Mark Janes <[email protected]>
* main: GL_RGB10_A2UI does not come with GL 3.0/EXT_texture_integerIlia Mirkin2016-09-061-1/+7
| | | | | | | | | | | Add a separate extension check for that format. Prevents glTexImage from trying to find a matching format, which fails on drivers without support for this format. Fixes: sized-texture-format-channels (on a3xx) Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]> Cc: [email protected]
* nir/spirv: Use fill_common_atomic_sources for image atomicsJason Ekstrand2016-09-061-56/+43
| | | | | | | | | We had two almost identical copies of this code and they were both broken but in different ways. The previous two commits fixed both of them. This one just unifies them so that it's easier to handle in the future. Signed-off-by: Jason Ekstrand <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* nir/spirv: Use the correct sources for CompareExchange on imagesJason Ekstrand2016-09-061-2/+2
| | | | | | | | | The CompareExchange operation has two "Memory Semantics" parameters instead of one so the real arguments start at w[7] instead of w[6]. Signed-off-by: Jason Ekstrand <[email protected]> Cc: "12.0" <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* nir/spirv: Swap the argument order for AtomicCompareExchangeJason Ekstrand2016-09-061-2/+2
| | | | | | | | | | | SPIR-V has the two arguments in the opposite order from GLSL. NIR uses the GLSL order so we had them backwards. Fixes dEQP-VK.spirv_assembly.instruction.compute.opatomic.compex Signed-off-by: Jason Ekstrand <[email protected]> Cc: "12.0" <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* vbo: increase VBO_SAVE_BUFFER_SIZE from 8k to 256k dwordsTim Rowley2016-09-061-1/+1
| | | | | | | | | | | | Increases the performance of legacy geometry-heavy apps still using display lists. Performance increase for a targeted testcase is on the order of 8x, and applications like ParaView 4.x (5.x uses no longer used display lists) improve by about 10%-20%. Reviewed-by: Mathias Fröhlich <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* glsl: Add positional argument specifiers.Vinson Lee2016-09-061-5/+5
| | | | | | | | | | | Fix build with Python < 2.7. File "./glsl/ir_expression_operation.py", line 360, in get_enum_name return "ir_{}op_{}".format(("un", "bin", "tri", "quad")[self.num_operands-1], self.name) ValueError: zero length field name in format Fixes: e31c72a331b1 ("glsl: Convert tuple into a class") Signed-off-by: Vinson Lee <[email protected]>
* util: (trivial) add <stdint.h> include to slab.cRoland Scheidegger2016-09-061-0/+1
| | | | should fix "src/util/slab.c:57:13: error: ‘uint8_t’ undeclared"
* glsl: Add .gitignore for make check warnings testJason Ekstrand2016-09-061-0/+1
|
* anv/pipeline: Lower indirect outputs when EmitNoIndirectOutput is setJason Ekstrand2016-09-061-0/+2
| | | | | | Signed-off-by: Jason Ekstrand <[email protected]> Reported-by: Timothy Arceri <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* Android: glsl: add rules to generate ir_expression*.h header filesRob Herring2016-09-066-9/+45
| | | | | | | | | | | | | | Recent changes to generate ir_expression*.h header files broke Android builds. This adds the generation rules. This change is complicated due to creating a circular dependency between libmesa_glsl, libmesa_nir, and libmesa_compiler. Normally, we add static libraries so that include paths are added even if there's no linking dependency. That is the case here. Instead, we explicitly add the include path using $(MESA_GEN_GLSL_H) to libmesa_compiler. This in turn requires shuffling the order of make includes. It also uncovered missing dependency tracking of glsl_parser.h. Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* st/omx/dec: enable hevc omx decode supportLeo Liu2016-09-062-1/+25
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec/h265: get the reference list for uvdLeo Liu2016-09-061-0/+39
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec/h265: add short term reference picture setsLeo Liu2016-09-061-4/+110
| | | | | | | Specified by subclause 7.3.7 Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec/h265: add slice headerLeo Liu2016-09-062-2/+216
| | | | | | | Specified by subclause 7.3.6.1 Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec/h265: add picture parameter setsLeo Liu2016-09-061-0/+98
| | | | | | | Specified by subclause 7.3.2.3 Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec/h265: add sequence parameter setsLeo Liu2016-09-062-0/+297
| | | | | | | Specified by subclause 7.3.2.2 Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec: add initial omx hevc supportLeo Liu2016-09-063-0/+160
| | | | | | | Mainly based on the h264 implementation. Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* st/omx/dec: set dst rect to match src sizeLeo Liu2016-09-061-2/+11
| | | | | | | | | | | | | | | When creating interlaced video buffer, hegith set to "template.height = align(tmpl->height/ array_size, VL_MACROBLOCK_HEIGHT);", and we use "template.height *= array_size;" for the buffer height, so it actually aligned with 32. With progressive video buffer it still aligned with 16, thus causing different height between interlaced buffer and progressive buffer for 4K (height=2160), and 720p (height=720). When transcode the video, this will cause the 16 lines corruption at the bottom of the encode video. Signed-off-by: Leo Liu <[email protected]> Reviewed-by: Christian König <[email protected]>
* gallium: switch drivers to the slab allocator in src/utilMarek Olšák2016-09-0630-353/+82
|
* util: import the slab allocator from galliumMarek Olšák2016-09-063-0/+244
| | | | There are also some cosmetic changes.
* loader/dri3: Always use at least two back buffersMichel Dänzer2016-09-061-3/+1
| | | | | | | | | | | This can make a significant difference for performance with some extreme test cases such as vblank_mode=0 glxgears. Fixes: 1e3218bc5ba2 ("loader/dri3: Overhaul dri3_update_num_back") Cc: "12.0 11.2" <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97549 Reviewed-by: Jason Ekstrand <[email protected]> Tested-by: Dieter Nützel <[email protected]>
* glsl: Fix locations of variables in patch qualified interface blocks.Kenneth Graunke2016-09-051-2/+4
| | | | | | | | | | | | | | | | | | | | | | | As of commit d82f8d9772813949d0f5455cd0edad9003be0fb0, we actually parse and attempt to handle the 'patch' qualifier on interface blocks. This patch fixes explicit locations for variables in such blocks. Without it, many program interface query dEQP/CTS tests hit this assertion in ir_set_program_inouts.cpp if (is_patch_generic) { assert(idx >= VARYING_SLOT_PATCH0 && idx < VARYING_SLOT_TESS_MAX); bitfield = BITFIELD64_BIT(idx - VARYING_SLOT_PATCH0); } because the location was incorrectly based on VARYING_SLOT_VAR0. Note that most of the tests affected currently fail before they hit this, due to confusion about what the program interface query name of those resources should be. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ilia Mirkin <[email protected]>
* mesa: Fix types in _mesa_get_color_read_format().Kenneth Graunke2016-09-051-1/+1
| | | | | | | This is a mesa_format, not a GLenum. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ilia Mirkin <[email protected]>
* amd/addrlib: move addrlib from amdgpu winsys to common codeDave Airlie2016-09-0626-28/+65
| | | | | Acked-by: Marek Olšák <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* gallium/util: move endian detect into a separate fileDave Airlie2016-09-063-39/+73
| | | | | | | | This just ports the simpler endian detection bits, addrlib sharing wants this outside gallium. Acked-by: Marek Olšák <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* radeon: move radeon_family/chip_class defintions to commonDave Airlie2016-09-063-85/+115
| | | | | | | This just moves these to a common header file. Acked-by: Marek Olšák <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>