summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-01-07radeonsi: implement separate ICACHE and KCACHE flush for SIMarek Olšák1-9/+17
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: add a combined flag for flushing a framebufferMarek Olšák3-20/+10
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: rename flush flags, split the TC flag into L1 and L2Marek Olšák7-91/+109
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07r600g,radeonsi: separate cache flush flagsMarek Olšák5-26/+39
I will rename them for radeonsi. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07r600g: move r6xx-specific streamout flush flagging into r600gMarek Olšák2-9/+7
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: only set BC_OPTIMIZE_DISABLE when necessaryMarek Olšák2-6/+15
SPI_PS_IN_CONTROL is moved into the SPI mapping state. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: do not define FACE as an ordinary PS inputMarek Olšák1-1/+2
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: remove flatshade from the shader keyMarek Olšák3-7/+7
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: remove special handling of TGSI_INTERPOLATE_COLOR in shader codegenMarek Olšák1-6/+10
It doesn't do anything useful. And colors are floating-point, so we can use fs.interp, remove "flatshade" from the shader key, and rely on the FLAT_SHADE state only (in the next patch). Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: implement VERTEXID_NOBASE and BASEVERTEX system valuesMarek Olšák1-0/+10
Only done for completeness. Not used by anything yet. Tested by advertising PIPE_CAP_VERTEXID_NOBASE. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: fix VertexID for OpenGLMarek Olšák1-2/+5
This fixes all failing piglit VertexID tests. Cc: 10.4 <mesa-stable@lists.freedesktop.org> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: clarify a hw bug in shader exportsMarek Olšák1-5/+10
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: use ordered compares for SSG and face selectionMarek Olšák2-3/+3
Ordered compares are what you have in C. Unordered compares are the result of negating ordered compares (they return true if either argument is NaN). That special NaN behavior is completely useless here, and unordered compares produce horrible code with all stable LLVM versions. (I think that has been fixed in LLVM git) Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: remove unused and not useful variablesMarek Olšák3-6/+1
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: remove init config from statesMarek Olšák6-5/+4
It really doesn't do anything there. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07radeonsi: reduce the size of si_pm4_stateMarek Olšák2-12/+3
- the relocs array is unused, remove it - ndw is at most 115 (init), set 140 as the maximum - compute needs 4 buffers per state, graphics only needs 1; set 4 as the maximum Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2015-01-07tgsi: add uses_centroid into tgsi_shader_infoMarek Olšák2-0/+4
2015-01-07st/mesa: fix GL_PRIMITIVE_RESTART_FIXED_INDEXMarek Olšák1-1/+2
Cc: 10.2 10.3 10.4 <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-01-07vbo: ignore primitive restart if FixedIndex is enabled in DrawArraysMarek Olšák1-1/+2
From GL 4.4 Core profile: If both PRIMITIVE_RESTART and PRIMITIVE_RESTART_FIXED_INDEX are enabled, the index value determined by PRIMITIVE_RESTART_FIXED_INDEX is used. If PRIMITIVE_RESTART_FIXED_INDEX is enabled, primitive restart is not performed for array elements transferred by any drawing command not taking a type parameter, including all of the *Draw* commands other than *DrawEle- ments*. Cc: 10.2 10.3 10.4 <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-01-06vc4: Fix scaling W projection of the Z coordinate when there's a Z offset.Eric Anholt1-3/+3
Fixes piglit glsl-fs-fragcoord-zw-perspective, es3conform gl_FragCoord_z_frag, and the rest of the piglit glsl 1.10 interpolation tests.
2015-01-06vc4: Fix deletion from the program cache.Eric Anholt1-1/+1
They key is, oddly enough, in the key field, not in the data field (which is the vc4_compiled_shader *). Fixes regular failures in fp-long-alu.
2015-01-06vc4: Skip storing the Z/S contents when it's invalidated.Eric Anholt1-0/+11
Improves framerate of 5 seconds of es2gears by 1.57473% +/- 0.669409% (n=67). Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
2015-01-06gallium: Plumb the swap INVALIDATE_ANCILLARY flag through more layers.Eric Anholt2-0/+17
v2: Instead of telling the driver that the window system ancillaries have been invalidated (when the driver doesn't know which of its buffers are the window system's!), introduce a method for invalidating specific surfaces. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
2015-01-06egl: Inform the client API when ancillary buffers may become undefined.Eric Anholt7-15/+44
This is part of the EGL spec, and is useful for a tiled renderer to avoid the memory bandwidth cost of storing the depth/stencil buffers. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
2015-01-06ax_prog_flex.m4: Merge upstream OpenBSD fixes.Vinson Lee1-2/+2
Merge the following upstream autoconf-archive patches. ax_prog_flex: change grep syntax to accept e.g. "flex.real" in case a wrapper or symlink is used. AX_PROG_FLEX: avoid use of grep empty string escape extension (fix for OpenBSD) AX_PROG_FLEX: Also accept gflex. Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Jonathan Gray <jsg@openbsd.org>
2015-01-06radeon/llvm: Use amdgcn triple for SI+ on LLVM >= 3.6Tom Stellard4-16/+27
2015-01-06radeonsi: Cache LLVMTargetMachine object in si_screenTom Stellard6-26/+51
Rather than building a new one every compile. This should reduce some of the overhead of compiling shaders. One consequence of this change is that we lose the MachineInstrs dumps when dumping the shaders via R600_DEBUG. The LLVM IR and assembly is still dumped, and if you still want to see the MachineInstr dump, you can run the dumped LLVM IR through llc.
2015-01-05mesa: create, use new _mesa_texture_base_format() functionBrian Paul6-9/+23
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: remove unused ctx parameter for _mesa_select_tex_image()Brian Paul12-34/+30
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05swrast: use new _mesa_base_tex_image() helperBrian Paul6-42/+47
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05st/mesa: use new _mesa_base_tex_image() helperBrian Paul5-5/+14
This involved adding a new st_texture_image_const() helper also. Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: add _mesa_base_tex_image() helper functionBrian Paul1-0/+10
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: simplify a conditional in detach_shader()Brian Paul1-3/+1
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: minor whitespace fixes in shaderapi.cBrian Paul1-12/+13
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: make _mesa_reference_shader_program() an inline functionBrian Paul2-4/+15
which wraps _mesa_reference_shader_program_(), similar to what we do for other reference-counted objects. Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: update comment on delete_shader_program()Brian Paul1-2/+3
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: rearrange error handling in glProgramParameteri()Brian Paul1-15/+11
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05mesa: fix error strings in shaderapi.cBrian Paul1-2/+2
The _mesa_-prefixed function names should not appear in GL error messages. Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05glsl: use the is_gl_identifier() helper in a couple more placesBrian Paul2-2/+2
Reviewed-by: Eric Anholt <eric@anholt.net>
2015-01-05meta: init var to silence uninitialized variable warningBrian Paul1-1/+1
2015-01-05draw: silence uninitialized variable warningBrian Paul1-1/+1
v2: move initialization of llvm_gs to declaration. Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2015-01-05gallivm: silence a couple compiler warningsBrian Paul2-1/+4
Silence warnings about possibly uninitialized variables when making a release build. Reviewed-by: José Fonseca <jfonseca@vmware.com>
2015-01-05gallium/util: make sure cache line size is not zeroLeonid Shatz1-1/+5
The "normal" detection (querying clflush size) already made sure it is non-zero, however another method did not. This lead to crashes if this value happened to be zero (apparently can happen in virtualized environments at least). This fixes https://bugs.freedesktop.org/show_bug.cgi?id=87913 Cc: "10.4" <mesa-stable@lists.freedesktop.org>
2015-01-05gallium/util: fix crash with daz detection on x86Roland Scheidegger1-1/+1
The code used PIPE_ALIGN_VAR for the variable used by fxsave, however this does not work if the stack isn't aligned. Hence use PIPE_ALIGN_STACK function decoration to fix the segfault which can happen if stack alignment is only 4 bytes. This fixes https://bugs.freedesktop.org/show_bug.cgi?id=87658. Cc: "10.4" <mesa-stable@lists.freedesktop.org>
2015-01-05nvc0: add name to magic numberIlia Mirkin1-2/+2
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
2015-01-05nvc0: regenerate rnndb headersIlia Mirkin17-837/+1157
The headers hadn't been regenerated in a long time and had seen a number of manual modifications. A few changes: - remove nvc0_2d entirely, use the nv50 header which has the nvc0 values too - remove 3ddefs, it's identical to the nv50 file - move macros out into a separate file Also the upstream rnndb changed the overall chip naming convention; this was fixed up manually in the generated files until a better solution is determined. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
2015-01-05nv50: regenerate rnndb headersIlia Mirkin11-358/+451
The headers hadn't been regenerated in a long time, and there were a few minor divergences. Among other things, rnndb has changed naming to G80/etc, for now I've not tackled switching that over and manually replaced the nvidia codenames back to the chip ids. However no other modifications of the headergen'd headers was done. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
2015-01-05nv50: enable texture compressionTobias Klausmann2-3/+26
Compression seems to be supported for only some formats. Enable it for those. Previously this was disabled for everything despite the code looking like it was actually enabled. Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
2015-01-05nv50/ir: enable sat modifier for OP_SUBIlia Mirkin1-1/+1
SUB is handled the same as ADD, so no reason not to allow a saturate modifier on it. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
2015-01-05nv50/ir: Add sat modifier for mulRoy Spliet2-1/+7
Signed-off-by: Roy Spliet <rspliet@eclipso.eu> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>