[Mesa-dev] [PATCH v5 0/6] nv50/ir: Improve Performance of Integer Multiplication

2018-08-18 Thread Rhys Perry
Changes in v5: - split the 4th patch into 3 patches - the 4th/last three patches handles 64-bit multiplications - rely on LateAlgebraicOpt to create a shladd for the near-power-of-two optimization - set immediate to true in emitXMAD Changes in v4: - remove uint16_t(...) in nv50_ir.h - change XMAD

[Mesa-dev] [PATCH v5 6/6] nv50/ir: optimize multiplication by 16-bit immediates into two xmads

2018-08-18 Thread Rhys Perry
Rather than the usual three that would be created. total instructions in shared programs : 5796385 -> 5786560 (-0.17%) total gprs used in shared programs: 670103 -> 669968 (-0.02%) total shared used in shared programs : 548832 -> 548832 (0.00%) total local used in shared programs : 21164 ->

[Mesa-dev] [PATCH v5 1/6] nv50/ir: add preliminary support for OP_XMAD

2018-08-18 Thread Rhys Perry
v4: remove uint16_t(...) v4: don't allow immediates outside [0,65535] in insnCanLoad() Signed-off-by: Rhys Perry Reviewed-by: Karol Herbst --- src/gallium/drivers/nouveau/codegen/nv50_ir.h | 26 ++ .../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 18 +--

[Mesa-dev] [PATCH v5 2/6] gm107/ir: add support for OP_XMAD on GM107+

2018-08-18 Thread Rhys Perry
v4: make the immediate field 16 bits v5: don't ever emit h1 flags for immediates Signed-off-by: Rhys Perry Reviewed-by: Karol Herbst --- .../drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp | 65 ++ .../nouveau/codegen/nv50_ir_target_gm107.cpp | 6 +- .../nouveau/codege

[Mesa-dev] [PATCH v5 5/6] nv50/ir: optimize near power-of-twos into shladd

2018-08-18 Thread Rhys Perry
total instructions in shared programs : 5819319 -> 5796385 (-0.39%) total gprs used in shared programs: 670571 -> 670103 (-0.07%) total shared used in shared programs : 548832 -> 548832 (0.00%) total local used in shared programs : 21164 -> 21164 (0.00%) local shared

[Mesa-dev] [PATCH v5 4/6] nv50/ir: move a * b -> a << log2(b) code into createMul()

2018-08-18 Thread Rhys Perry
With this commit, OP_MAD is handled on nv50 too. This commit is also useful for later commits. Also, instead of creating a shladd, it relies on LateAlgebraicOpt to create one. This simplifies the code and helps shader-db slightly overall. total instructions in shared programs : 5820882 -> 5819319

[Mesa-dev] [PATCH v5 3/6] nv50/ir: optimize imul/imad to xmads

2018-08-18 Thread Rhys Perry
This hits the shader-db numbers a good bit, though a few xmads is way faster than an imul or imad and the cost is mitigated by the next commit, which optimizes many multiplications by immediates into shorter and less register heavy instructions than the xmads. total instructions in shared programs

Re: [Mesa-dev] [PATCH v3 0/6] support config for third-party DRI driver load

2018-08-18 Thread Yu, Qiang
>>> - added HAVE_LIBDRM guard for __driConfigOptionsLoader and >>> loader_get_dri_config_driver >> My thoughts are: >> 1. __driConfigOptionsLoader and loader_get_dri_config_driver don't >> have code depend on HAVE_LIBDRM (loader_get_kernel_driver_name >> does but already has HAVE_LIBDRM), so it's

[Mesa-dev] [Bug 106644] [llvmpipe] Mesa 18.1.2 fails lp_test_format, lp_test_arit, lp_test_blend, lp_test_printf, lp_test_conv tests

2018-08-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=106644 --- Comment #43 from erhar...@mailbox.org --- Created attachment 141179 --> https://bugs.freedesktop.org/attachment.cgi?id=141179&action=edit test-suite.log (ppc64, Mesa 18.2.0_rc2) standard build Out of curiosity I gave Mesa 18.2.0_rc2 a try.

[Mesa-dev] [PATCH mesa] egl: add helper to combine two u32 into one u64

2018-08-18 Thread Eric Engestrom
The original issue spotted was an upcast done after a bitwise ops, but since the same logic is done in multiple place, Emil suggested adding a helper to avoid mistakes. Signed-off-by: Eric Engestrom --- src/egl/drivers/dri2/egl_dri2.c | 4 ++-- src/egl/drivers/dri2/egl_dri2.h | 6

Re: [Mesa-dev] [PATCH 2/2] glsl: remove execute bit and shebang from python tests

2018-08-18 Thread Emil Velikov
On 18 August 2018 at 13:02, Eric Engestrom wrote: > On Saturday, 2018-08-18 12:25:42 +0100, Eric Engestrom wrote: >> On Friday, 2018-08-17 10:55:28 -0700, Dylan Baker wrote: >> > I don't care one way or the other on this, but it needs to wait for the >> > series I >> > have to make two of the tes

Re: [Mesa-dev] [PATCH 1/2] configure: use AM_PATH_PYTHON to look for the python version

2018-08-18 Thread Eric Engestrom
On Saturday, 2018-08-18 12:21:04 +0100, Emil Velikov wrote: > On 17 August 2018 at 18:36, Dylan Baker wrote: > > Quoting Emil Velikov (2018-08-17 03:12:56) > >> On 16 August 2018 at 21:28, Dylan Baker wrote: > >> > Quoting Eric Engestrom (2018-08-16 09:52:05) > >> >> On Thursday, 2018-08-16 17:18

Re: [Mesa-dev] [PATCH 2/2] glsl: remove execute bit and shebang from python tests

2018-08-18 Thread Eric Engestrom
On Saturday, 2018-08-18 12:25:42 +0100, Eric Engestrom wrote: > On Friday, 2018-08-17 10:55:28 -0700, Dylan Baker wrote: > > I don't care one way or the other on this, but it needs to wait for the > > series I > > have to make two of the test cases py 3 ready, and for a patch from Mathieu > > to

[Mesa-dev] [Bug 107610] Dolphin emulator mis-renders shadow overlay in Super Mario Sunshine

2018-08-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=107610 Bug ID: 107610 Summary: Dolphin emulator mis-renders shadow overlay in Super Mario Sunshine Product: Mesa Version: git Hardware: x86-64 (AMD64) OS: Linux (

Re: [Mesa-dev] [PATCH 2/2] glsl: remove execute bit and shebang from python tests

2018-08-18 Thread Eric Engestrom
On Friday, 2018-08-17 10:55:28 -0700, Dylan Baker wrote: > I don't care one way or the other on this, but it needs to wait for the > series I > have to make two of the test cases py 3 ready, and for a patch from Mathieu to > make another py 3 ready. > > Just for reference, it is convention (thoug

Re: [Mesa-dev] [PATCH] docs: update required mako version

2018-08-18 Thread Eric Engestrom
On Thursday, 2018-08-16 17:58:53 +0100, Emil Velikov wrote: > From: Emil Velikov > > The requirement was bumped a while back, but we forgot to update the > docs. > > Fixes: ed871af91c2 ("configure.ac: raise Mako required version to > 0.8.0") > Cc: Eric Engestrom Reviewed-by: Eric Engestrom >

Re: [Mesa-dev] [PATCHv2 1/2] meson: Use python to run glsl tests

2018-08-18 Thread Eric Engestrom
On Friday, 2018-08-17 12:11:32 +0100, Emil Velikov wrote: > From: Dylan Baker > > There are multiple reasons why the python scripts are executed > explicitly via $PYTHON or equivalent. In random order: > > - env is rarely a thing on Windows > - env can be outside of /usr/bin/ > - the python e

Re: [Mesa-dev] [PATCH 1/2] configure: use AM_PATH_PYTHON to look for the python version

2018-08-18 Thread Emil Velikov
On 17 August 2018 at 18:36, Dylan Baker wrote: > Quoting Emil Velikov (2018-08-17 03:12:56) >> On 16 August 2018 at 21:28, Dylan Baker wrote: >> > Quoting Eric Engestrom (2018-08-16 09:52:05) >> >> On Thursday, 2018-08-16 17:18:56 +0100, Emil Velikov wrote: >> >> > From: Emil Velikov >> >> > >>

[Mesa-dev] [PATCH 11/12] intel/decoder: mark total_length as MAYBE_UNUSED in gen_spec_load

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/intel/common/gen_decoder.c: In function 'gen_spec_load': ../../../src/intel/common/gen_decoder.c:535:47: warning: variable 'total_length' set but not used [-Wunused-but-set-variable] uint32_t tex

[Mesa-dev] [PATCH 09/12] intel: aubinator: mark *res as MAYBE_UNUSED in get_ppgtt_batch_bo

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/intel/tools/aubinator.c: In function 'get_ppgtt_batch_bo': ../../../src/intel/tools/aubinator.c:383:13: warning: unused variable 'res' [-Wunused-variable] void *res = mmap((uint8_t *)bo.map +

[Mesa-dev] [PATCH 10/12] intel/tools: initialise bo_addr to 0 in main

2018-08-18 Thread Kai Wasserbäch
Supresses a maybe-uninitialized warning with GCC 8. Signed-off-by: Kai Wasserbäch --- src/intel/tools/error2aub.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/intel/tools/error2aub.c b/src/intel/tools/error2aub.c index 2030593691..8a23d5ef1e 100644 --- a/src/intel/tool

[Mesa-dev] [PATCH 08/12] intel: aubinator: mark *res as MAYBE_UNUSED in get_ggtt_batch_bo

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/intel/tools/aubinator.c: In function 'get_ggtt_batch_bo': ../../../src/intel/tools/aubinator.c:322:13: warning: unused variable 'res' [-Wunused-variable] void *res = mmap((uint8_t *)bo.map + m

[Mesa-dev] [PATCH 02/12] amd/addrlib: mark microBlockDim as MAYBE_UNUSED in Addr::V2::Gfx9Lib::HwlComputeBlock256Equation

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-but-set-variable warning with GCC 8: ../../../src/amd/addrlib/gfx9/gfx9addrlib.cpp: In member function 'virtual ADDR_E_RETURNCODE Addr::V2::Gfx9Lib::HwlComputeBlock256Equation(AddrResourceType, AddrSwizzleMode, unsigned int, ADDR_EQUATION*)

[Mesa-dev] [PATCH 12/12] intel/decoder: mark result as MAYBE_UNUSED in gen_field_iterator_next

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/intel/common/gen_decoder.c: In function 'gen_field_iterator_next': ../../../src/intel/common/gen_decoder.c:1008:12: warning: unused variable 'result' [-Wunused-variable] bool result = iter_dec

[Mesa-dev] [PATCH 04/12] amd/addrlib: mark numPipes as MAYBE_UNUSED in Addr::V1::EgBasedLib::SanityCheckMacroTiled

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/amd/addrlib/r800/egbaddrlib.cpp: In member function 'int Addr::V1::EgBasedLib::SanityCheckMacroTiled(ADDR_TILEINFO*) const': ../../../src/amd/addrlib/r800/egbaddrlib.cpp:982:13: warning: unused variab

[Mesa-dev] [PATCH 00/12] Compiler warning fixes, round 2

2018-08-18 Thread Kai Wasserbäch
Hey, thanks to Bas and Timothy for reviewing and pushing most of my previous warning fixes series ()! I just continued down the build log and fixed the next eleven warnings. These changes are, again, compile-tested in a clean chroot (pbuilder) on am

[Mesa-dev] [PATCH 06/12] intel/aubinator_error_decode: mark ret as MAYBE_UNUSED in main

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-but-set-variable warning with GCC 8: ../../../src/intel/tools/aubinator_error_decode.c: In function 'main': ../../../src/intel/tools/aubinator_error_decode.c:759:11: warning: variable 'ret' set but not used [-Wunused-but-set-variable]

[Mesa-dev] [PATCH 03/12] amd/addrlib: mark *pEqToCheck as MAYBE_UNUSED in Addr::V2::Gfx9Lib::ComputeStereoInfo

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/amd/addrlib/gfx9/gfx9addrlib.cpp: In member function 'ADDR_E_RETURNCODE Addr::V2::Gfx9Lib::ComputeStereoInfo(const ADDR2_COMPUTE_SURFACE_INFO_INPUT*, ADDR2_COMPUTE_SURFACE_INFO_OUTPUT*, unsigned int*

[Mesa-dev] [PATCH 05/12] amd/addrlib: mark physicalSliceSize as MAYBE_UNUSED in Addr::V1::EgBasedLib::HwlGetSizeAdjustmentMicroTiled

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-but-set-variable warning with GCC 8: ../../../src/amd/addrlib/r800/egbaddrlib.cpp: In member function 'virtual long long unsigned int Addr::V1::EgBasedLib::HwlGetSizeAdjustmentMicroTiled(unsigned int, unsigned int, ADDR_SURFACE_FLAGS, unsigne

[Mesa-dev] [PATCH 01/12] amd/addrlib: mark returnCode as MAYBE_UNUSED in ElemGetExportNorm

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-but-set-variable warning with GCC 8: ../../../src/amd/addrlib/addrinterface.cpp: In function 'int ElemGetExportNorm(ADDR_HANDLE, const ELEM_GETEXPORTNORM_INPUT*)': ../../../src/amd/addrlib/addrinterface.cpp:835:23: warning: variable 'returnC

[Mesa-dev] [PATCH 07/12] intel: aubinator: mark ftruncate_res as MAYBE_UNUSED in ensure_phys_mem

2018-08-18 Thread Kai Wasserbäch
Only used, when asserts are enabled. Fixes an unused-variable warning with GCC 8: ../../../src/intel/tools/aubinator.c: In function 'ensure_phys_mem': ../../../src/intel/tools/aubinator.c:209:11: warning: unused variable 'ftruncate_res' [-Wunused-variable] int ftruncate_res = ftruncate(

Re: [Mesa-dev] [PATCH v3 0/6] support config for third-party DRI driver load

2018-08-18 Thread Emil Velikov
On 18 August 2018 at 04:37, Yu, Qiang wrote: > Thanks Emil. > Ftr both of those did show up with the MacOS build on Travis. If you have a github account you easily experiment it. >> - missing include (for PATH_MAX) in patch 1 > Although I can compile without , I agree to add it explicitly. > >>

Re: [Mesa-dev] [PATCH] docs: Python 2.7 or later is required.

2018-08-18 Thread Emil Velikov
On 18 August 2018 at 00:03, Vinson Lee wrote: > Signed-off-by: Vinson Lee > --- > docs/install.html | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/docs/install.html b/docs/install.html > index 08081944cfcc..f6094671cf9f 100644 > --- a/docs/install.html > +++ b/docs/inst

Re: [Mesa-dev] [PATCH 2/2] glsl: remove execute bit and shebang from python tests

2018-08-18 Thread Emil Velikov
On 17 August 2018 at 18:55, Dylan Baker wrote: > I don't care one way or the other on this, but it needs to wait for the > series I > have to make two of the test cases py 3 ready, and for a patch from Mathieu to > make another py 3 ready. > > Just for reference, it is convention (though I don't

Re: [Mesa-dev] [PATCHv2 1/2] meson: Use python to run glsl tests

2018-08-18 Thread Emil Velikov
On 17 August 2018 at 18:59, Dylan Baker wrote: > Quoting Emil Velikov (2018-08-17 04:11:32) >> From: Dylan Baker >> >> There are multiple reasons why the python scripts are executed >> explicitly via $PYTHON or equivalent. In random order: >> >> - env is rarely a thing on Windows > > windows doe