Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | r600g: Don't create a texture for the memory_pool during screen init | Tom Stellard | 2012-07-09 | 2 | -8/+24 |
| | | | | | | | This fixes a segfault in r600_screen_create() introduced by eb065f5d9d1159af3a88a64a7606c9b6d67dc3 Reported by tilman on irc. | ||||
* | radeon/llvm: Rename namespace from AMDIL to AMDGPU | Tom Stellard | 2012-07-09 | 25 | -360/+361 |
| | |||||
* | r600g: Update number of gprs when adding a vertex instruction | Tom Stellard | 2012-07-09 | 1 | -0/+4 |
| | |||||
* | r600g/compute: Use evergreen_cb() for binding RATs | Tom Stellard | 2012-07-09 | 5 | -70/+48 |
| | |||||
* | r600g: Add support for RATs in evergreen_cb() | Tom Stellard | 2012-07-09 | 1 | -3/+11 |
| | |||||
* | r600g: Use a texture as the underlying resource for compute_memory_pool | Tom Stellard | 2012-07-09 | 2 | -18/+37 |
| | | | | This the first step towards being able to use evergreen_cb to bind RATs. | ||||
* | r600g: Add is_rat flag to r600_resource_texture | Tom Stellard | 2012-07-09 | 1 | -0/+1 |
| | |||||
* | r600g: Add r600_context_pipe_state_emit() | Tom Stellard | 2012-07-09 | 2 | -6/+71 |
| | | | | | | | | This function is used when dispatching compute shader in order to avoid mixing compute and 3D registers in the context's dirty list. This allows the compute code to resuse 3D functions like evergreen_cb, which return a struct r600_pipe_state and still have control over when and how the register writes are emitted. | ||||
* | r600g: Add pkt_flag parameter to r600_context_block_emit_dirty() | Tom Stellard | 2012-07-09 | 3 | -3/+15 |
| | | | | | | | This allows the shader type bit to be set in the pm4 header when emitting registers for compute shaders. Reviewed-by: Marek Olšák <[email protected]> | ||||
* | r600g/compute: Move LOOP_CONST initialization to start_compute_cs atom | Tom Stellard | 2012-07-09 | 1 | -14/+16 |
| | |||||
* | r600g: Add start_compute_cs atom to struct r600_context | Tom Stellard | 2012-07-09 | 4 | -94/+96 |
| | | | | | | | | | The start_compute_cs atom initializes some config and context registers to the values needed for running compute shaders. When a compute shader is dispatched, this atom is emitted after the start_cs_cmd atom, which initializes registers that are common to both 3D and compute. Reviewed-by: Marek Olšák <[email protected]> | ||||
* | r600g: Add pkt_flag member to struct r600_command_buffer | Tom Stellard | 2012-07-09 | 1 | -3/+16 |
| | | | | | | | | | | Some packets require the shader type bit (bit 1) to be set when used for compute shaders. The pkt_flag will be initialized to RADEON_CP_PACKET3_COMPUTE_MODE for any struct r600_command_buffer used for dispatching compute shaders and it will be or'd against the result of the PKT3 macro when adding a new packet to a struct r600_command buffer. Reviewed-by: Marek Olšák <[email protected]> | ||||
* | r600g: Only emit start_cs_cmd atom once for compute command streams | Tom Stellard | 2012-07-09 | 1 | -2/+0 |
| | |||||
* | r600g: fix stencil texturing with Z32_FLOAT_S8X24_UINT | Marek Olšák | 2012-07-09 | 1 | -0/+2 |
| | |||||
* | r600g: add assertions after translate_colorswap/colorformat/dbformat/texformat | Marek Olšák | 2012-07-09 | 2 | -3/+17 |
| | |||||
* | r600g: inline r600_hw_copy_region | Marek Olšák | 2012-07-09 | 1 | -21/+5 |
| | |||||
* | r600g: enable dual src blending on r7xx | Marek Olšák | 2012-07-09 | 1 | -1/+1 |
| | | | | No lockups here. | ||||
* | r600g: use depth format from pipe_surface, not pipe_resource | Marek Olšák | 2012-07-09 | 2 | -4/+4 |
| | |||||
* | r600g: use u_box_origin_2d helper function | Marek Olšák | 2012-07-09 | 1 | -10/+3 |
| | |||||
* | gallium/u_blitter: consolidate some state changes | Marek Olšák | 2012-07-09 | 1 | -32/+17 |
| | |||||
* | r600g: remove stray semicolon | Marek Olšák | 2012-07-07 | 1 | -1/+1 |
| | |||||
* | galahad: Check that texture format is supported. | José Fonseca | 2012-07-06 | 1 | -0/+7 |
| | |||||
* | galahad: More detailed resource checks. | José Fonseca | 2012-07-06 | 2 | -19/+64 |
| | |||||
* | galahad: Fix zealous warnings. | José Fonseca | 2012-07-06 | 1 | -6/+10 |
| | |||||
* | galahad: Enumerate all methods that are missing. | José Fonseca | 2012-07-06 | 2 | -24/+49 |
| | |||||
* | galahad: Implement render_condition. | José Fonseca | 2012-07-06 | 1 | -1/+13 |
| | |||||
* | galahad: Don't implement context methods that are not implemented by the ↵ | José Fonseca | 2012-07-06 | 1 | -104/+115 |
| | | | | underlying pipe driver. | ||||
* | galahad: Use debug_printf. | José Fonseca | 2012-07-06 | 1 | -3/+5 |
| | | | | stderr is not visible on windows. | ||||
* | galahad: Silence creation messages. | José Fonseca | 2012-07-06 | 2 | -4/+0 |
| | | | | Let galahad warnings be true warnings. | ||||
* | galahad: Use reference counting when destroying the wraped objects. | José Fonseca | 2012-07-06 | 1 | -3/+2 |
| | | | | As the wrapped pipe driver may hold internal references. | ||||
* | galahad: Point to the galahad objects from the galahad sampler view. | José Fonseca | 2012-07-06 | 1 | -2/+2 |
| | | | | And not the wraped driver's objects. | ||||
* | galahad: Don't defer index buffer when it's NULL. | José Fonseca | 2012-07-06 | 1 | -16/+16 |
| | |||||
* | target-helpers: Enable debug helpers only on debug builds. | José Fonseca | 2012-07-06 | 1 | -0/+7 |
| | | | | Some of these helpers use debug_get_option, which works also on releases. | ||||
* | svga: whitespace fixes | Brian Paul | 2012-07-05 | 1 | -114/+90 |
| | |||||
* | svga: implement TGSI_OPCODE_ROUND | Brian Paul | 2012-07-05 | 1 | -15/+51 |
| | | | | | | | ROUND and TRUNC are implemented with one function to reduce code duplication. Note: ROUND isn't actually used yet, but probably will be soon. Reviewed-by: José Fonseca <[email protected]> | ||||
* | svga: fix CMP translation for vertex shaders | Brian Paul | 2012-07-05 | 1 | -36/+37 |
| | | | | | | | | | | Converting CMP to SLT+LRP didn't work when src2 or src3 was Inf/NaN. That's the case for GLSL sqrt(0). sqrt(0) actually happens in many piglit auto-generated tests that use the distance() function. v2: remove debug/devel code, per Jose Reviewed-by: José Fonseca <[email protected]> | ||||
* | svga: properly implement TRUNC instruction | Brian Paul | 2012-07-05 | 1 | -1/+54 |
| | | | | | | | | | | Was previously implemented with FLOOR. Fixes quite a few piglit tests of float->int conversion, integer division, etc. v2: clean up left over debug/devel code, per Jose Reviewed-by: José Fonseca <[email protected]> | ||||
* | svga: fix register collision issue in emit_conditional() | Brian Paul | 2012-07-05 | 1 | -0/+24 |
| | | | | | | | If the 'dst' register is the same as the 'pass' register we'll generate invalid code. Use a temporary register in that case. Reviewed-by: José Fonseca <[email protected]> | ||||
* | svga: emit some debug messages when shader compilation fails | Brian Paul | 2012-07-05 | 1 | -4/+10 |
| | |||||
* | gallium/util: Save and restore vertex buffer state in util_gen_mipmap. | Stuart Abercrombie | 2012-07-04 | 1 | -0/+2 |
| | | | | | | | | | | | | | Calling glGenerateMipmap could overwrite vertex buffer state, leading to incorrect rendering or crashes depending on the Gallium driver. This was happening on WebGL Conformance test texture-size. Before 784dd51198433e5c299da4a7742c68d21d68d1c1 this was covered up by redundant vertex buffer validation. Reviewed-by: Stéphane Marchesin <[email protected]> Signed-off-by: Marek Olšák <[email protected]> | ||||
* | gallium/tgsi: Don't declare temps individually when they are all similar. | José Fonseca | 2012-07-02 | 1 | -8/+19 |
| | | | | | | | | | | | | tgsi_ureg was recently enhanced to support local temporaries, and as result temps are declared individually. This change avoids many TEMP register declarations on common shaders. (And fixes performance regression due to mismatches against performance sensitive shaders.) Reviewed-by: Brian Paul <[email protected]> | ||||
* | gallivm: Cleanup the 4 x float -> 16 ub special path in lp_build_conv. | José Fonseca | 2012-07-02 | 1 | -49/+26 |
| | | | | | | No behaviour change intended. Reviewed-by: Roland Scheidegger <[email protected]> | ||||
* | gallium/util: Add ULL suffix to large constants. | José Fonseca | 2012-07-02 | 1 | -3/+3 |
| | | | | | As suggested by Andy Furniss: it looks like some old gcc versions require it. | ||||
* | clover: Handle NULL devs argument in clBuildProgram | Tom Stellard | 2012-07-01 | 1 | -5/+10 |
| | | | | | If devs is NULL, then the kernel should be compiled for all devices associated with the program. | ||||
* | clover: Define non-templated copy constructor for clover::ref_ptr. | Francisco Jerez | 2012-07-01 | 1 | -2/+1 |
| | | | | | | | | | The templated copy constructor doesn't prevent the compiler from emitting a default copy constructor, which leads to inconsistent memory handling and was reported to cause segfaults when doing event manipulation. Reported-by: Tom Stellard <[email protected]> | ||||
* | llvmpipe: fix comment typo | Brian Paul | 2012-06-29 | 1 | -1/+1 |
| | |||||
* | clover: Add a function internalizer pass before LTO v2 | Tom Stellard | 2012-06-29 | 1 | -10/+49 |
| | | | | | | | | | The function internalizer pass marks non-kernel functions as internal, which enables optimizations like function inlining and global dead-code elimination. v2: - Pass vector arguments by const reference | ||||
* | radeon/llvm: Enable vec4 loads on R600 | Tom Stellard | 2012-06-29 | 3 | -0/+20 |
| | |||||
* | radeon/llvm: Enable floating point stores on R600 | Tom Stellard | 2012-06-29 | 1 | -0/+6 |
| | |||||
* | radeon/llvm: Handle floating point loads on R600 | Tom Stellard | 2012-06-29 | 2 | -0/+31 |
| |