f7f768d19506dc9e480531ce41d03dba9b4fc792 |
|
21-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Add support for vertex shaders Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
570a0e844b4be3bc5546b860e9968b55b2f3909d |
|
21-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Remove NIR support for uniforms Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
1acebeb1910b5fb29195acf132bbb88ebeebfb8b |
|
21-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Make the number of samples an explicit parameter Previously, we always inferred it from params->dst which meant that references to params->dst were scattered all throughout the state upload code. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
058304f0819c96fd18eb17911022a410540aa295 |
|
01-Nov-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Use wm_prog_data instead of hand-rolling our own Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98012 Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Cc: "13.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/intel/blorp/blorp.c
|
43dadb6edd5e3e3e10b1198184a9f75556edad49 |
|
21-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Rework our usage of ralloc when compiling shaders Previously, we were creating the shader with a NULL ralloc context and then trusting in blorp_compile_fs to clean it up. The only problem was that blorp_compile_fs didn't clean up its context properly so we were leaking. When I went to fix that, I realized that it couldn't because it has to return the shader binary which is allocated off of that context and used by the caller. The solution is to make blorp_compile_fs take a ralloc context, allocate the nir_shaders directly off that context, and clean it all up in whatever function creates the shader and calls blorp_compile_fs. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Cc: "12.0, 13.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/intel/blorp/blorp.c
|
ab92480272bc34d943d28506cc36759e141b4371 |
|
21-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Rename compile_nir_shader to compile_fs Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
91d61fbf7cb61a44adcaae51ee08ad0dd6b2a03b |
|
20-Oct-2016 |
Timothy Arceri <timothy.arceri@collabora.com> |
i965: rewrite brw_setup_vue_interpolation() Here brw_setup_vue_interpolation() is rewritten not to use the InterpQualifier array in gl_fragment_program which will allow us to remove it. This change also makes the code which is only used by gen4/5 more self contained as it now has its own gen5_fragment_program struct rather than storing the map in brw_context. This means the interpolation map will only get processed once and will get stored in the in memory cache rather than being processed everytime the fs changes. Also by calling this from the fs compile code rather than from the upload code and using the interpolation assigned there we can get rid of the BRW_NEW_INTERPOLATION_MAP flag. It might not seem ideal to add a gen5_fragment_program struct however by the end of this series we will have gotten rid of all the brw_{shader_stage}_program structs and replaced them with a generic brw_program struct so there will only be two program structs which is better than what we have now. V2: Don't remove BRW_NEW_INTERPOLATION_MAP from dirty_bit_map until the following patch to fix build error. V3 - Suggestions by Jason: - name struct gen4_fragment_program rather than gen5_fragment_program - don't use enum with memset() - create interp mode set helper and simplify logic to call it - add assert when calling function to show prog will never be NULL for gen4/5 i.e. no Vulkan Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/intel/blorp/blorp.c
|
e1af20f18a86f52a9640faf2d4ff8a71b0a4fa9b |
|
13-Oct-2016 |
Timothy Arceri <timothy.arceri@collabora.com> |
nir/i965/anv/radv/gallium: make shader info a pointer When restoring something from shader cache we won't have and don't want to create a nir_shader this change detaches the two. There are other advantages such as being able to reuse the shader info populated by GLSL IR. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/intel/blorp/blorp.c
|
d80c0307eaa91a609f71651fb52122849d35b5ac |
|
08-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Add a flag to make blorp not re-emit dept/stencil buffers In Vulkan, we want to be able to use blorp to perform clears inside of a render pass. If blorp stomps the depth/stencil buffers packets then we'll have to re-emit them. This gets tricky when secondary command buffers get involved. Instead, we'll simply guarantee that the depth and stencil buffers we pass to blorp (if any) match those already set in the hardware. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
81be7be11960e3edb6968fd5c8d9475f234aae48 |
|
08-Oct-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Add an "enabled" bit to surface_info This gives a slightly smarter way to check whether or not a particular surface exists than looking at the address. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
ed65e6ef49e17e9cae93a8f98e2968346de2bc6e |
|
14-Sep-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
nir: Add a flag to lower_io to force "sample" interpolation Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/intel/blorp/blorp.c
|
54db5afd2c8bd3a32658b3fef698c6896f6a297b |
|
03-Sep-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Work in terms of logical array layers When Ivy Bridge introduced array multisampling, someone made the decision to do lots of stuff throughout the driver in terms of physical array layers rather than logical array layers. In ISL, we use logical array layers most of the time and it really makes no sense to use physical array layers in the blorp API. Every time someone passes physical array layers into blorp for an array multisampled surface, they're always divisible by the number of samples and we divide right away. Eventually, I'd like to rework most of the GL driver internals to use logical array layers but that's going to be a big project and will probably happen as part of the ISL conversion. For now, we'll do the conversion in brw_blorp and let blorp just use the logical layers. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
7ddb21708c800dfbe3cea2df6aaaf7aed852761b |
|
28-Aug-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/isl: Add an isl_swizzle structure and use it for isl_view swizzles This should be more compact than the enum isl_channel_select[4] that we were using before. It's also very convenient because we already had such a structure in the Vulkan driver we just needed to pull it over. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|
2519237c2495adb9564062eed6b9cd225b886dc0 |
|
12-Sep-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
intel/blorp: Handle the 512 layers restriction on Sandy Bridge Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/intel/blorp/blorp.c
|
514afdce95e1c75a754412203425a8ac1282cd2d |
|
26-Aug-2016 |
Topi Pohjolainen <topi.pohjolainen@intel.com> |
intel/blorp: Allow multiple layers Signed-off-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/intel/blorp/blorp.c
|
348509269ead23cb7f953c174d400e6e3d17d723 |
|
19-Aug-2016 |
Jason Ekstrand <jason.ekstrand@intel.com> |
i965: Move blorp into src/intel/blorp At this point, blorp is completely driver agnostic and can be safely moved into its own folder. Soon, we hope to start using it for doing blits in the Vulkan driver. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/intel/blorp/blorp.c
|