aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* iris: actually upload clip planes.Kenneth Graunke2019-02-212-2/+15
|
* iris: bypass params and do it ourselvesKenneth Graunke2019-02-214-31/+78
| | | | | the backend keeps dead code eliminating them all, so we can't do that, plus we don't want to because params[] is lame
* iris: dodge backend UCP loweringKenneth Graunke2019-02-211-1/+7
|
* iris: fix system value remappingKenneth Graunke2019-02-211-2/+12
|
* iris: hook up key stuff for clip plane loweringKenneth Graunke2019-02-213-1/+15
|
* iris: lower user clip planesKenneth Graunke2019-02-211-0/+8
|
* iris: only bother with params if there are any...Kenneth Graunke2019-02-212-36/+30
|
* iris: fill out params array with built-ins, like clip planesKenneth Graunke2019-02-211-0/+71
|
* iris: add param domain definesKenneth Graunke2019-02-212-0/+37
|
* iris: drop unnecessary param[] setup from iris_setup_uniformsKenneth Graunke2019-02-211-10/+2
| | | | the backend just considers these dead anyway
* iris: Defer cbuf0 upload to draw timeKenneth Graunke2019-02-212-29/+66
|
* iris: Clone the NIRKenneth Graunke2019-02-211-6/+6
| | | | | | The backend compiler used to do this for us, but after a rebase, it's now the driver's responsibility. This lets us alter it for say, clip vertex lowering, at the global level rather than the per-variant level.
* iris: Print the batch name when decodingKenneth Graunke2019-02-213-3/+10
|
* iris: partial set_query_active_stateKenneth Graunke2019-02-213-3/+23
| | | | | | used to avoid OQ during clears for example fixes occlusion_query_meta_no_fragments
* iris: Fix multiple RTs with non-independent blendingKenneth Graunke2019-02-211-11/+13
| | | | rt[i] isn't filled out in this case, so we have to use rt[0]
* iris: Fix TextureBarrierKenneth Graunke2019-02-211-2/+14
| | | | | I don't know how I came up with the old one, this is now what i965 does Also we now do compute batches too
* iris: Fix MSAA smooth pointsKenneth Graunke2019-02-211-2/+2
| | | | Fixes bin/ext_framebuffer_multisample-point-smooth 2 -auto -fbo
* iris: implement scratch space!Kenneth Graunke2019-02-214-32/+111
| | | | | | | we borrow the approach from anv rather than i965, as it works better with pre-baked state that needs to contain scratch BO addresses fixes a bunch of varying packing tests
* iris: tidy more warningsKenneth Graunke2019-02-211-2/+0
|
* iris: Enable msaa_map transfer helpersKenneth Graunke2019-02-211-1/+1
| | | | | This does the downsampling for us. It'll use BLORP anyway because it uses blit(), and that uses BLORP.
* iris: Actually create/destroy HW contextsKenneth Graunke2019-02-211-0/+8
| | | | | | | | The intention is that render and compute use their own contexts, and each is PIPELINE_SELECT'd to the right pipeline. But we hadn't actually made them, so we got the fd-default context. Thanks to Chris Wilson for catching this!
* iris: Don't leak the compute batchKenneth Graunke2019-02-211-0/+1
|
* iris: cross batch flushingKenneth Graunke2019-02-211-0/+10
|
* iris: Cross-link iris_batches so they can potentially flush each otherKenneth Graunke2019-02-214-4/+26
| | | | | | This makes e.g. the render batch aware of the compute batch, so it can ask questions like "is this BO referenced by some other batch?" and do something about that.
* iris: fix crash in sparse vertex arrayDave Airlie2019-02-211-1/+2
| | | | this fixes crash in array-stride piglit.
* iris: Use at least 1x1 size for null FB surface state.Kenneth Graunke2019-02-211-1/+4
| | | | | | Otherwise we get 0 - 1 = 0xffffffff and fail to pack SURFACE_STATE. Fixes some object namespace pollution gltexsubimage2d tests
* iris: Drop B5G5R5X1 supportKenneth Graunke2019-02-211-1/+0
| | | | | This is oddly renderable but not supported for sampling, which is the opposite of other X formats. Just skip it and fall back to BGRA.
* iris: Enable A8/A16_UNORM in an inefficient mannerKenneth Graunke2019-02-211-6/+7
| | | | | These are currently just use the 'A' hardware formats, rather than the faster 'R' formats. glBitmap handling needs these, it seems. :(
* iris: Enable ARB_shader_stencil_exportKenneth Graunke2019-02-211-0/+1
|
* iris: Disable a PIPE_CONTROL workaround on IcelakeKenneth Graunke2019-02-211-1/+1
|
* iris: Flag constants dirty on program changesKenneth Graunke2019-02-211-7/+6
| | | | | | | | | | | 3DSTATE_CONSTANT_* looks at prog_data->ubo_ranges. We were getting saved by iris_set_constant_buffers() usually happening when changing programs (as they usually change uniforms too), but with the clear shader that doesn't use uniforms, we weren't getting one and were leaving push constants enabled, screwing things up. Also clean up a bit of a mess left by the hacks - we were missing bindings in the VS/FS/CS case, among other issues...
* iris: allow binding a null vertex bufferKenneth Graunke2019-02-211-3/+7
| | | | PBO upload apparently does this...
* iris: fix overhead regression from "don't stomp each other's dirty bits"Kenneth Graunke2019-02-211-1/+1
| | | | | The change from dirty = 0ull to dirty &= ~NOT_MY_BITS broke the "nothing to do? skip it!" optimization. thanks to Chris for noticing this!
* iris: delete dead codeKenneth Graunke2019-02-211-27/+0
|
* iris: Fix refcounting of grid surfaceKenneth Graunke2019-02-211-1/+1
|
* iris/compute: Zero out the last grid size on indirect dispatchesJason Ekstrand2019-02-211-0/+5
|
* iris/compute: Don't increment the grid size offsetJason Ekstrand2019-02-211-2/+0
| | | | | | It may be in the dynamic state buffer but the fact that we have a resource takes care of that. We don't need to add in the address of the dynamic state buffer again.
* iris: SO_DECL_LIST fixKenneth Graunke2019-02-211-0/+8
|
* iris: Fall back to 1x1x1 null surface if no framebuffer suppliedKenneth Graunke2019-02-211-0/+4
| | | | | | | If the state tracker never gave us the framebuffer dimensions via a set_framebuffer_state() call, just fall back to the unbound texture null surface, which is 1x1x1. Otherwise we'd use a NULL resource (no pun intended).
* iris: Fix off by one in scissoring, empty scissors, default scissorsKenneth Graunke2019-02-211-2/+24
|
* iris: Move snapshots_landed to the front.Kenneth Graunke2019-02-211-1/+1
| | | | | Transform feedback overflow queries need to write additional data, and it would be nice to have this field remain at a consistent offset.
* iris: Clamp UBO and SSBO access to the actual BO size, for safetyKenneth Graunke2019-02-211-2/+5
|
* iris: Fix texture buffer / image buffer sizes.Kenneth Graunke2019-02-213-26/+46
| | | | Also fix image buffers with offsets.
* iris: fix SF_CLIP_VIEWPORT array indexing with multiple VPsKenneth Graunke2019-02-211-1/+2
| | | | fixes bunches of viewport stuffs
* iris: flag CC_VIEWPORT when changing num viewportsKenneth Graunke2019-02-211-0/+1
| | | | this also has a loop over num_viewports
* iris: fix UBOs with bindings that have an offsetKenneth Graunke2019-02-211-0/+1
|
* iris: try and avoid pointless compute submissionsKenneth Graunke2019-02-211-1/+3
| | | | | if apps don't use compute shaders, we don't even want to kick off the compute initialization batch
* iris: fix SBA flushing by refactoring codeKenneth Graunke2019-02-211-50/+25
|
* iris: do PIPELINE_SELECT for render engine, add flushes, GLK hacksKenneth Graunke2019-02-211-6/+80
|
* iris: hack to avoid memorybarriers out the wazooKenneth Graunke2019-02-211-3/+7
| | | | | | | | we don't want to emit piles of pipe controls to a compute batch if it isn't necessary... prevents double-batch-wraps in cs-op-selection-bool-bvec4-bvec4 (but it's still kinda a big ol' hack...)