summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* gallivm: Disable gallivm to fix build with LLVM 3.6Tom Stellard2014-09-241-0/+10
| | | | | | | | | | | | | | | | LLVM commit r218316 removes the JITMemoryManager class, which is the parent for a seemingly important class in gallivm. In order to fix the build, I've wrapped most of lp_bld_misc.cpp in if HAVE_LLVM < 0x0306 and modifyed the lp_build_create_jit_compiler_for_module() function to return false for 3.6 and newer which effectively disables the gallivm functionality. I realize this is overkill, but I could not come up with a simple solution to fix the build. Also, since 3.6 will be the first release without the old JIT, it would be really great if we could move gallivm to use the C API only for accessing MCJIT. There is still time before the 3.6 release to extend the C API in case it is missing some functionality that is required by gallivm.
* gallium/rbug: correctly unreference a sampler viewMarek Olšák2014-09-241-2/+1
| | | | | | | This fixes heap corruption. The sampler view can be bound in the context, so we cannot call destroy directly. Reviewed-by: Brian Paul <[email protected]>
* gallium/rbug: unlock a mutex in rbug_create_queryMarek Olšák2014-09-241-3/+5
| | | | Reviewed-by: Brian Paul <[email protected]>
* radeonsi: remove old cache flushing codeMarek Olšák2014-09-244-66/+1
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi/compute: do CS partial flush with si_emit_cache_flushMarek Olšák2014-09-243-6/+9
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* radeonsi/compute: flush caches with si_emit_cache_flushMarek Olšák2014-09-243-23/+32
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* radeonsi/compute: directly emit CONTEXT_CONTROLMarek Olšák2014-09-241-1/+5
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* radeonsi: properly destroy the GS copy shader and scratch_bo for computeMarek Olšák2014-09-242-3/+8
| | | | | Cc: 10.2 10.3 <[email protected]> Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: release GS rings at context destructionMarek Olšák2014-09-241-0/+2
| | | | | Cc: 10.2 10.3 <[email protected]> Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: don't use pipe_constant_buffer for GS ringsMarek Olšák2014-09-244-26/+22
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: don't pass the context to the shader translatorMarek Olšák2014-09-244-22/+18
| | | | | | This should prevent accessing context state there. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: don't snoop currently-bound GS shader when compiling ESMarek Olšák2014-09-243-16/+101
| | | | | | | | | Instead, pass the layout of GS inputs in memory to the ES using the shader key. Only 64 bits are needed to represent the layout in the key. Mixing and matching different VS and GS shaders should now always work. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: shorten si_pipe_* prefixes to si_*Marek Olšák2014-09-248-58/+57
| | | | | | | This was the original naming convention in r600g and it somehow crept into radeonsi. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: merge si_pipe_shader into si_shaderMarek Olšák2014-09-245-92/+90
| | | | | | One is part of the other anyway. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: disable gl_SampleMask fragment shader output if MSAA is disabledMarek Olšák2014-09-241-3/+18
| | | | | | This fixes piglit: arb_sample_shading-builtin-gl-sample-mask 0 Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: only update MSAA-specific framebuffer state if nr_samples is changedMarek Olšák2014-09-241-23/+27
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: move DB_SHADER_CONTROL into db_render_stateMarek Olšák2014-09-244-13/+18
| | | | | | | | | I will need this for fixing sample shading with 1 sample. The good news is that all shader pm4 states no longer use the current context state, so we can generate the pm4 states outside of draw_vbo if needed. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: set KILL_ENABLE during shader compilation, remove uses_kill flagMarek Olšák2014-09-243-5/+5
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: remove shader.ps_conservative_z, set db_shader_control insteadMarek Olšák2014-09-243-8/+4
| | | | | | Also set the field on SI too. It's not just specific to CIK. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: move DB registers from draw_vbo into new db_render_stateMarek Olšák2014-09-245-66/+82
| | | | | | It's called db_misc_state in r600g. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: remove unused variable si_pipe_shader::sprite_coord_enableMarek Olšák2014-09-242-2/+0
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: document what si_descriptors.c doesMarek Olšák2014-09-241-0/+11
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* r300g: implement MSAA copies by resolving and upsamplingMarek Olšák2014-09-241-2/+3
| | | | There's no other way. It will use hw resolve + blit.
* st/mesa: redefine mapping from VARYING_SLOT_TEXi/PNTC/VARi to TGSI GENERIC[i]Marek Olšák2014-09-243-22/+52
| | | | | | | | | | | Generic varyings in TGSI were based on the value of VARYING_SLOT_TEX0, so VAR0 was always GENERIC[22] (with tessellation patches). Some drivers might not be able to cope with that. This commit defines a proper mapping, so that PNTC is GENERIC[8] and VAR0 is GENERIC[9]. Reviewed-by: Brian Paul <[email protected]>
* st/mesa: don't set coord_enable for gl_PointCoord if using TGSI_SEMANTIC_PCOORDMarek Olšák2014-09-241-1/+2
| | | | | | This was missed when Christoph Bumiller added PIPE_CAP_TGSI_TEXCOORD. Reviewed-by: Brian Paul <[email protected]>
* st/mesa: use UniformBooleanTrue in glsl_to_tgsiMarek Olšák2014-09-241-4/+1
| | | | | | | Just for consistency. This doesn't fix anything as the original code was already pretty good. Reviewed-by: Brian Paul <[email protected]>
* st/mesa: drop dependence on API profile in st_init_extensionsMarek Olšák2014-09-244-14/+11
| | | | | | | The extensions and limits being set in the conditional block are core-only anyway and don't have any effect on other profiles. Reviewed-by: Brian Paul <[email protected]>
* mesa: allow forcing >=3.1 compatibility contexts with MESA_GL_VERSION_OVERRIDEMarek Olšák2014-09-241-6/+10
| | | | | | | | | | E.g. the 4.0 compatibility profile can be forced with: MESA_GL_VERSION_OVERRIDE=4.0COMPAT Some tests that I have require 4.0 compatibility. Reviewed-by: Brian Paul <[email protected]>
* mesa: don't set ES versions to GLSLVersion in _mesa_init_constantsMarek Olšák2014-09-242-11/+3
| | | | | | | No place in Mesa expects an ES version there. Drivers don't even set it like this. Reviewed-by: Brian Paul <[email protected]>
* targets/vl: don't forget to set GALLIUM_STATIC_TARGETSEmil Velikov2014-09-243-3/+3
| | | | | | | git rebase failure while dropping out a patch that reworks the way we build aux/vl. Signed-off-by: Emil Velikov <[email protected]>
* targets/egl: fold in target LDFLAGS variablesEmil Velikov2014-09-241-4/+2
| | | | | | | Both variables are identical thus we can fold them into AM_LDFLAGS. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* targets: drop the old MEGADRIVERS & STATIC_TARGET... variablesEmil Velikov2014-09-247-55/+26
| | | | | | | No longer used/needed as of last commit. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/softpipe,llvmpipe: add automake target 'templates'Emil Velikov2014-09-244-30/+26
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* configure: remove NEED_{SOFT,LLVM}PIPE_DRIVER variablesEmil Velikov2014-09-243-4/+4
| | | | | | | | | The respective HAVE_{SOFT,LLVM}PIPE are already descriptive enough. Additionally the svga modules does not really use either one, but the auxiliary draw & gallivm modules. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/vc4: add automake target 'templates'Emil Velikov2014-09-242-11/+14
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/r300,r600,radeonsi: add automake target 'templates'Emil Velikov2014-09-249-168/+72
| | | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Christian König <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/svga: add automake target 'template'Emil Velikov2014-09-245-25/+14
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/ilo: add automake target 'template'Emil Velikov2014-09-245-29/+15
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/i915: add automake target 'template'Emil Velikov2014-09-245-29/+15
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/freedreno: add automake target 'template'Emil Velikov2014-09-245-33/+15
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/nouveau: add automake target 'template'Emil Velikov2014-09-248-69/+66
| | | | | | | | Rather than duplicating the libdeps, extra define... all over the targets, define them only once and use when applicable. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* targets/pipe-loader: drop unused authenticationEmil Velikov2014-09-246-8/+6
| | | | | | | | | The dri, vdpau, omx, xvmc and gbm targets don't need any authentication even the VL ones never used it. Either the respective loader or the library itself (vl) is doing its auth prior to calling create_screen() Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* targets/vl: fix hard-links when building shared pipe-driversEmil Velikov2014-09-243-6/+6
| | | | | | | | | Make sure that MEGADRIVERS is set in order to create the hardlinks. The variable name is not the most appropriate and will be sorted out in upcoming commits. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/freedreno: remove unused draw headerEmil Velikov2014-09-241-1/+0
| | | | | Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* gallium/r300: remove obsolete declarationEmil Velikov2014-09-241-1/+0
| | | | | | | | | The definition of rc_pair_regalloc_inputs_only() is no longer around so drop the declaration. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Acked-by: Matt Turner <[email protected]>
* vc4: Drop maximum number of varyings down to 8.Eric Anholt2014-09-241-1/+4
| | | | | | | | | | | There are only 32 bits in the flatshade flags (which are 1 bit per component), the simulator crashes when you use more than about this many varyings, and the original Broadcom code drop only exposed 8 as well. Fixes 26 piglit tests in the varying-packing group, and makes many others go from crash to fail (due to not checking their varying counts and treating link failures as failures). Regresses ARB_fp/minmax (due to 8 varyings instead of 10).
* vc4: Add support for flat shading.Eric Anholt2014-09-235-2/+33
| | | | | | | This is just the GL 1.1 flat shading of colors -- we don't need to support TGSI constant interpolation bits, because we don't do GLSL 1.30. Fixes 7 piglit tests.
* vc4: Drop stale comment.Eric Anholt2014-09-231-1/+0
| | | | This should have been in 001247d230f022fffac68f4578348087a53d3940.
* util: fix SCons buildBrian Paul2014-09-231-0/+3
| | | | after register_allocate.c was moved to util/ directory.
* vc4: Put dead writes into the NOP register when generating code.Eric Anholt2014-09-231-1/+8
| | | | | | | | They still provide register pressure since I haven't made a special class for them, but since they're only live for one instruction it probably doesn't matter. This improves the readability of QPU assembly.