This reworks how the depth stencil attachment is used for
simplicity. This also introduces radv_render_pass_compile()
helper that will be used for further optimizations.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 16 +++---
src/amd/vulkan/radv_meta_clear.c
To share common code between CmdEndRenderPass() and
CmdNextSubpass().
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 70 +---
1 file changed, 38 insertions(+), 32 deletions(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pass.c| 12
src/amd/vulkan/radv_private.h | 3 +++
2 files changed, 15 insertions(+)
diff --git a/src/amd/vulkan/radv_pass.c b/src/amd/vulkan/radv_pass.c
index 1102ef689b2..ac9f9381216 100644
--- a/src/amd/vulkan
radv_render_pass_compile() is common to vkCreateRenderPass()
and vkCreateRenderPass2().
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pass.c | 66 ++
1 file changed, 38 insertions(+), 28 deletions(-)
diff --git a/src/amd/vulkan/radv_pass.c b/src/amd
Outgoing dependencies (ie. external) should happen after the subpass.
This doesn't change anything for subpass resolves as we already
make sure that attachments are shader readable.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 4 ++--
1 file changed, 2 insertions(
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pass.c | 3 +++
src/amd/vulkan/radv_pipeline.c | 10 +-
src/amd/vulkan/radv_private.h | 3 +++
3 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/src/amd/vulkan/radv_pass.c b/src/amd/vulkan/radv_pass.c
index
To share common code that handles subpass dependencies.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pass.c | 78 +++---
1 file changed, 38 insertions(+), 40 deletions(-)
diff --git a/src/amd/vulkan/radv_pass.c b/src/amd/vulkan/radv_pass.c
index
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 17 +
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c
index 440f09a363c..914ff0055d9 100644
--- a/src/amd/vulkan
We don't use that.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_meta_blit.c | 12 ++--
src/amd/vulkan/radv_meta_blit2d.c | 12 ++--
src/amd/vulkan/radv_meta_clear.c | 8
src/amd/vulkan/radv_meta_resolve_fs.c | 4 ++--
4 files change
Original patch by Fredrik Höglund.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 16 +++-
src/amd/vulkan/radv_pass.c | 6 --
2 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan
That shouldn't change anything as we check if the last
subpass id is the final subpass.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 16 +---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/v
The Vulkan spec says:
"If pResolveAttachments is not NULL, for each resolve attachment
that does not have the value VK_ATTACHMENT_UNUSED, the
corresponding color attachment must not have the value
VK_ATTACHMENT_UNUSED."
Signed-off-by: Samuel Pitoiset
---
src/
The different masks should be accumulated. For example if two
subpasses declare an outgoing dependency (ie. dst ==
VK_SUBPASS_EXTERNAL).
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pass.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/amd/vulkan
Instead of doing them in radv_cmd_buffer_set_subpass().
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 44 +--
src/amd/vulkan/radv_meta_clear.c | 5 +--
src/amd/vulkan/radv_meta_resolve.c| 2 +-
src/amd/vulkan/radv_meta_resolve_fs.c
On 1/31/19 11:16 AM, Bas Nieuwenhuizen wrote:
On Tue, Jan 29, 2019 at 10:16 PM Samuel Pitoiset
wrote:
That shouldn't change anything as we check if the last
subpass id is the final subpass.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 16 +---
1
This is needed in order to inline some push constants when possible.
This also adds a new helper for initializing the pass.
v2: - use MIN2/MAX2
- use UINT8_MAX
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_nir_to_llvm.c | 2 ++
src/amd/vulkan/radv_private.h | 2 ++
src/amd
Reviewed-by: Samuel Pitoiset
On 2/1/19 11:28 AM, Timothy Arceri wrote:
---
src/amd/common/ac_gpu_info.h | 6 ++
src/amd/vulkan/radv_device.c | 2 +-
src/amd/vulkan/radv_shader.c | 4 ++--
src/amd/vulkan/radv_shader.h | 6 --
src
Fixed.
On 2/1/19 2:57 PM, Mike Lothian wrote:
Hi
I think you've left a few references to the old ac_nir_get_max_workgroup_size
FAILED: src/amd/vulkan/9198681@@vulkan_radeon@sha/radv_nir_to_llvm.c.o
x86_64-pc-linux-gnu-gcc -m32
-Isrc/amd/vulkan/9198681@@vulkan_radeon@sha -Isrc/amd/vulkan
-I../m
On 2/5/19 10:58 AM, Bas Nieuwenhuizen wrote:
On Fri, Jan 25, 2019 at 5:27 PM Samuel Pitoiset
wrote:
This removes some scalar loads from shaders, but it increases
the number of SET_SH_REG packets. This is currently basic but
it could be improved if needed. Inlining dynamic offsets might
also
On 2/5/19 11:29 AM, Bas Nieuwenhuizen wrote:
On Tue, Feb 5, 2019 at 11:07 AM Samuel Pitoiset
wrote:
On 2/5/19 10:58 AM, Bas Nieuwenhuizen wrote:
On Fri, Jan 25, 2019 at 5:27 PM Samuel Pitoiset
wrote:
This removes some scalar loads from shaders, but it increases
the number of SET_SH_REG
RADV will rely on that range for inlining push constants.
Signed-off-by: Samuel Pitoiset
---
src/compiler/nir/nir_opt_shrink_load.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/src/compiler/nir/nir_opt_shrink_load.c
b/src/compiler/nir/nir_opt_shrink_load.c
index f97b7f9b67f
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_shader.h | 1 +
src/amd/vulkan/radv_shader_info.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/src/amd/vulkan/radv_shader.h b/src/amd/vulkan/radv_shader.h
index 92886188459..c194401c02d 100644
--- a/src/amd/vulkan/radv_shader.h
: Samuel Pitoiset
fix gather
---
src/amd/vulkan/radv_nir_to_llvm.c | 2 ++
src/amd/vulkan/radv_private.h | 2 ++
src/amd/vulkan/radv_shader.h | 4
src/amd/vulkan/radv_shader_info.c | 37 ++-
4 files changed, 44 insertions(+), 1 deletion(-)
diff --git a
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_nir_to_llvm.c | 4
1 file changed, 4 insertions(+)
diff --git a/src/amd/vulkan/radv_nir_to_llvm.c
b/src/amd/vulkan/radv_nir_to_llvm.c
index dbeae2aafde..29300aeab9f 100644
--- a/src/amd/vulkan/radv_nir_to_llvm.c
+++ b/src/amd/vulkan
: 1442 -> 1429 (-0.90 %)
Code Size: 8126688 -> 7940960 (-2.29 %) bytes
Max Waves: 80952 -> 81645 (0.86 %)
v2: - check has_only_32bit_push_constants
- handle base != 0
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 27 +--
src/amd/common/ac_shader_ab
nd of containing function. This
has been fixed in GCC 9. Code that relied on this extended lifetime
needs to be fixed, move the compound literals to whatever scope
they need to accessible in."
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109543
Cc:
Signed-off-by: Samuel Pitoiset
--
This fixes a critical issue.
Cc:
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109575
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 5 ++---
src/amd/vulkan/radv_device.c | 5 +
src/amd/vulkan/radv_private.h| 3 +++
3 files changed, 10 insertions
This fixes a critical issue.
v2: - use feature, not version
Cc:
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109575
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 5 ++---
src/amd/vulkan/radv_device.c | 5 +
src/amd/vulkan/radv_private.h| 3 +++
3
The formats will be used for reducing the number of loaded channels.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pipeline.c | 22 +++---
src/amd/vulkan/radv_private.h | 1 +
src/amd/vulkan/radv_shader.h | 1 +
3 files changed, 21 insertions(+), 3 deletions
And make ac_build_expand() a static function.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 9 +
src/amd/common/ac_llvm_build.h | 3 ---
src/amd/common/ac_nir_to_llvm.c | 2 +-
3 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/src/amd/common
4 -> 15984 (3.30 %)
This mostly helps Croteam games (Talos/Sam2017).
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_nir_to_llvm.c | 83 ++-
1 file changed, 81 insertions(+), 2 deletions(-)
diff --git a/src/amd/vulkan/radv_nir_to_llvm.c
b/src/amd/vulkan/r
What's the status of this?
On 12/7/18 6:21 PM, Rhys Perry wrote:
This series add support for:
- VK_KHR_shader_float16_int8
- VK_AMD_gpu_shader_half_float
- VK_AMD_gpu_shader_int16
- VK_KHR_8bit_storage
on VI+. Half floats are currently disabled on LLVM 7 because of a bug
causing large memory usa
RC enabling SLP vectorizer also uncovered a RA bug with a shader.
I think I'll look into the issues with patch 35 again.
On Tue, 12 Feb 2019 at 16:30, Samuel Pitoiset wrote:
What's the status of this?
On 12/7/18 6:21 PM, Rhys Perry wrote:
This series add support for:
- V
For some reasons, this breaks trees rendering in Project Cars.
Fixes: 85010585cde ("radv: only enable gl_SampleMask if MSAA is enabled too")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109401
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pipeline.c | 8 --
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_device.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 0fef92773e1..9778b13ce86 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan
Fixes: 50fd253bd6e ("radv/winsys: Add priority handling during submit.")
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c
b/src/amd/vulkan/win
ase and handle Marek feedbacks, at least? I will review the v2.
Thanks Rhys.
On Tue, 12 Feb 2019 at 17:08, Samuel Pitoiset wrote:
How about splitting this series in four different parts? One for every
extension? Is this doable without too much troubles?
On 2/12/19 6:02 PM, Rhys Perry wrote:
I
On 2/13/19 10:59 PM, Bas Nieuwenhuizen wrote:
On Tue, Feb 12, 2019 at 3:07 PM Samuel Pitoiset
wrote:
It's unnecessary to load more channels than the vertex attribute
format. The remaining channels are filled with 0 for y and z,
and 1 for w.
29077 shaders in 15096 tests
Totals:
SGPRS: 13
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 41 ++
1 file changed, 27 insertions(+), 14 deletions(-)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
index 3acf41728ac..867a13622f9 100644
--- a/src/amd/common
It uses the new LLVM intrinsics.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 38 ++
src/amd/common/ac_llvm_build.h | 14 +
2 files changed, 52 insertions(+)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common
The elements added into a vector should have the same type as the
first one, otherwise this hits an assertion in LLVM.
Fixes: 4b3549c0846 ("radv: reduce the number of loaded channels for vertex
input fetches")
reported-by: Philip Rebohle
Signed-off-by: Samuel Pitoiset
---
src/
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109597
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pipeline.c | 8
1 file changed, 8 insertions(+)
diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 9745a1f2aa7
Patch 1-2 are:
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:21 AM, Rhys Perry wrote:
So that the signature is correct and consistent, the inputs to a export
intrinsic should always be 32-bit floats.
This and the previous commit fixes a large amount crashes from
dEQP
On 2/16/19 1:21 AM, Rhys Perry wrote:
This series add support for:
- VK_KHR_shader_float16_int8
- VK_AMD_gpu_shader_half_float
- VK_AMD_gpu_shader_int16
- VK_KHR_8bit_storage
on VI+. Half floats are disabled on LLVM 7 because of a bug causing large
memory usage and long (or unbounded) compilatio
Does this fix anything know? There is a 16-bit version of tbuffer.store,
maybe we should use it?
On 2/16/19 1:21 AM, Rhys Perry wrote:
Signed-off-by: Rhys Perry
---
src/amd/common/ac_nir_to_llvm.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/am
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:21 AM, Rhys Perry wrote:
Signed-off-by: Rhys Perry
---
src/amd/common/ac_nir_to_llvm.c | 4
1 file changed, 4 insertions(+)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index b260142c177..f39232b91a1 100644
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:21 AM, Rhys Perry wrote:
Signed-off-by: Rhys Perry
---
src/amd/common/ac_nir_to_llvm.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 691d444db05..741059b5f1a 100644
We usually use 'name' instead of 'intr'.
With that renamed, patch is:
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:21 AM, Rhys Perry wrote:
v2: don't use ac_get_zerof() and ac_get_onef()
Signed-off-by: Rhys Perry
---
src/amd/common/ac_llvm_build.c | 13
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:22 AM, Rhys Perry wrote:
v2: don't use ac_get_zero(), ac_get_one() and ac_int_of_size()
Signed-off-by: Rhys Perry
---
src/amd/common/ac_llvm_build.c | 27 ---
1 file changed, 4 insertions(+), 23 deletions(-)
diff --
Patches 14-17 are:
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:22 AM, Rhys Perry wrote:
Signed-off-by: Rhys Perry
---
src/amd/common/ac_nir_to_llvm.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
Reviewed-by: Samuel Pitoiset
On 2/16/19 1:22 AM, Rhys Perry wrote:
Signed-off-by: Rhys Perry
---
src/amd/vulkan/radv_shader.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index 1dcb0606246..adba730ad8b 100644
--- a/src/amd
If no framebuffer is bound, get the number of samples and the
image format from the render pass.
This fixes new CTS dEQP-VK.geometry.layered.*.secondary_cmd_buffer.
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_meta_clear.c | 53 ++--
1 file
We shouldn't increment the buffer list pointers twice.
This fixes some crashes with new CTS
dEQP-VK.binding_model.descriptor_copy.*.
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_descriptor_set.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/amd/v
Sampler descriptors don't have a buffer list.
This fixes some crashes with new CTS
dEQP-VK.binding_model.descriptor_copy.*.sampler_*.
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_descriptor_set.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --
Reviewed-by: Samuel Pitoiset
On 2/18/19 2:23 PM, Rhys Perry wrote:
I don't see a 16-bit version of tbuffer.store in IntrinsicsAMDGPU.td
and simply changing "llvm.amdgcn.tbuffer.store.i32" to
"llvm.amdgcn.tbuffer.store.i16" and removing the zext doesn't seem to
wo
They are required for using typed buffer loads.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pipeline.c | 27 +++
src/amd/vulkan/radv_private.h | 4
src/amd/vulkan/radv_shader.h | 6 ++
3 files changed, 37 insertions(+)
diff --git a/src/amd
Be more generic, this will be used by an upcoming series.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 106
src/amd/common/ac_llvm_build.h | 30 -
src/amd/common/ac_nir_to_llvm.c | 4 +-
3 files changed, 83 insertions(+), 57
Waves: 86460 -> 86759 (0.35 %)
This gives a really tiny boost.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 21 +-
src/amd/vulkan/radv_nir_to_llvm.c | 47 +--
src/amd/vulkan/radv_pipeline.c| 37 ++--
src/amd/
-> 120509 (0.43 %)
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_device.c | 2 ++
src/amd/vulkan/radv_nir_to_llvm.c | 21 -
src/amd/vulkan/radv_private.h | 1 +
src/amd/vulkan/radv_shader.c | 1 +
src/amd/vulkan/radv_shader.h | 1 +
5
This export format is faster. Seems to improve performance in
Wreckfest.
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_pipeline.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 30c3f60790e
If alignement is 0, offets returned by
radv_cmd_buffer_upload_alloc() are always 0. These two
virtual addresses were pointing at the same location.
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff
If alignement is 0, offets returned by
radv_cmd_buffer_upload_alloc() are always 0. These two
virtual addresses were pointing at the same location.
v2: - add an asertion that checks if alignment is power of two
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c
Fixes: 58bcebd987b ("spirv: Allow [i/u]mulExtended to use new nir opcode")
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 36 +
1 file changed, 36 insertions(+)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir
ed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c
index ad0b934ddfc..3e652018499 100644
--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd/
On 3/5/19 2:34 PM, Bas Nieuwenhuizen wrote:
On Tue, Mar 5, 2019 at 10:42 AM Samuel Pitoiset
wrote:
This fixes some CTS crashes with:
dEQP-VK.renderpass2.suballocation.attachment_write_mask.attachment_count_8.start_index_*
Ideally, we should check cmd_buffer->cs->max_dw because th
On 3/5/19 2:01 PM, Bas Nieuwenhuizen wrote:
On Tue, Mar 5, 2019 at 10:30 AM Samuel Pitoiset
wrote:
Fixes: 58bcebd987b ("spirv: Allow [i/u]mulExtended to use new nir opcode")
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 36
v2: - remove dead variables
Fixes: 58bcebd987b ("spirv: Allow [i/u]mulExtended to use new nir opcode")
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 34 +
1 file changed, 34 insertions(+)
diff --git a/src/amd/common/ac_nir_to_ll
The mask should be accumulated if two calls are used for
binding two buffers at different indexes. Otherwise, the
driver only accounts for the last one.
Noticed while glancing at this code.
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 2 +-
1 file
ally disabled).
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_formats.c | 20
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/src/amd/vulkan/radv_formats.c b/src/amd/vulkan/radv_formats.c
index 0a3ff9ebbd9..9c61e769ebd 100644
--- a/src
The game apparently hangs inside a copy image operation, but
only when DCC is enabled. I haven't figured out the root cause
yet, but this workaround fixes the problem and allows people
to play that title, at least.
Cc: 18.3 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_dev
19.0
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_cmd_buffer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c
index 5b66930d137..24ed6d47a51 100644
--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd
Superseded by
https://patchwork.freedesktop.org/patch/290846/?series=57689&rev=1
On 3/6/19 7:39 PM, Samuel Pitoiset wrote:
The game apparently hangs inside a copy image operation, but
only when DCC is enabled. I haven't figured out the root cause
yet, but this workaround fixes the pr
This changes is actually wrong because we have to sync
before doing image layout transitions.
This fixes rendering issues in Batman, Path of Exile and
probably more titles.
This reverts commit 76c17cfd8da017ebd19be33ba6cef888957a6758.
Cc: 19.0
Signed-off-by: Samuel Pitoiset
---
src/amd
The values should match the ones that are emitted.
This fixes new CTS dEQP-VK.rasterization.primitive_size.points.*.
Fixes: f4e499ec791 ("radv: add initial non-conformant radv vulkan driver")
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_device.c | 2 +-
1 file changed, 1
should just check if buffers aren't VK_NULL_HANDLE?
Reviewed-by: Bas Nieuwenhuizen
On Tue, Mar 5, 2019 at 6:06 PM Samuel Pitoiset
wrote:
The mask should be accumulated if two calls are used for
binding two buffers at different indexes. Otherwise, the
driver only accounts for the las
Reviewed-by: Samuel Pitoiset
On 3/12/19 4:07 PM, Józef Kucia wrote:
---
src/amd/vulkan/radv_device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 83d218fb6bf0..6deb69d22d48 100644
--- a/src/amd/vulkan
Hi,
This small series makes use of new LLVM 8 buffer intrinsics.
No CTS regressions on GFX8 with LLVM 7, 8 and master.
Please review,
Thanks!
Samuel Pitoiset (11):
ac: fix glc parameter use for new LLVM 8 typed buffer intrinsics
ac: make use of ac_get_store_intr_attribs() where possible
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 65 +
1 file changed, 41 insertions(+), 24 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 55d3ce90ce4..922f1063c79 100644
--- a/src/amd/common
For consistency regarding other store operations.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 9 ++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index a7b3fdf64aa..ff29345ffe5
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
index 88ea289a121..253073e52fb 100644
--- a/src/amd/common/ac_llvm_build.c
+++ b/src/amd
ac_build_llvm8_tbuffer_load() expects a boolean for glc.
Fixes: 2cf5433b99f ("ac: use new LLVM 8 intrinsic when loading 16-bit values")
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 4 ++--
src/amd/common/ac_llvm_build.h | 2 +-
src/amd/common/ac_nir_to_
Similar to ac_build_buffer_load_format().
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 100
src/amd/common/ac_llvm_build.h | 11
src/amd/common/ac_nir_to_llvm.c | 29 +++--
3 files changed, 119 insertions(+), 21 deletions
Trivial.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 9 +++--
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index c10a0cce16f..55d3ce90ce4 100644
--- a/src/amd/common/ac_nir_to_llvm.c
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 23 +--
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index be0dca2d857..47a865de36f 100644
--- a/src/amd/common
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 35 ++---
1 file changed, 6 insertions(+), 29 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 922f1063c79..be0dca2d857 100644
--- a/src/amd/common
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 8
1 file changed, 8 insertions(+)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
index bb8a470ae1d..7aec8154a76 100644
--- a/src/amd/common/ac_llvm_build.c
+++ b/src/amd/common
New buffer intrinsics have a separate soffset parameter.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 66 ++
1 file changed, 26 insertions(+), 40 deletions(-)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 108
src/amd/common/ac_llvm_build.h | 26
src/amd/common/ac_nir_to_llvm.c | 26 ++--
3 files changed, 139 insertions(+), 21 deletions(-)
diff --git a/src/amd/common
On 3/12/19 7:11 PM, Emil Velikov wrote:
On Tue, 12 Mar 2019 at 15:12, Samuel Pitoiset wrote:
Reviewed-by: Samuel Pitoiset
A fixes tag like below would be great ;-)
Fixes: 14cad8786a8 ("radv: generate the same driver UUID as radeonsi")
Reviewed-by: Emil Velikov
Aside:
This fixes random SteamVR corruption, see
https://github.com/ValveSoftware/SteamVR-for-Linux/issues/181
Fixes: 4d30f2c6f42 ("radv/winsys: remove the max IBs per submit limit for the
fallback path")
Signed-off-by: Samuel Pitoiset
---
src/amd/vulkan/radv_device.c
On 3/12/19 5:19 PM, Samuel Pitoiset wrote:
Similar to ac_build_buffer_load_format().
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 100
src/amd/common/ac_llvm_build.h | 11
src/amd/common/ac_nir_to_llvm.c | 29 +++--
3
:19 am, Samuel Pitoiset wrote:
New buffer intrinsics have a separate soffset parameter.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 66 ++
1 file changed, 26 insertions(+), 40 deletions(-)
diff --git a/src/amd/common/ac_llvm_build.c
b/src
On 3/13/19 9:01 AM, Samuel Pitoiset wrote:
On 3/13/19 1:26 AM, Timothy Arceri wrote:
This one causes 2000+ piglit tests to fail on radeonsi. For example:
./bin/shader_runner
generated_tests/spec/arb_gpu_shader_fp64/execution/conversion/geom-conversion-explicit-bool-double.shader_test
-auto
The struct version enables IDXEN, while the raw one disables it.
When vindex is unused, the raw version is enough.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd
The struct version enables IDXEN, while the raw one disables it.
When vindex is unused, the raw version is enough.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd
Hi,
This small series makes use of new LLVM 8 buffer intrinsics.
No CTS regressions on GFX8 with LLVM 7, 8 and master.
V2: fix use of IDXEN for GFX9
Please review,
Thanks!
Samuel Pitoiset (12):
ac: do not force enable IDXEN for 16-bit SSBO loads
ac: fix glc parameter use for new LLVM 8
v2: - do not force enable IDXEN when unecessary
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
index 5d52d93d25a..8d5682f6f7a 100644
--- a/src/amd
Trivial.
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_nir_to_llvm.c | 9 +++--
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index c10a0cce16f..55d3ce90ce4 100644
--- a/src/amd/common/ac_nir_to_llvm.c
ac_build_llvm8_tbuffer_load() expects a boolean for glc.
Fixes: 2cf5433b99f ("ac: use new LLVM 8 intrinsic when loading 16-bit values")
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 4 ++--
src/amd/common/ac_llvm_build.h | 2 +-
src/amd/common/ac_nir_to_
Similar to ac_build_buffer_load_format().
v2: - fix out of bounds access
Signed-off-by: Samuel Pitoiset
---
src/amd/common/ac_llvm_build.c | 100
src/amd/common/ac_llvm_build.h | 11
src/amd/common/ac_nir_to_llvm.c | 29 +++--
3 files changed, 119
701 - 800 of 5029 matches
Mail list logo