[Mesa-dev] [PATCH v2 33/45] swr/rast: add cvt instructions in x86 lowering pass

2018-04-17 Thread George Kyriazis
Support generic VCVTPD2PS and VCVTPH2PS in x86 lowering pass. --- .../swr/rasterizer/codegen/gen_llvm_ir_macros.py | 70 -- .../drivers/swr/rasterizer/jitter/builder_mem.cpp | 14 - .../drivers/swr/rasterizer/jitter/builder_mem.h| 3 - .../drivers/swr/rasterizer/jit

[Mesa-dev] [PATCH v2 22/45] swr/rast: Cleanup of JitManager convenience types

2018-04-17 Thread George Kyriazis
Small cleanup. Remove convenience types from JitManager and standardize on the Builder's convenience types. --- .../drivers/swr/rasterizer/jitter/JitManager.cpp | 19 --- .../drivers/swr/rasterizer/jitter/JitManager.h | 20 .../drivers/swr/rasterizer/

[Mesa-dev] [PATCH v2 28/45] swr/rast: Adding translate call to builder_gfx_mem.

2018-04-17 Thread George Kyriazis
--- src/gallium/drivers/swr/rasterizer/jitter/builder_gfx_mem.cpp | 5 + src/gallium/drivers/swr/rasterizer/jitter/builder_gfx_mem.h | 2 ++ 2 files changed, 7 insertions(+) diff --git a/src/gallium/drivers/swr/rasterizer/jitter/builder_gfx_mem.cpp b/src/gallium/drivers/swr/rasterizer/jitt

[Mesa-dev] [PATCH v2 38/45] swr/rast: Fix 64bit float loads in x86 lowering pass

2018-04-17 Thread George Kyriazis
--- .../drivers/swr/rasterizer/jitter/builder_mem.cpp | 39 +- .../drivers/swr/rasterizer/jitter/fetch_jit.cpp| 31 + 2 files changed, 25 insertions(+), 45 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/jitter/builder_mem.cpp b/src/gallium/d

[Mesa-dev] [PATCH v2 11/45] swr/rast: WIP builder rewrite (2)

2018-04-17 Thread George Kyriazis
Finish up the remaining explicit intrinsic uses. At this point all explicit Intrinsic::getDeclaration() usage has been replaced with auto generated macros generated with gen_llvm_ir_macros.py. Going forward, make sure to only use the intrinsics here, adding new ones as needed. Next step is to remo

[Mesa-dev] [PATCH v2 43/45] swr/rast: Optimize late/bindless JIT of samplers

2018-04-17 Thread George Kyriazis
Add per-worker thread private data to all shader calls Add per-worker sampler cache and jit context Add late LoadTexel JIT support Add per-worker-thread Sampler / LoadTexel JIT --- src/gallium/drivers/swr/rasterizer/core/api.cpp| 7 ++- src/gallium/drivers/swr/rasterizer/core/api.h | 47

[Mesa-dev] [PATCH v2 26/45] swr: add x86 lowering pass to fragment shader

2018-04-17 Thread George Kyriazis
Needed because some FP paths (namely stipple) use gather intrinsics that now need to be lowered to x86. v2: fix typo in commit message --- src/gallium/drivers/swr/swr_shader.cpp | 7 +++ 1 file changed, 7 insertions(+) diff --git a/src/gallium/drivers/swr/swr_shader.cpp b/src/gallium/driver

[Mesa-dev] [PATCH v2 45/45] swr/rast: Fix VGATHERPD lowering

2018-04-17 Thread George Kyriazis
Also Implement VHSUBPS in x86 lowering pass. --- .../rasterizer/jitter/functionpasses/lower_x86.cpp | 82 ++ 1 file changed, 69 insertions(+), 13 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/jitter/functionpasses/lower_x86.cpp b/src/gallium/drivers/swr/raster

[Mesa-dev] [PATCH v2 44/45] swr/rast: Replace x86 VMOVMSK with llvm-only implementation

2018-04-17 Thread George Kyriazis
--- .../swr/rasterizer/codegen/gen_llvm_ir_macros.py | 1 - .../drivers/swr/rasterizer/jitter/builder_mem.cpp | 2 +- .../drivers/swr/rasterizer/jitter/builder_misc.cpp | 25 -- .../drivers/swr/rasterizer/jitter/builder_misc.h | 2 ++ .../rasterizer/jitter/functionpasse

[Mesa-dev] [PATCH v2 24/45] swr/rast: Add builder_gfx_mem.{h|cpp}

2018-04-17 Thread George Kyriazis
Abstract usage scenarios for memory accesses into builder_gfx_mem. Builder_gfx_mem will convert gfxptr_t from 64-bit int to regular pointer types for use by builder_mem. v2: reworded commit message; renamed enum more appropriately --- src/gallium/drivers/swr/Makefile.sources | 2 + sr

[Mesa-dev] [PATCH v2 15/45] swr/rast: Code cleanup

2018-04-17 Thread George Kyriazis
Removing some code that doesn't seem to do anything meaningful. --- src/gallium/drivers/swr/rasterizer/jitter/fetch_jit.cpp | 9 + 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/jitter/fetch_jit.cpp b/src/gallium/drivers/swr/rasterizer/jitt

[Mesa-dev] [PATCH v2 35/45] swr/rast: Add vgather to x86 lowering pass.

2018-04-17 Thread George Kyriazis
Add support for generic VGATHERPD intrinsic in x86 lowering pass. --- .../rasterizer/jitter/functionpasses/lower_x86.cpp | 85 +++--- 1 file changed, 76 insertions(+), 9 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/jitter/functionpasses/lower_x86.cpp b/src/galliu

[Mesa-dev] [PATCH v2 31/45] swr/rast: Change gfx pointers to gfxptr_t

2018-04-17 Thread George Kyriazis
Changing type to gfxptr for indices and related changes to fetch and mem builder code. --- .../swr/rasterizer/codegen/gen_llvm_ir_macros.py | 4 +- src/gallium/drivers/swr/rasterizer/core/api.cpp| 8 +- src/gallium/drivers/swr/rasterizer/core/context.h | 2 +- .../drivers/swr/rasterizer/

[Mesa-dev] [PATCH v2 16/45] swr/rast: Add some archrast counters

2018-04-17 Thread George Kyriazis
Hook up archrast counters for shader stats: instructions executed. --- .../drivers/swr/rasterizer/archrast/archrast.cpp | 4 +-- .../drivers/swr/rasterizer/archrast/events.proto | 30 ++ .../drivers/swr/rasterizer/core/backend.cpp| 1 + .../drivers/swr/rasterizer/

[Mesa-dev] [PATCH v2 18/45] swr/rast: Move CallPrint() to a separate file

2018-04-17 Thread George Kyriazis
Needed work for jit code debug. --- src/gallium/drivers/swr/Makefile.sources | 3 +- src/gallium/drivers/swr/meson.build| 1 + .../drivers/swr/rasterizer/jitter/builder_misc.cpp | 22 +- .../rasterizer/jitter/shader_lib/DebugOutput.cpp | 51 +++

[Mesa-dev] [PATCH v2 36/45] swr/rast: Type-check TemplateArgUnroller

2018-04-17 Thread George Kyriazis
Allows direct use of enum values in conversion to template args. --- src/gallium/drivers/swr/rasterizer/core/utils.h | 39 + 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/core/utils.h b/src/gallium/drivers/swr/rasterizer

[Mesa-dev] [PATCH v2 29/45] swr/rast: Add support for setting optimization level

2018-04-17 Thread George Kyriazis
for JIT compilation --- .../drivers/swr/rasterizer/codegen/knob_defs.py| 35 ++ .../swr/rasterizer/common/simdlib_512_emu.inl | 2 +- src/gallium/drivers/swr/rasterizer/core/state.h| 13 .../drivers/swr/rasterizer/jitter/JitManager.cpp | 10 +-- ...

[Mesa-dev] [PATCH v2 02/45] swr/rast: Introduce JIT_MEM_CLIENT

2018-04-17 Thread George Kyriazis
Add assert for correct usage of memory accesses v2: reworded commit message; renamed enum more appropriately --- .../drivers/swr/rasterizer/jitter/builder_mem.cpp | 58 ++ .../drivers/swr/rasterizer/jitter/builder_mem.h| 47 -- .../drivers/swr/rasterizer/j

[Mesa-dev] [PATCH v2 14/45] swr/rast: Add "Num Instructions Executed" stats intrinsic.

2018-04-17 Thread George Kyriazis
Added a SWR_SHADER_STATS structure which is passed to each shader. The stats pass will instrument the shader to populate this. --- src/gallium/drivers/swr/rasterizer/core/state.h | 28 ++--- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/swr/

[Mesa-dev] [PATCH v2 37/45] swr/rast: Add shader stats infrastructure (WIP)

2018-04-17 Thread George Kyriazis
--- .../drivers/swr/rasterizer/archrast/archrast.cpp | 64 +++-- .../drivers/swr/rasterizer/archrast/events.proto | 65 -- .../swr/rasterizer/archrast/events_private.proto | 30 ++ .../drivers/swr/rasterizer/jitter/builder.h| 23 4

[Mesa-dev] [PATCH v2 12/45] swr/rast: Permute work for simd16

2018-04-17 Thread George Kyriazis
Fix slow permutes in PA tri lists under SIMD16 emulation on AVX Added missing permute (interlane, immediate) to SIMDLIB --- .../drivers/swr/rasterizer/common/simd16intrin.h | 1 + .../drivers/swr/rasterizer/common/simdintrin.h | 1 + .../swr/rasterizer/common/simdlib_256_avx.inl | 6

[Mesa-dev] [PATCH v2 27/45] swr/rast: Fix codegen for typedef types

2018-04-17 Thread George Kyriazis
--- src/gallium/drivers/swr/rasterizer/codegen/gen_llvm_types.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/swr/rasterizer/codegen/gen_llvm_types.py b/src/gallium/drivers/swr/rasterizer/codegen/gen_llvm_types.py index a127976..d8863c0 100644 --- a/src/gallium/drivers/

[Mesa-dev] [PATCH v2 40/45] swr/rast: minimize codegen redundant work

2018-04-17 Thread George Kyriazis
Move filtering of redundant codegen operations into gen scripts themselves --- .../drivers/swr/rasterizer/codegen/gen_archrast.py | 111 + .../drivers/swr/rasterizer/codegen/gen_backends.py | 97 +-- .../drivers/swr/rasterizer/codegen/gen_common.py | 131

[Mesa-dev] [PATCH v2 20/45] swr/rast: Start refactoring of builder/packetizer.

2018-04-17 Thread George Kyriazis
Move x86 intrinsic lowering to a separate pass. Builder now instantiates generic intrinsics for features not supported by llvm. The separate x86 lowering pass is responsible for lowering to valid x86 for the target SIMD architecture. Currently it's a port of existing code to get it up and running q

[Mesa-dev] [PATCH v2 30/45] swr/rast: Fix byte offset for non-indexed draws

2018-04-17 Thread George Kyriazis
--- src/gallium/drivers/swr/rasterizer/core/frontend.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/core/frontend.cpp b/src/gallium/drivers/swr/rasterizer/core/frontend.cpp index 25d1073..2076859 100644 --- a/src/gallium/drivers/swr

[Mesa-dev] [PATCH v2 41/45] swr/rast: Refactor to improve code sharing.

2018-04-17 Thread George Kyriazis
--- .../drivers/swr/rasterizer/jitter/fetch_jit.cpp| 79 ++ 1 file changed, 36 insertions(+), 43 deletions(-) diff --git a/src/gallium/drivers/swr/rasterizer/jitter/fetch_jit.cpp b/src/gallium/drivers/swr/rasterizer/jitter/fetch_jit.cpp index 767866f..af97b83 100644 --- a

[Mesa-dev] [PATCH v2 25/45] swr/rast: Enable generalized fetch jit

2018-04-17 Thread George Kyriazis
Enable generalized fetch jit with 8 or 16 wide SIMD target. Still some work needed to remove some simd8 double pumping for 16-wide target. Also removed unused non-gather load vertices path. --- .../drivers/swr/rasterizer/jitter/builder.cpp | 26 +- .../drivers/swr/rasterizer/jitter/builder

[Mesa-dev] [PATCH v2 32/45] swr/rast: Fix alloca usage in jitter

2018-04-17 Thread George Kyriazis
Fix issue where temporary allocas were getting hoisted to function entry unnecessarily. We now explicitly mark temporary allocas and skip hoisting during the hoist pass. Shuold reduce stack usage. --- src/gallium/drivers/swr/rasterizer/jitter/builder.cpp | 17 + src/gallium/drive

Re: [Mesa-dev] Query GL extensions (“GL_OES_EGL_image_external” ) RE: Create texture2D from NV12

2018-04-17 Thread Zong, Wei
Marek & Palli, I parsed the returned GL extensions string, it sure contains " GL_OES_EGL_image_external ". I made a mistake by looking up log manually before, the string must be truncated by log length limitation. Thank you very much! Zong Wei -Original Message- From: Palli, Tapani Se

[Mesa-dev] [Bug 106114] Blocker to support VK_EXT_descriptor_indexing

2018-04-17 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=106114 Bug ID: 106114 Summary: Blocker to support VK_EXT_descriptor_indexing Product: Mesa Version: unspecified Hardware: Other OS: All Status: NEW Severity: no

[Mesa-dev] [Bug 105928] [TRACKER] Mesa 18.1 feature tracker

2018-04-17 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105928 Bas Nieuwenhuizen changed: What|Removed |Added Depends on||106114 Referenced Bugs: https://b

Re: [Mesa-dev] [PATCH v2 00/45] OpenSWR driver misc changes

2018-04-17 Thread Cherniak, Bruce
Entire patch set Reviewed-by: Bruce Cherniak > On Apr 17, 2018, at 8:31 PM, George Kyriazis > wrote: > > > Lots of SWR-specifc changes, including: > - work for 16-wide simd operation across all avx flavors > - separate avx instrinsics into a separate x86 lowering pass > - stats work > - mis

Re: [Mesa-dev] [PATCH v2 3/5] i965: perf: read slice/unslice frequencies from OA reports

2018-04-17 Thread Kenneth Graunke
On Tuesday, April 17, 2018 4:45:13 PM PDT Lionel Landwerlin wrote: > On 16/04/18 23:16, Kenneth Graunke wrote: > > On Tuesday, April 3, 2018 7:48:11 AM PDT Lionel Landwerlin wrote: > >> Signed-off-by: Lionel Landwerlin > >> --- > >> src/mesa/drivers/dri/i965/brw_performance_query.c | 37 > >> ++

<    1   2