Samuel Pitoiset
863727c4a3
radv/gfx10: set RADV_FORCE_FAMILY
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
34b185cc43
radv/gfx10: fix a possible hang with exp pos0 with done=0 and exec=0
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
b3a53de5fa
radv/gfx10: set PA_SC_TILE_STEERING_OVERRIDE
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
96cd24588b
radv/gfx10: set cache control registers
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
9a01eded0c
radv/gfx10: set llvm_has_working_vgpr_indexing
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
6b9dbb28ef
radv/gfx10: update DB_DFSM_CONTROL register
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
2435b571de
radv/gfx10: update DB_Z_INFO register
...
GFX10 uses the same register as GFX8.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
cfaad5e3ca
radv/gfx10: implement radv_emit_global_shader_pointers()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
3f5ca22e9c
radv/gfx10: implement radv_emit_tess_factor_ring()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
17048c1765
radv/gfx10: implement radv_emit_fb_ds_state()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
2481ac81d3
radv/gfx10: implement radv_initialise_ds_surface()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
c2a5d98148
radv/gfx10: implement radv_emit_fb_color_state()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
e80f189de0
radv/gfx10: implement radv_initialise_color_surface()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
ee8d6a2a6c
radv/gfx10: implement radv_init_dcc_control_reg()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
ccce8f5915
radv/gfx10: implement radv_make_buffer_descriptor()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
549d0aeee4
radv/gfx10: implement si_set_mutable_tex_desc_fields()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
bf11f1c3a4
radv/gfx10: add gfx10_make_texture_descriptor
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
3dc5ec5d16
radv/gfx10: generate gfx10_format_table.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
9c1266048f
radv/gfx10: increase maximum number of layers to 8192
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
0213fe09b8
radv/gfx10: increase maximum number of levels to 14
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
1f82007a9e
radv/gfx10: set MAX_ALLOC_COUNT
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
c3459968cd
ac/nir: unpacked GS invocation ID on GFX10+
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Samuel Pitoiset
4d7c420a94
ac: add missing formats to ac_get_tbuffer_format() for GFX10
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 17:03:38 +02:00
Lionel Landwerlin
8f0f727fe4
vulkan/overlay: fix command buffer stats
...
Begin/Reset of command buffer both reset the content of the command
buffer. Don't forget to wipe them on Begin.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 4438188f49
("vulkan/overlay: record stats in command buffers and accumulate on exec/submit")
Acked-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-07-07 15:47:54 +03:00
Lionel Landwerlin
5493ec3c19
anv: manually add KHR_display to the list of platforms
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 38305e6c94
("anv: replace hard-coded platform list with vk.xml parse")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111078
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
2019-07-07 15:34:09 +03:00
Dave Airlie
002c8cae44
docs/features: add shader buffer and atomic support for llvmpipe
2019-07-07 16:24:21 +10:00
Dave Airlie
2f8cbdfc88
llvmpipe: enable ARB_shader_storage_buffer_object
...
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:24:17 +10:00
Dave Airlie
df46b3d196
llvmpipe: add support for shader buffer binding.
...
This add support for setting shader buffers and passing them
to draw or binding them to the fragment shader jit.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:24:12 +10:00
Dave Airlie
d8fb66a3e1
draw: add shader buffer interfaces.
...
This adds the interface to add mapped shader buffers,
and sets up the jit linkage for them.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:24:09 +10:00
Dave Airlie
b5ac381d8f
gallivm: add buffer operations to the tgsi->llvm conversion.
...
This adds load, store and atomic operations. These operations
have to respect the exec_mask, and can't operate in lanes where
the execute is off. This is needed to avoid side effects seen
outside the shaders.
There is also bounds checking on the ssbo accesses vs the size
ptr.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:24:05 +10:00
Dave Airlie
a845baff16
gallivm: move mask_vec function up higher so it can be reused.
...
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:24:01 +10:00
Dave Airlie
ab807859ea
tgsi: denote which load/store/atomic channels are unsigned
...
llvmpipe will need this info.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:54 +10:00
Dave Airlie
e21007f426
llvmpipe: add support for ssbo to the fragment shader jit.
...
This just adds the ssbo ptrs to the jit fragment shader api.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:51 +10:00
Dave Airlie
69ff738eb0
draw: add support for ssbo ptrs to jit tables.
...
This adds ssbo/num_ssbo ptrs to the vs/gs jit tables.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:46 +10:00
Dave Airlie
e84570ba70
gallivm: add some basic SSBO limits. (v2)
...
v2: update ssbo size
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:44 +10:00
Dave Airlie
7c3807c1b3
util: add util_copy_shader_buffer.
...
This just adds an inline to copy a pipe_shader_buffer.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:40 +10:00
Dave Airlie
5ff697aa65
gallivm: add ssbo pointers to the soa build api.
...
Need to pass ssbo + ssbo size pointers just like constants.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:36 +10:00
Dave Airlie
2a55acbc1d
gallivm: add compare exchange wrapper
...
This just pulls the wrapper from LLVM for older versions
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:32 +10:00
Dave Airlie
4f709c86a9
vertex shader: add exec masking (v2)
...
As suggested by Roland this is just a compare of fetch_max
vs the counter, much simpler than my original spaghetti code.
We require the vertex shader to have an exec mask to get proper
ssbo/image load/atore/atomics semantics
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2019-07-07 16:23:27 +10:00
Alexandros Frantzis
4271430dd7
virgl: Hide internal virgl_resource functions
...
Since the transition to virgl_resource_transfer_map(), several
previously public virgl_resource functions are not required to be public
anymore.
We also move the functions earlier in the file so they can be used
without functions declarations.
Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
2019-07-06 19:30:38 -07:00
Alexandros Frantzis
e5b54d0018
virgl: Use virgl_resource_transfer_map for textures
...
Replace custom texture map code (for maps which don't require resolve)
with virgl_resource_transfer_map.
Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
2019-07-06 19:30:37 -07:00
Alexandros Frantzis
f8975f8f2f
virgl: Use virgl_resource_transfer_map for buffers
...
Replace custom buffer map code with virgl_resource_transfer_map.
Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
2019-07-06 19:30:34 -07:00
Alexandros Frantzis
bb0a38d819
virgl: Introduce virgl_resource_transfer_map
...
Normal mapping of buffers and textures uses almost identical logic.
This commit extracts the this logic in the form of the
virgl_resource_transfer_map() helper function.
Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
2019-07-06 19:30:22 -07:00
Jason Ekstrand
4633298fd6
iris: Use a uint16_t for key sizes
...
sizeof(struct brw_vs_prog_key) == 324.
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2019-07-04 19:52:34 -05:00
Marek Olšák
aa5dab27f9
ac: destroy passes in ac_destroy_llvm_compiler
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-07-04 15:39:04 -04:00
Marek Olšák
ea64d66fde
ac: use an LLVM fence instead of s.waitcnt when possible
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-07-04 15:39:03 -04:00
Marek Olšák
14450c8c41
ac: remove unused AC_WAIT_EXP
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-07-04 15:39:01 -04:00
Marek Olšák
fe5dbe75b2
ac: only set ac_dlc in ac_llvm_build.c
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-07-04 15:39:00 -04:00
Marek Olšák
8a71f60194
ac: replace glc,slc with cache_policy for loads
...
cosmetic change
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-07-04 15:38:56 -04:00
Marek Olšák
a29e781961
ac: replace glc,slc with cache_policy for stores
...
cosmetic change
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-07-04 15:38:54 -04:00