Dave Airlie
b880cd3b59
radv/gfx9: fix buffer size on gfx9.
...
The VI sizing only applies to VI.
This fixes:
dEQP-VK.image.image_size.buffer.*
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 03:05:44 +01:00
Bas Nieuwenhuizen
ff23e03d60
radv: Fix vkCopyImage with both depth and stencil aspects.
...
Fixes: f4e499ec79 "radv: add initial non-conformant radv vulkan driver"
Reviewed-by: Dave Airlie <airlied@redhat.com >
2017-09-06 01:54:37 +02:00
Dave Airlie
9e6b382142
mesa/mtypes: repack gl_sampler_object.
...
160->152.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:14:25 +10:00
Dave Airlie
ff6123925c
mesa/mtypes: repack gl_texture_object.
...
reduces size from 1144 to 1128.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:13:52 +10:00
Dave Airlie
ef660abdd5
mesa/mtypes: repack gl_shader_program_data.
...
This reduces the size from 144 bytes to 128 bytes.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:13:22 +10:00
Dave Airlie
449ac347dd
mesa/mtypes: reorganise gl_shader
...
This reduces this from 200->182 bytes.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:13:03 +10:00
Dave Airlie
a53c63e46b
mesa/mtypes: repack display list structs.
...
This reduces each of these by 8 bytes.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:12:53 +10:00
Dave Airlie
a265ffa69f
mesa/mtypes: reduce size of gl_sync_object.
...
Drops from 40->32 bytes.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:12:47 +10:00
Dave Airlie
e4bcbe03b5
mesa/mtypes: reorg vertex/fragment program state.
...
reduces both of these by 8 bytes.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:12:44 +10:00
Dave Airlie
cff02d214f
mesa/bindless: reorder gl_bindless_image gl_bindless_sampler.
...
This makes these use 16-bytes instead of 24-bytes.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-06 06:12:12 +10:00
Samuel Pitoiset
7f952eb931
radv: fix a memleak when compiling the GS copy shader
...
Found by inspection.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2017-09-05 21:36:44 +02:00
Charmaine Lee
c12ef63b69
svga: move index buffer bind flag assertion
...
The buffer bind flags can be promoted in svga_buffer_handle(), so
move the assertion after it. This has already been done for
vertex buffer in commit 6b4bf7e8be , but it misses the one for
index buffer.
Fixes assertion running WarThunder.
Reviewed-by: Neha Bhende <bhenden@vmware.com >
2017-09-05 10:31:18 -06:00
Charmaine Lee
98badd7f6e
svga: avoid emitting redundant SetShaderResources and SetVertexBuffers
...
Minor performance improvement in avoiding binding the same shader resource
or the same vertex buffer for the same slot.
Tested with MTT glretrace.
v2: Per Brian's suggestion, add a helper function to do vertex buffer
comparision.
v3: Change the helper function to vertex_buffers_equal().
Reviewed-by: Brian Paul <brianp@vmware.com >
2017-09-05 10:31:18 -06:00
Jason Ekstrand
e439908af9
spirv: Add support for the HelperInvocation builtin
...
I have no idea how this got missed but it's been missing since forever.
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com >
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
2017-09-05 16:39:24 +03:00
Thomas Hellstrom
86df05eb26
loader/dri3: Use client local back to front blit in copySubBuffer if available
...
The copySubBuffer functionality always attempted a server side blit from
back to fake front if a fake front was present, and we weren't displaying
on a remote GPU.
Now that we always have local blit capability on modern drivers, first
attempt a local blit, and only if that fails, try the server blit.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com >
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com >
Reviewed-by: Axel Davy <axel.davy@normalesup.org >
2017-09-05 12:22:17 +02:00
Marek Olšák
c3ebac6890
radeonsi/gfx9: implement primitive binning
...
This increases performance, but it was tuned for Raven, not Vega.
We don't know yet how Vega will perform, hopefully not worse.
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com >
2017-09-05 12:09:02 +02:00
Marek Olšák
51e10c2770
radeonsi: add more state flags into si_state_dsa
...
3 flags for primitive binning, 2 flags for out-of-order rasterization
(but that will be done some other time)
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com >
2017-09-05 12:09:02 +02:00
Marek Olšák
0797eea758
radeonsi/gfx9: don't use BREAK_BATCH and FLUSH_DFSM if DFSM is disabled
...
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com >
2017-09-05 12:09:02 +02:00
Tapani Pälli
0986f68632
vbo: fix build errors on android
...
incompatible pointer to integer conversion assigning to 'GLintptr' (aka 'int')
from 'const char *' [-Werror,-Wint-conversion]
offset = indices;
^ ~~~~~~~
Fixes: 2d93b462b4 ("vbo: fix offset in minmax cache key")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Charmaine Lee <charmainel@vmware.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
2017-09-05 07:55:34 +03:00
Marek Olšák
fb7ba68f6c
radeonsi: eliminate PS color outputs when colormask kills them
...
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com >
2017-09-04 15:10:39 +02:00
Marek Olšák
468c131033
gallium/radeon: sort DBG shader flags according to pipe_shader_type
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com >
2017-09-04 15:10:39 +02:00
Nicolai Hähnle
50283109aa
radeonsi: ensure cache flushes happen before SET_PREDICATION packets
...
The data is read when the render_cond_atom is emitted, so we must
delay emitting the atom until after the flush.
Fixes: 0fe0320dc0 ("radeonsi: use optimal packet order when doing a pipeline sync")
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2017-09-04 13:50:57 +02:00
Nicolai Hähnle
097cfe9fde
radeonsi: fix ARB_transform_feedback_overflow_query on <= VI
...
The result written by the shader workaround needs to be written back, or
the CP may read stale data.
Fixes: 78476cfe07 ("radeonsi: enable ARB_transform_feedback_overflow_query")
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2017-09-04 13:50:54 +02:00
Nicolai Hähnle
55df3d2286
radeonsi: fix compute shader state dumping
...
Fixes: 420c438589 ("radeonsi: log draw and compute state into log context")
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2017-09-04 13:50:47 +02:00
Nicolai Hähnle
30a2f0dfd4
radeonsi: add an assertion that only two-dimensional constant references are used
...
v2: remove some redundant checks
Acked-by: Roland Scheidegger <sroland@vmware.com > (v1)
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de > (v1)
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:44:09 +02:00
Nicolai Hähnle
3e4dff4f00
gallium/radeon: always use two-dimensional constant references
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:44:06 +02:00
Nicolai Hähnle
83923a1f17
gallium/tests: always use two-dimensional constant references
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:44:04 +02:00
Nicolai Hähnle
33661190d2
pp: always use two-dimensional constant references
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:44:01 +02:00
Nicolai Hähnle
41fba40776
gallium/hud: always use two-dimensional constant references
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:59 +02:00
Nicolai Hähnle
f143354d06
nine: always generate two-dimensional constant file accesses
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:56 +02:00
Nicolai Hähnle
d14f7f7210
st/glsl_to_tgsi: inline src_register into translate_src
...
src_register has no meaningful standalone use, it only makes sense when
called from translate_src.
v2: fix input array handling
Acked-by: Roland Scheidegger <sroland@vmware.com > (v1)
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:52 +02:00
Nicolai Hähnle
42b444ca18
st/glsl_to_tgsi: ir_load_ubo always has a second index
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:49 +02:00
Nicolai Hähnle
1424163798
st/drawpixels: always use two-dimensional constant references
...
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:46 +02:00
Nicolai Hähnle
a852ae3620
tgsi/build: always generate two-dimensional constant file accesses
...
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:44 +02:00
Nicolai Hähnle
41e342d548
tgsi/ureg: always emit constants (and their decls) as 2D
...
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:40 +02:00
Nicolai Hähnle
37dd8e8dee
gallium: all drivers should accept two-dimensional constant buffer indexing
...
Most older drivers seem to just ignore the Dimension setting, so virtually
no changes should be needed.
Acked-by: Roland Scheidegger <sroland@vmware.com >
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
2017-09-04 13:43:36 +02:00
Eric Engestrom
0c7272a66c
anv: fix off by one in array check
...
`anv_formats[ARRAY_SIZE(anv_formats)]` is already one too far.
Spotted by Coverity.
CovID: 1417259
Fixes: 242211933a "anv/formats: Nicely handle unknown VkFormat enums"
Cc: Jason Ekstrand <jason.ekstrand@intel.com >
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com >
2017-09-04 08:05:36 +01:00
Dave Airlie
979be4f9c8
ac: reorg ac_shader_binary struct to take less space.
...
This reduces the size from 96 to 80 bytes but putting all the
32-bit sizes at the start.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-04 08:40:37 +10:00
Dave Airlie
2b79bbde89
radv: drop emit2d_dst_type.
...
This is completely unused now.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuien.nl >
Signed-off-by: Dave Airlie <airlied@redhat.com >
2017-09-04 08:40:27 +10:00
Xavier Bouchoux
bf8637addf
radv/meta: missing initialisations in create_pass().
...
Otherwise radv_cmd_state_setup_attachments() will complain it has no clearvalues,
when called via radv_process_depth_image_inplace().
v2: use LOAD/STORE instead of DONT_CARE, to preserve stencil values.
Signed-off-by: Xavier Bouchoux <xavierb@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
2017-09-04 00:26:39 +02:00
Bas Nieuwenhuizen
45e68ed065
radv: Enable command buffer chaining by default.
...
For approx 5-10% performance improvement in dota2.
Reviewed-by: Dave Airlie <airlied@redhat.com >
2017-09-04 00:06:40 +02:00
Bas Nieuwenhuizen
1a72ca5667
radv: Put semaphore waits in preamble cs.
...
The separate flush cs gets in the way of batchchain.
Reviewed-by: Dave Airlie <airlied@redhat.com >
2017-09-04 00:06:40 +02:00
Bas Nieuwenhuizen
dec7b38fe6
radv: Actually set the cmd_buffer usage_flags.
...
Otherwise, the simultaneous uage bit doesn't get set from the begin
info, which we need for batchchaining.
Fixes: f4e499ec79 "radv: add initial non-conformant radv vulkan driver"
Reviewed-by: Dave Airlie <airlied@redhat.com >
2017-09-04 00:06:40 +02:00
Eric Engestrom
49b428470e
util: improve compiler guard
...
Glibc 2.26 has dropped xlocale.h, but the functions needed (strtod_l()
and strdof_l()) can be found in stdlib.h.
Improve the detection method to allow newer builds to still make use of
the locale-setting.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102454
Cc: Laurent Carlier <lordheavym@gmail.com >
Cc: Emil Velikov <emil.l.velikov@gmail.com >
Cc: Rob Herring <robh@kernel.org >
Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com >
Reviewed-by: Laurent Carlier <lordheavym@gmail.com >
Reviewed-by: Jose Fonseca <jfonseca@vmware.com >
2017-09-03 09:05:23 +01:00
Leo Liu
8514c5d078
radeon/uvd: add Define Restart Interval to MJPEG bitstream reconstruction
...
It adds the capacity to decode MJPEG stream with DRI marker
Signed-off-by: Leo Liu <leo.liu@amd.com >
2017-09-02 21:33:11 -04:00
Leo Liu
3b02a8e9dd
radeon/uvd: fix MJPEG quantization table index
...
Fixes: 130d1f456b ("radeon/uvd: reconstruct MJPEG bitstream")
Signed-off-by: Leo Liu <leo.liu@amd.com >
2017-09-02 21:33:11 -04:00
Roland Scheidegger
2b2c61f0df
st/mesa: fix view template initialization in try_pbo_readpixels
...
I think this is what the code was meant to do, albeit as far as I can tell
the redundant initialization some analyzers complain about should work as
well just fine (only the first layer will be used, if the view contains one
or more layers doesn't really matter).
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102467
Reviewed-by: Brian Paul <brianp@vmware.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Cc: mesa-stable@lists.freedesktop.org
2017-09-03 03:31:28 +02:00
Kenneth Graunke
23b7c7a630
genxml: Make Border Color Pointer an address on Gen4-5, not an offset.
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
2017-09-02 12:56:18 -07:00
Kenneth Graunke
b8cd8a7545
i965: Inline emit_reloc in __genx_combine_address
...
One less layer of baklava.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
2017-09-02 12:56:18 -07:00
Kenneth Graunke
52b65dfda8
i965: Fix crash in fallback GTT mapping.
...
We can't perf_debug without a context.
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com >
2017-09-02 12:56:18 -07:00