Commit Graph

108186 Commits

Author SHA1 Message Date
Kenneth Graunke 860ce6af3f iris: drop XXX's about swizzling
pretty sure this is unnecessary on modern HW
2019-02-21 10:26:09 -08:00
Kenneth Graunke 12de56f53d iris: drop dead format //'s
these just aren't supported
2019-02-21 10:26:09 -08:00
Kenneth Graunke f6c68066a6 iris: yes 2019-02-21 10:26:09 -08:00
Kenneth Graunke 752abeb690 iris: initial compute caps
RET macro borrowed from freedreno
2019-02-21 10:26:09 -08:00
Kenneth Graunke 4da28c2c22 iris: Enable fb fetch
needed for ES 3.2
2019-02-21 10:26:09 -08:00
Kenneth Graunke be905bd461 iris: advertise GL_ARB_shader_texture_image_samples 2019-02-21 10:26:09 -08:00
Jordan Justen 6441e906e8 iris: Set num_uniforms in bytes
Ref: brw_nir_lower_uniforms, type_size_scalar_bytes

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2019-02-21 10:26:09 -08:00
Kenneth Graunke c29fd34259 iris: move images next to textures in binding table 2019-02-21 10:26:09 -08:00
Kenneth Graunke 0d9c5b4e7e iris: null for non-existent cbufs
prevents BTs from being shifted down incorrectly
2019-02-21 10:26:09 -08:00
Kenneth Graunke 98e8f80e7d iris: actually set image access 2019-02-21 10:26:09 -08:00
Jason Ekstrand d9aee25a46 iris: Don't lower image formats for write-only images 2019-02-21 10:26:09 -08:00
Kenneth Graunke a06f0fe517 iris: set image access correctly 2019-02-21 10:26:09 -08:00
Kenneth Graunke 5d1dadfc38 iris: bother with BTIs 2019-02-21 10:26:09 -08:00
Kenneth Graunke f5b887da6c iris: implement set_shader_images hook 2019-02-21 10:26:09 -08:00
Kenneth Graunke 26a54ae4b2 iris: lower storage image derefs 2019-02-21 10:26:09 -08:00
Kenneth Graunke e97a24da89 iris: set the binding table size
we weren't doing mark_surface_used on images (i965 does it while
uploading the unnecessary image uniforms), so our binding tables were
too small...
2019-02-21 10:26:09 -08:00
Kenneth Graunke 28b41992c8 iris: X32_S8X24 :/
This can happen when faking Z32_S8X24 and setting StencilSampling = true

I guess we'll just turn it into S8_UINT...

Fixes KHR-GL45.texture_swizzle.functional
2019-02-21 10:26:09 -08:00
Kenneth Graunke 6e7957a22d iris: enable I/L formats 2019-02-21 10:26:09 -08:00
Kenneth Graunke bfbebbaa36 iris: Use R/RG instead of I/L/A when sampling 2019-02-21 10:26:09 -08:00
Kenneth Graunke 94569a6458 iris: rework format translation apis 2019-02-21 10:26:09 -08:00
Kenneth Graunke b9eeed3e8f iris: Allow PIPE_CONTROL with Stall at Scoreboard and RT flush
It's nonsensical, but not illegal, and mandatory on Icelake
2019-02-21 10:26:09 -08:00
Kenneth Graunke 65d1cda995 iris: add gen11 to genX_call 2019-02-21 10:26:09 -08:00
Kenneth Graunke 0fdcb20803 iris: inline stage_from_pipe to avoid unused warnings 2019-02-21 10:26:09 -08:00
Kenneth Graunke 6fbb6ba290 iris: pipe to scs -> iris_pipe.h 2019-02-21 10:26:09 -08:00
Kenneth Graunke 87351b8dfe iris: force persample interp cap 2019-02-21 10:26:09 -08:00
Kenneth Graunke 90b9efc1f9 iris: stencil texturing 2019-02-21 10:26:09 -08:00
Kenneth Graunke 9b229d266d iris: fix Z32_S8 depth sampling
We were accidentally using the ISL_FORMAT_R32_FLOAT_X8X24_TYPELESS
format, which is NOT what we use.  We just store R32_FLOAT depth.

fixes Piglit's texwrap GL_ARB_depth_buffer_float
2019-02-21 10:26:09 -08:00
Kenneth Graunke 822f91508e iris: don't mark contains_draw = false when chaining batches
chaining to a new batch reuses create_batch(), but we don't need to do
the work of pinning BOs we inherit from a previous batch...when that is
actually part of the same execbuf invocation.

instead, just flag it when setting primary_batch_size = 0, in
iris_batch_reset
2019-02-21 10:26:09 -08:00
Kenneth Graunke 294ce58a30 iris: vma_free bo->size, not bo_size
this is more obviously correct.  I think the two end up being the same
in practice, since this is in the alloc_from_cache case, and presumably
bo from the bucket has bo->size == bucket->size, and bo_size also is
bucket->size...

still.  better to do the obvious thing.

brw_bufmgr already does it this way.
2019-02-21 10:26:09 -08:00
Kenneth Graunke 2f24000662 iris: drop a bunch of pipe_sampler_state stuff we don't need 2019-02-21 10:26:09 -08:00
Kenneth Graunke c6016d3761 iris: just mark snapshots_landed from the CPU
otherwise, get results may check q->map->snapshots_landed...before our
commands to initialize it to false have actually executed...so it'd get
some random garbage from the BO...
2019-02-21 10:26:09 -08:00
Kenneth Graunke 3c0ef22edb iris: Enable ARB_shader_vote
The easiest get out the vote campaign ever
2019-02-21 10:26:08 -08:00
Kenneth Graunke 0395eba20f iris: magic number 36 -> #define 2019-02-21 10:26:08 -08:00
Kenneth Graunke 57f8a623c5 iris: better query file comment 2019-02-21 10:26:08 -08:00
Kenneth Graunke d3a5d87219 iris: early return properly 2019-02-21 10:26:08 -08:00
Kenneth Graunke 07ff8c752f iris: 36-bit overflow fixes 2019-02-21 10:26:08 -08:00
Kenneth Graunke dff174c103 iris: Need to | 1 when asking for timestamps 2019-02-21 10:26:08 -08:00
Kenneth Graunke 1d91eba7dc iris: glGet timestamps, more correct timestamps 2019-02-21 10:26:08 -08:00
Kenneth Graunke 36fbcfb06c iris: ...and SO prims emitted queries
looks like we have queries

some fails still due to races between snapshots_written and start/end
not being garbage...not sure what that's about
2019-02-21 10:26:08 -08:00
Kenneth Graunke ec82be57e8 iris: timestamps 2019-02-21 10:26:08 -08:00
Kenneth Graunke 23572cdd07 iris: drop explicit pinning
writes will already rw_bo or ro_bo that
2019-02-21 10:26:08 -08:00
Kenneth Graunke d8875fe406 iris: primitives generated query support 2019-02-21 10:26:08 -08:00
Kenneth Graunke ffae6e3105 iris: pipeline stats 2019-02-21 10:26:08 -08:00
Kenneth Graunke 7840d0e091 iris: play chicken with timer queries for now
they have been crashy in the past and I don't want to risk tanking my
laptop right before my XDC talk
2019-02-21 10:26:08 -08:00
Kenneth Graunke 0b095c665d iris: gpr0 to bool
I think OQ is basically working now.
2019-02-21 10:26:08 -08:00
Kenneth Graunke f5a8908bd1 iris: fix random failures via CS stall...but why? 2019-02-21 10:26:08 -08:00
Kenneth Graunke ad14795805 iris: flush batch when asking for result via QBO 2019-02-21 10:26:08 -08:00
Kenneth Graunke cf261caad9 iris: results write 2019-02-21 10:26:08 -08:00
Kenneth Graunke d4e4517569 iris: gen10+ workarounds and break fix 2019-02-21 10:26:08 -08:00
Kenneth Graunke dca5632de1 iris: initial query code 2019-02-21 10:26:08 -08:00