* [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING
@ 2018-10-02 13:49 Katarzyna Dec
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
` (5 more replies)
0 siblings, 6 replies; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-02 13:49 UTC (permalink / raw)
To: igt-dev
This is the same series that was sent in june'18, but got lost during review.
Major issue was with introducing IGA for newer gens.
I've discussed about this series lately on intel-gfx and with high probability
we could merge it (after successful review).
Please look at these patches and leave your comment.
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
Katarzyna Dec (2):
shaders: Add assembler instructions and update README for shaders
lib/i915: Move shaders directory
lib/i915/shaders/README | 19 +++++++++++++++
lib/i915/shaders/converter.py | 24 +++++++++++++++++++
lib/i915/shaders/gpgpu/README | 15 ++++++++++++
.../i915/shaders}/gpgpu/gpgpu_fill.gxa | 0
lib/i915/shaders/gpgpu/gpgpu_fill_gen8.asm | 10 ++++++++
lib/i915/shaders/gpgpu/gpgpu_fill_gen9.asm | 10 ++++++++
lib/i915/shaders/media/README | 14 +++++++++++
.../i915/shaders}/media/media_fill.gxa | 0
lib/i915/shaders/media/media_fill_gen8.asm | 11 +++++++++
lib/i915/shaders/ps/README | 9 +++++++
{shaders => lib/i915/shaders}/ps/blit.g7a | 0
lib/i915/shaders/ps/blit_gen8.asm | 7 ++++++
lib/i915/shaders/ps/neg1_gen8.asm | 9 +++++++
.../i915/shaders}/ps/neg1_test.g7a | 0
shaders/gpgpu/README | 4 ----
shaders/media/README | 5 ----
shaders/ps/README | 1 -
17 files changed, 128 insertions(+), 10 deletions(-)
create mode 100644 lib/i915/shaders/README
create mode 100644 lib/i915/shaders/converter.py
create mode 100644 lib/i915/shaders/gpgpu/README
rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill.gxa (100%)
create mode 100644 lib/i915/shaders/gpgpu/gpgpu_fill_gen8.asm
create mode 100644 lib/i915/shaders/gpgpu/gpgpu_fill_gen9.asm
create mode 100644 lib/i915/shaders/media/README
rename {shaders => lib/i915/shaders}/media/media_fill.gxa (100%)
create mode 100644 lib/i915/shaders/media/media_fill_gen8.asm
create mode 100644 lib/i915/shaders/ps/README
rename {shaders => lib/i915/shaders}/ps/blit.g7a (100%)
create mode 100644 lib/i915/shaders/ps/blit_gen8.asm
create mode 100644 lib/i915/shaders/ps/neg1_gen8.asm
rename {shaders => lib/i915/shaders}/ps/neg1_test.g7a (100%)
delete mode 100644 shaders/gpgpu/README
delete mode 100644 shaders/media/README
delete mode 100644 shaders/ps/README
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
@ 2018-10-02 13:49 ` Katarzyna Dec
2018-10-02 13:57 ` Kalamarz, Lukasz
` (2 more replies)
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory Katarzyna Dec
` (4 subsequent siblings)
5 siblings, 3 replies; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-02 13:49 UTC (permalink / raw)
To: igt-dev
We're not planning to work on assembler in igt anymore, since we can
reuse an existing project (IGA) that will do this work for us. The
only extra thing we need to do is convert the result binary to C-array,
simple python script.
v2: Moved converter to single file. Fixed README for shaders.
Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
---
shaders/README | 19 +++++++++++++++++++
shaders/converter.py | 24 ++++++++++++++++++++++++
shaders/gpgpu/README | 11 +++++++++++
shaders/gpgpu/gpgpu_fill_gen8.asm | 10 ++++++++++
shaders/gpgpu/gpgpu_fill_gen9.asm | 10 ++++++++++
shaders/media/README | 9 +++++++++
shaders/media/media_fill_gen8.asm | 11 +++++++++++
shaders/ps/README | 8 ++++++++
shaders/ps/blit_gen8.asm | 7 +++++++
shaders/ps/neg1_gen8.asm | 9 +++++++++
10 files changed, 118 insertions(+)
create mode 100644 shaders/README
create mode 100644 shaders/converter.py
create mode 100644 shaders/gpgpu/gpgpu_fill_gen8.asm
create mode 100644 shaders/gpgpu/gpgpu_fill_gen9.asm
create mode 100644 shaders/media/media_fill_gen8.asm
create mode 100644 shaders/ps/blit_gen8.asm
create mode 100644 shaders/ps/neg1_gen8.asm
diff --git a/shaders/README b/shaders/README
new file mode 100644
index 00000000..3365a209
--- /dev/null
+++ b/shaders/README
@@ -0,0 +1,19 @@
+This directory is for shaders used in media_fill, gpgpu_fill, rendercopy
+and media_spin libraries.
+
+Till Gen8 shaders were generated using intel-gen4asm script (implementation in
+assembler/ directory). From Gen8 it is possible to use Intel Graphics Assembler
+to generate binary from asm instructions.
+https://github.com/intel/intel-graphics-compiler
+ 1. Clone IGC project
+ 2. Go to igc/visa/iga
+ 3. Build iga
+ cmake . && make
+
+For maintaining compatibility with our tests there is a bin to hex converter
+written in python:
+ $>converter.py input_file > output_file
+e.g.$>python converter.py gen9_iga_output > gen9_hex_array
+
+Instructions how to build media, gpgpu or ps shaders included in their
+subdirectories.
diff --git a/shaders/converter.py b/shaders/converter.py
new file mode 100644
index 00000000..a50ac96c
--- /dev/null
+++ b/shaders/converter.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python2
+import struct
+import sys
+import argparse
+
+parser = argparse.ArgumentParser(description='Script for converting shaders in binary to hex.')
+args = parser.parse_args()
+
+print "static const uint32_t kernel[][4] = {"
+
+with open(sys.argv[1], 'r') as f:
+ fmt = '<LLLL'
+ step = struct.calcsize(fmt)
+ while True:
+ buf = f.read(step)
+ if not buf:
+ break
+ elif len(buf) < step:
+ buf += '\x00' * (step - len(buf))
+
+ val = struct.unpack('<LLLL', buf)
+ print "\t{{ 0x{:08x}, 0x{:08x}, 0x{:08x}, 0x{:08x} }},".format(*val)
+
+print "};"
\ No newline at end of file
diff --git a/shaders/gpgpu/README b/shaders/gpgpu/README
index 3bf328ad..91aca7e8 100644
--- a/shaders/gpgpu/README
+++ b/shaders/gpgpu/README
@@ -1,4 +1,15 @@
+These files are here for reference only.
Commands used to generate the shader on gen7
$> m4 gpgpu_fill.gxa > gpgpu_fill.gxm
$> intel-gen4asm -g 7 -o <output> gpgpu_fill.gxm
+
+From gen8 we can use Intel Graphics Assember to generate binary from asm
+instructions
+https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga.
+
+
+How to get binary from .asm (e.g. when ISA instructions has changed):
+ $> iga64 gpgpu_fill.asm -p=8 -a -o gpgpu_fill_gen8.bin
+ $> Use converter from shaders/README to have hex array used in libs
+ $> Copy output to proper lib
diff --git a/shaders/gpgpu/gpgpu_fill_gen8.asm b/shaders/gpgpu/gpgpu_fill_gen8.asm
new file mode 100644
index 00000000..448e0256
--- /dev/null
+++ b/shaders/gpgpu/gpgpu_fill_gen8.asm
@@ -0,0 +1,10 @@
+ mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
+ mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
+ mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
+ mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
+ mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
+ mov (1|M0) r4.2<1>:ud 0xF:ud
+ mov (16|M0) (eq)f0.0 r5.0<1>:ud r1.0<0;1,0>:ud
+ send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000 // DP_DC1 wr:3h, rd:0, fc: 0x28000
+ mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
+ send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
diff --git a/shaders/gpgpu/gpgpu_fill_gen9.asm b/shaders/gpgpu/gpgpu_fill_gen9.asm
new file mode 100644
index 00000000..6f948935
--- /dev/null
+++ b/shaders/gpgpu/gpgpu_fill_gen9.asm
@@ -0,0 +1,10 @@
+ mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
+ mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
+ mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
+ mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
+ mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
+ mov (1|M0) r4.2<1>:ud 0xF:ud
+ mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
+ send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000 // DP_DC1 wr:3h, rd:0, fc: 0x28000
+ mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
+ send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
diff --git a/shaders/media/README b/shaders/media/README
index 9f296010..dff53bd0 100644
--- a/shaders/media/README
+++ b/shaders/media/README
@@ -3,3 +3,12 @@ These files are here for reference only.
Commands used to generate the shader on gen8
$> m4 media_fill.gxa > media_fill.gxm
$> intel-gen4asm -g 8 -o <output> media_fill.gxm
+
+From gen8 we can use Intel Graphics Assember to generate binary from asm
+instructions https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga.
+
+How to get binary from .asm (e.g. when ISA instructions has changed):
+ $> iga64 media_fill_gen8.asm -p=8 -a -o media_fill_gen8.bin
+ $> Use converter from shaders/README to have hex array used in libs
+ $> Copy output to proper lib
+
diff --git a/shaders/media/media_fill_gen8.asm b/shaders/media/media_fill_gen8.asm
new file mode 100644
index 00000000..4b6eb84b
--- /dev/null
+++ b/shaders/media/media_fill_gen8.asm
@@ -0,0 +1,11 @@
+ mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
+ mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
+ mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
+ mov (1|M0) r4.2<1>:ud 0xF000F:ud
+ mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
+ mov (16|M0) r7.0<1>:ud r1.0<0;1,0>:ud
+ mov (16|M0) r9.0<1>:ud r1.0<0;1,0>:ud
+ mov (16|M0) r11.0<1>:ud r1.0<0;1,0>:ud
+ send (16|M0) acc0.0:uw r4:d 0x1000000C 0x120A8000 // DP_DC1 wr:9h, rd:0, fc: 0x28000
+ mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
+ send (16|M0) null:uw r112:d 0x10000027 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
diff --git a/shaders/ps/README b/shaders/ps/README
index b196d025..a4be135d 100644
--- a/shaders/ps/README
+++ b/shaders/ps/README
@@ -1 +1,9 @@
These files are here for reference only.
+
+From gen8 we can use Intel Graphics Assember to generate binary from asm
+instructions https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga.
+
+How to get binary from .asm?
+ $> iga64 blit_gen8.asm -p=8 -a -o blit_gen8.bin
+ $> Use converter from shaders/README to have hex array used in libs
+ $> Copy output to proper lib
diff --git a/shaders/ps/blit_gen8.asm b/shaders/ps/blit_gen8.asm
new file mode 100644
index 00000000..c35b70a1
--- /dev/null
+++ b/shaders/ps/blit_gen8.asm
@@ -0,0 +1,7 @@
+ pln (8|M0) r10.0<1>:f r6.0<0;1,0>:f r2.0<8;8,1>:f
+ pln (8|M0) r11.0<1>:f r6.0<0;1,0>:f r4.0<8;8,1>:f
+ pln (8|M0) r12.0<1>:f r6.4<0;1,0>:f r2.0<8;8,1>:f
+ pln (8|M0) 13.0<1>:f r6.4<0;1,0>:f r4.0<8;8,1>:f
+ send (16|M0) r112:f r10:ub 0x10000002 0x08840001 // SAMPLER wr:4, rd:8, fc: 0x40001
+ send (16|M0) null:f r112:ub 0x10000025 0x10031000 {EOT} // DP_RC wr:8, rd:0, Render Target Write msc:16, to #0
+
diff --git a/shaders/ps/neg1_gen8.asm b/shaders/ps/neg1_gen8.asm
new file mode 100644
index 00000000..582375b5
--- /dev/null
+++ b/shaders/ps/neg1_gen8.asm
@@ -0,0 +1,9 @@
+mov(8) r112:ud 0x3f800000:ud
+mov(8) r113:ud 0x3f800000:ud
+mov(8) r114:ud 0x3f800000:ud
+mov(8) r115:ud 0x3f800000:ud
+mov(8) r116:ud 0x3f800000:ud
+mov(8) r117:ud 0x3f800000:ud
+mov(8) r118:ud 0x3f800000:ud
+mov(8) r119:ud 0x3f800000:ud
+send(16) null r112 0x25 0x10031000 { EOT }
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
@ 2018-10-02 13:49 ` Katarzyna Dec
2018-10-03 11:00 ` Petri Latvala
2018-10-02 14:55 ` [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING Patchwork
` (3 subsequent siblings)
5 siblings, 1 reply; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-02 13:49 UTC (permalink / raw)
To: igt-dev
In shaders/ directory we got Intel specific information. As igt
is a project for more vendors, let's move this directory to
lib/i915.
Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
---
{shaders => lib/i915/shaders}/README | 0
{shaders => lib/i915/shaders}/converter.py | 0
{shaders => lib/i915/shaders}/gpgpu/README | 0
{shaders => lib/i915/shaders}/gpgpu/gpgpu_fill.gxa | 0
{shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen8.asm | 0
{shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen9.asm | 0
{shaders => lib/i915/shaders}/media/README | 0
{shaders => lib/i915/shaders}/media/media_fill.gxa | 0
{shaders => lib/i915/shaders}/media/media_fill_gen8.asm | 0
{shaders => lib/i915/shaders}/ps/README | 0
{shaders => lib/i915/shaders}/ps/blit.g7a | 0
{shaders => lib/i915/shaders}/ps/blit_gen8.asm | 0
{shaders => lib/i915/shaders}/ps/neg1_gen8.asm | 0
{shaders => lib/i915/shaders}/ps/neg1_test.g7a | 0
14 files changed, 0 insertions(+), 0 deletions(-)
rename {shaders => lib/i915/shaders}/README (100%)
rename {shaders => lib/i915/shaders}/converter.py (100%)
rename {shaders => lib/i915/shaders}/gpgpu/README (100%)
rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill.gxa (100%)
rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen8.asm (100%)
rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen9.asm (100%)
rename {shaders => lib/i915/shaders}/media/README (100%)
rename {shaders => lib/i915/shaders}/media/media_fill.gxa (100%)
rename {shaders => lib/i915/shaders}/media/media_fill_gen8.asm (100%)
rename {shaders => lib/i915/shaders}/ps/README (100%)
rename {shaders => lib/i915/shaders}/ps/blit.g7a (100%)
rename {shaders => lib/i915/shaders}/ps/blit_gen8.asm (100%)
rename {shaders => lib/i915/shaders}/ps/neg1_gen8.asm (100%)
rename {shaders => lib/i915/shaders}/ps/neg1_test.g7a (100%)
diff --git a/shaders/README b/lib/i915/shaders/README
similarity index 100%
rename from shaders/README
rename to lib/i915/shaders/README
diff --git a/shaders/converter.py b/lib/i915/shaders/converter.py
similarity index 100%
rename from shaders/converter.py
rename to lib/i915/shaders/converter.py
diff --git a/shaders/gpgpu/README b/lib/i915/shaders/gpgpu/README
similarity index 100%
rename from shaders/gpgpu/README
rename to lib/i915/shaders/gpgpu/README
diff --git a/shaders/gpgpu/gpgpu_fill.gxa b/lib/i915/shaders/gpgpu/gpgpu_fill.gxa
similarity index 100%
rename from shaders/gpgpu/gpgpu_fill.gxa
rename to lib/i915/shaders/gpgpu/gpgpu_fill.gxa
diff --git a/shaders/gpgpu/gpgpu_fill_gen8.asm b/lib/i915/shaders/gpgpu/gpgpu_fill_gen8.asm
similarity index 100%
rename from shaders/gpgpu/gpgpu_fill_gen8.asm
rename to lib/i915/shaders/gpgpu/gpgpu_fill_gen8.asm
diff --git a/shaders/gpgpu/gpgpu_fill_gen9.asm b/lib/i915/shaders/gpgpu/gpgpu_fill_gen9.asm
similarity index 100%
rename from shaders/gpgpu/gpgpu_fill_gen9.asm
rename to lib/i915/shaders/gpgpu/gpgpu_fill_gen9.asm
diff --git a/shaders/media/README b/lib/i915/shaders/media/README
similarity index 100%
rename from shaders/media/README
rename to lib/i915/shaders/media/README
diff --git a/shaders/media/media_fill.gxa b/lib/i915/shaders/media/media_fill.gxa
similarity index 100%
rename from shaders/media/media_fill.gxa
rename to lib/i915/shaders/media/media_fill.gxa
diff --git a/shaders/media/media_fill_gen8.asm b/lib/i915/shaders/media/media_fill_gen8.asm
similarity index 100%
rename from shaders/media/media_fill_gen8.asm
rename to lib/i915/shaders/media/media_fill_gen8.asm
diff --git a/shaders/ps/README b/lib/i915/shaders/ps/README
similarity index 100%
rename from shaders/ps/README
rename to lib/i915/shaders/ps/README
diff --git a/shaders/ps/blit.g7a b/lib/i915/shaders/ps/blit.g7a
similarity index 100%
rename from shaders/ps/blit.g7a
rename to lib/i915/shaders/ps/blit.g7a
diff --git a/shaders/ps/blit_gen8.asm b/lib/i915/shaders/ps/blit_gen8.asm
similarity index 100%
rename from shaders/ps/blit_gen8.asm
rename to lib/i915/shaders/ps/blit_gen8.asm
diff --git a/shaders/ps/neg1_gen8.asm b/lib/i915/shaders/ps/neg1_gen8.asm
similarity index 100%
rename from shaders/ps/neg1_gen8.asm
rename to lib/i915/shaders/ps/neg1_gen8.asm
diff --git a/shaders/ps/neg1_test.g7a b/lib/i915/shaders/ps/neg1_test.g7a
similarity index 100%
rename from shaders/ps/neg1_test.g7a
rename to lib/i915/shaders/ps/neg1_test.g7a
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
@ 2018-10-02 13:57 ` Kalamarz, Lukasz
2018-10-03 5:47 ` Katarzyna Dec
2018-10-03 11:05 ` Arkadiusz Hiler
2 siblings, 0 replies; 15+ messages in thread
From: Kalamarz, Lukasz @ 2018-10-02 13:57 UTC (permalink / raw)
To: Dec, Katarzyna, igt-dev
On Tue, 2018-10-02 at 15:49 +0200, Katarzyna Dec wrote:
> We're not planning to work on assembler in igt anymore, since we can
> reuse an existing project (IGA) that will do this work for us. The
> only extra thing we need to do is convert the result binary to C-
> array,
> simple python script.
>
> v2: Moved converter to single file. Fixed README for shaders.
>
> Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
> Cc: Antonio Argenziano <antonio.argenziano@intel.com>
> ---
> shaders/README | 19 +++++++++++++++++++
> shaders/converter.py | 24 ++++++++++++++++++++++++
> shaders/gpgpu/README | 11 +++++++++++
> shaders/gpgpu/gpgpu_fill_gen8.asm | 10 ++++++++++
> shaders/gpgpu/gpgpu_fill_gen9.asm | 10 ++++++++++
> shaders/media/README | 9 +++++++++
> shaders/media/media_fill_gen8.asm | 11 +++++++++++
> shaders/ps/README | 8 ++++++++
> shaders/ps/blit_gen8.asm | 7 +++++++
> shaders/ps/neg1_gen8.asm | 9 +++++++++
> 10 files changed, 118 insertions(+)
> create mode 100644 shaders/README
> create mode 100644 shaders/converter.py
> create mode 100644 shaders/gpgpu/gpgpu_fill_gen8.asm
> create mode 100644 shaders/gpgpu/gpgpu_fill_gen9.asm
> create mode 100644 shaders/media/media_fill_gen8.asm
> create mode 100644 shaders/ps/blit_gen8.asm
> create mode 100644 shaders/ps/neg1_gen8.asm
>
> diff --git a/shaders/README b/shaders/README
> new file mode 100644
> index 00000000..3365a209
> --- /dev/null
> +++ b/shaders/README
> @@ -0,0 +1,19 @@
> +This directory is for shaders used in media_fill, gpgpu_fill,
> rendercopy
> +and media_spin libraries.
> +
> +Till Gen8 shaders were generated using intel-gen4asm script
> (implementation in
> +assembler/ directory). From Gen8 it is possible to use Intel
> Graphics Assembler
> +to generate binary from asm instructions.
> +https://github.com/intel/intel-graphics-compiler
> + 1. Clone IGC project
> + 2. Go to igc/visa/iga
> + 3. Build iga
> + cmake . && make
> +
> +For maintaining compatibility with our tests there is a bin to hex
> converter
> +written in python:
> + $>converter.py input_file > output_file
> +e.g.$>python converter.py gen9_iga_output > gen9_hex_array
> +
> +Instructions how to build media, gpgpu or ps shaders included in
> their
> +subdirectories.
> diff --git a/shaders/converter.py b/shaders/converter.py
> new file mode 100644
> index 00000000..a50ac96c
> --- /dev/null
> +++ b/shaders/converter.py
> @@ -0,0 +1,24 @@
> +#!/usr/bin/env python2
> +import struct
> +import sys
> +import argparse
> +
> +parser = argparse.ArgumentParser(description='Script for converting
> shaders in binary to hex.')
> +args = parser.parse_args()
> +
> +print "static const uint32_t kernel[][4] = {"
> +
> +with open(sys.argv[1], 'r') as f:
> + fmt = '<LLLL'
> + step = struct.calcsize(fmt)
> + while True:
> + buf = f.read(step)
> + if not buf:
> + break
> + elif len(buf) < step:
> + buf += '\x00' * (step - len(buf))
> +
> + val = struct.unpack('<LLLL', buf)
> + print "\t{{ 0x{:08x}, 0x{:08x}, 0x{:08x}, 0x{:08x}
> }},".format(*val)
> +
> +print "};"
> \ No newline at end of file
Please add newline
> diff --git a/shaders/gpgpu/README b/shaders/gpgpu/README
> index 3bf328ad..91aca7e8 100644
> --- a/shaders/gpgpu/README
> +++ b/shaders/gpgpu/README
> @@ -1,4 +1,15 @@
> +These files are here for reference only.
>
> Commands used to generate the shader on gen7
> $> m4 gpgpu_fill.gxa > gpgpu_fill.gxm
> $> intel-gen4asm -g 7 -o <output> gpgpu_fill.gxm
> +
> +From gen8 we can use Intel Graphics Assember to generate binary from
> asm
> +instructions
> +https://github.com/intel/intel-graphics-
> compiler/tree/master/visa/iga.
I don't think dot is necessary at the end of a link
> +
> +
> +How to get binary from .asm (e.g. when ISA instructions has
> changed):
> + $> iga64 gpgpu_fill.asm -p=8 -a -o gpgpu_fill_gen8.bin
> + $> Use converter from shaders/README to have hex array used
> in libs
> + $> Copy output to proper lib
> diff --git a/shaders/gpgpu/gpgpu_fill_gen8.asm
> b/shaders/gpgpu/gpgpu_fill_gen8.asm
> new file mode 100644
> index 00000000..448e0256
> --- /dev/null
> +++ b/shaders/gpgpu/gpgpu_fill_gen8.asm
> @@ -0,0 +1,10 @@
> + mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
> + mul
> (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
> + mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
> + mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
> + mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
> + mov (1|M0) r4.2<1>:ud 0xF:ud
> + mov (16|M0) (eq)f0.0 r5.0<1>:ud r1.0<0;1,0>:ud
> + send
> (16|M0) acc0.0:uw r4:d 0xC 0x060A8000
> // DP_DC1 wr:3h, rd:0, fc: 0x28000
> + mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
> + send
> (16|M0) null:uw r112:d 0x27 0x02000010 {EOT}
> // SPAWNER wr:1, rd:0, fc: 0x10
> diff --git a/shaders/gpgpu/gpgpu_fill_gen9.asm
> b/shaders/gpgpu/gpgpu_fill_gen9.asm
> new file mode 100644
> index 00000000..6f948935
> --- /dev/null
> +++ b/shaders/gpgpu/gpgpu_fill_gen9.asm
> @@ -0,0 +1,10 @@
> + mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
> + mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
> + mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
> + mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
> + mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
> + mov (1|M0) r4.2<1>:ud 0xF:ud
> + mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
> + send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000
> // DP_DC1 wr:3h, rd:0, fc: 0x28000
> + mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
> + send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT}
> // SPAWNER wr:1, rd:0, fc: 0x10
> diff --git a/shaders/media/README b/shaders/media/README
> index 9f296010..dff53bd0 100644
> --- a/shaders/media/README
> +++ b/shaders/media/README
> @@ -3,3 +3,12 @@ These files are here for reference only.
> Commands used to generate the shader on gen8
> $> m4 media_fill.gxa > media_fill.gxm
> $> intel-gen4asm -g 8 -o <output> media_fill.gxm
> +
> +From gen8 we can use Intel Graphics Assember to generate binary from
> asm
> +instructions https://github.com/intel/intel-graphics-
> compiler/tree/master/visa/iga.
Same as above.
Everything else LGTM.
------
Lukasz
> +
> +How to get binary from .asm (e.g. when ISA instructions has
> changed):
> + $> iga64 media_fill_gen8.asm -p=8 -a -o media_fill_gen8.bin
> + $> Use converter from shaders/README to have hex array used
> in libs
> + $> Copy output to proper lib
> +
> diff --git a/shaders/media/media_fill_gen8.asm
> b/shaders/media/media_fill_gen8.asm
> new file mode 100644
> index 00000000..4b6eb84b
> --- /dev/null
> +++ b/shaders/media/media_fill_gen8.asm
> @@ -0,0 +1,11 @@
> + mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
> + mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
> + mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
> + mov (1|M0) r4.2<1>:ud 0xF000F:ud
> + mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
> + mov (16|M0) r7.0<1>:ud r1.0<0;1,0>:ud
> + mov (16|M0) r9.0<1>:ud r1.0<0;1,0>:ud
> + mov (16|M0) r11.0<1>:ud r1.0<0;1,0>:ud
> + send (16|M0) acc0.0:uw r4:d 0x1000000C 0x120A8000
> // DP_DC1 wr:9h, rd:0, fc: 0x28000
> + mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
> + send (16|M0) null:uw r112:d 0x10000027 0x02000010 {EOT}
> // SPAWNER wr:1, rd:0, fc: 0x10
> diff --git a/shaders/ps/README b/shaders/ps/README
> index b196d025..a4be135d 100644
> --- a/shaders/ps/README
> +++ b/shaders/ps/README
> @@ -1 +1,9 @@
> These files are here for reference only.
> +
> +From gen8 we can use Intel Graphics Assember to generate binary from
> asm
> +instructions https://github.com/intel/intel-graphics-compiler/tree/m
> aster/visa/iga.
> +
> +How to get binary from .asm?
> + $> iga64 blit_gen8.asm -p=8 -a -o blit_gen8.bin
> + $> Use converter from shaders/README to have hex array used
> in libs
> + $> Copy output to proper lib
> diff --git a/shaders/ps/blit_gen8.asm b/shaders/ps/blit_gen8.asm
> new file mode 100644
> index 00000000..c35b70a1
> --- /dev/null
> +++ b/shaders/ps/blit_gen8.asm
> @@ -0,0 +1,7 @@
> + pln (8|M0) r10.0<1>:f r6.0<0;1,0>:f r2.0<8;8,1>:f
> + pln (8|M0) r11.0<1>:f r6.0<0;1,0>:f r4.0<8;8,1>:f
> + pln (8|M0) r12.0<1>:f r6.4<0;1,0>:f r2.0<8;8,1>:f
> + pln (8|M0) 13.0<1>:f r6.4<0;1,0>:f r4.0<8;8,1>:f
> + send (16|M0) r112:f r10:ub 0x10000002 0x08840001 // SAMPLER wr:4,
> rd:8, fc: 0x40001
> + send (16|M0) null:f r112:ub 0x10000025 0x10031000 {EOT} // DP_RC
> wr:8, rd:0, Render Target Write msc:16, to #0
> +
> diff --git a/shaders/ps/neg1_gen8.asm b/shaders/ps/neg1_gen8.asm
> new file mode 100644
> index 00000000..582375b5
> --- /dev/null
> +++ b/shaders/ps/neg1_gen8.asm
> @@ -0,0 +1,9 @@
> +mov(8) r112:ud 0x3f800000:ud
> +mov(8) r113:ud 0x3f800000:ud
> +mov(8) r114:ud 0x3f800000:ud
> +mov(8) r115:ud 0x3f800000:ud
> +mov(8) r116:ud 0x3f800000:ud
> +mov(8) r117:ud 0x3f800000:ud
> +mov(8) r118:ud 0x3f800000:ud
> +mov(8) r119:ud 0x3f800000:ud
> +send(16) null r112 0x25 0x10031000 { EOT }
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory Katarzyna Dec
@ 2018-10-02 14:55 ` Patchwork
2018-10-03 6:14 ` [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING (rev2) Patchwork
` (2 subsequent siblings)
5 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2018-10-02 14:55 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
== Series Details ==
Series: Shaders documentation RESENDING
URL : https://patchwork.freedesktop.org/series/50445/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_4915 -> IGTPW_1891 =
== Summary - WARNING ==
Minor unknown changes coming with IGTPW_1891 need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1891, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://patchwork.freedesktop.org/api/1.0/series/50445/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1891:
=== IGT changes ===
==== Warnings ====
igt@drv_selftest@live_guc:
fi-glk-j4005: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1891 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@kms_frontbuffer_tracking@basic:
fi-byt-clapper: PASS -> FAIL (fdo#103167)
igt@kms_pipe_crc_basic@hang-read-crc-pipe-b:
fi-ilk-650: PASS -> DMESG-WARN (fdo#106387)
==== Possible fixes ====
igt@drv_selftest@live_coherency:
fi-gdg-551: DMESG-FAIL (fdo#107164) -> PASS
igt@drv_selftest@live_execlists:
fi-glk-j4005: INCOMPLETE (k.org#198133, fdo#103359) -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence:
fi-byt-clapper: FAIL (fdo#103191, fdo#107362) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-skl-guc: FAIL (fdo#103191) -> PASS
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#106387 https://bugs.freedesktop.org/show_bug.cgi?id=106387
fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (46 -> 43) ==
Missing (3): fi-bsw-cyan fi-byt-squawks fi-icl-u2
== Build changes ==
* IGT: IGT_4660 -> IGTPW_1891
CI_DRM_4915: 26e7a7d954a9c28b97af8ca7813f430fd9117232 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1891: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1891/
IGT_4660: d0975646c50568e66e65b44b81d28232d059b94e @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1891/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
2018-10-02 13:57 ` Kalamarz, Lukasz
@ 2018-10-03 5:47 ` Katarzyna Dec
2018-10-03 11:02 ` Petri Latvala
2018-10-03 11:05 ` Arkadiusz Hiler
2 siblings, 1 reply; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-03 5:47 UTC (permalink / raw)
To: igt-dev
We're not planning to work on assembler in igt anymore, since we can
reuse an existing project (IGA) that will do this work for us. The
only extra thing we need to do is convert the result binary to C-array,
simple python script.
v2: Moved converter to single file. Fixed README for shaders.
v3: Fixed typos.
Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
---
shaders/README | 19 +++++++++++++++++++
shaders/converter.py | 24 ++++++++++++++++++++++++
shaders/gpgpu/README | 10 ++++++++++
shaders/gpgpu/gpgpu_fill_gen8.asm | 10 ++++++++++
shaders/gpgpu/gpgpu_fill_gen9.asm | 10 ++++++++++
shaders/media/README | 8 ++++++++
shaders/media/media_fill_gen8.asm | 11 +++++++++++
shaders/ps/README | 8 ++++++++
shaders/ps/blit_gen8.asm | 7 +++++++
shaders/ps/neg1_gen8.asm | 9 +++++++++
10 files changed, 116 insertions(+)
create mode 100644 shaders/README
create mode 100644 shaders/converter.py
create mode 100644 shaders/gpgpu/gpgpu_fill_gen8.asm
create mode 100644 shaders/gpgpu/gpgpu_fill_gen9.asm
create mode 100644 shaders/media/media_fill_gen8.asm
create mode 100644 shaders/ps/blit_gen8.asm
create mode 100644 shaders/ps/neg1_gen8.asm
diff --git a/shaders/README b/shaders/README
new file mode 100644
index 00000000..7ac125b5
--- /dev/null
+++ b/shaders/README
@@ -0,0 +1,19 @@
+This directory is for shaders used in media_fill, gpgpu_fill, rendercopy
+and media_spin libraries.
+
+Till Gen8 shaders were generated using intel-gen4asm script (implementation in
+assembler/ directory). From Gen8 it is possible to use Intel Graphics Assembler
+to generate binary from asm instructions.
+https://github.com/intel/intel-graphics-compiler
+ 1. Clone IGC project
+ 2. Go to igc/visa/iga
+ 3. Build iga
+ cmake . && make
+
+For maintaining compatibility with our tests there is a bin to hex converter
+written in python:
+ $>converter.py input_file > output_file
+e.g.$>python converter.py gen9_iga_output > gen9_hex_array
+
+Instructions how to build media, gpgpu or ps shaders are included in their
+subdirectories.
diff --git a/shaders/converter.py b/shaders/converter.py
new file mode 100644
index 00000000..d00e6193
--- /dev/null
+++ b/shaders/converter.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python2
+import struct
+import sys
+import argparse
+
+parser = argparse.ArgumentParser(description='Script for converting shaders in binary to hex.')
+args = parser.parse_args()
+
+print "static const uint32_t kernel[][4] = {"
+
+with open(sys.argv[1], 'r') as f:
+ fmt = '<LLLL'
+ step = struct.calcsize(fmt)
+ while True:
+ buf = f.read(step)
+ if not buf:
+ break
+ elif len(buf) < step:
+ buf += '\x00' * (step - len(buf))
+
+ val = struct.unpack('<LLLL', buf)
+ print "\t{{ 0x{:08x}, 0x{:08x}, 0x{:08x}, 0x{:08x} }},".format(*val)
+
+print "};"
diff --git a/shaders/gpgpu/README b/shaders/gpgpu/README
index 3bf328ad..9d254e2a 100644
--- a/shaders/gpgpu/README
+++ b/shaders/gpgpu/README
@@ -1,4 +1,14 @@
+These files are here for reference only.
Commands used to generate the shader on gen7
$> m4 gpgpu_fill.gxa > gpgpu_fill.gxm
$> intel-gen4asm -g 7 -o <output> gpgpu_fill.gxm
+
+From gen8 we can use Intel Graphics Assember to generate binary from asm
+instructions
+https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga
+
+How to get binary from .asm (e.g. when ISA instructions has changed):
+ $> iga64 gpgpu_fill.asm -p=8 -a -o gpgpu_fill_gen8.bin
+ $> Use converter from shaders/README to have hex array used in libs
+ $> Copy output to proper lib
diff --git a/shaders/gpgpu/gpgpu_fill_gen8.asm b/shaders/gpgpu/gpgpu_fill_gen8.asm
new file mode 100644
index 00000000..448e0256
--- /dev/null
+++ b/shaders/gpgpu/gpgpu_fill_gen8.asm
@@ -0,0 +1,10 @@
+ mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
+ mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
+ mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
+ mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
+ mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
+ mov (1|M0) r4.2<1>:ud 0xF:ud
+ mov (16|M0) (eq)f0.0 r5.0<1>:ud r1.0<0;1,0>:ud
+ send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000 // DP_DC1 wr:3h, rd:0, fc: 0x28000
+ mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
+ send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
diff --git a/shaders/gpgpu/gpgpu_fill_gen9.asm b/shaders/gpgpu/gpgpu_fill_gen9.asm
new file mode 100644
index 00000000..6f948935
--- /dev/null
+++ b/shaders/gpgpu/gpgpu_fill_gen9.asm
@@ -0,0 +1,10 @@
+ mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
+ mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
+ mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
+ mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
+ mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
+ mov (1|M0) r4.2<1>:ud 0xF:ud
+ mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
+ send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000 // DP_DC1 wr:3h, rd:0, fc: 0x28000
+ mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
+ send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
diff --git a/shaders/media/README b/shaders/media/README
index 9f296010..44c08dce 100644
--- a/shaders/media/README
+++ b/shaders/media/README
@@ -3,3 +3,11 @@ These files are here for reference only.
Commands used to generate the shader on gen8
$> m4 media_fill.gxa > media_fill.gxm
$> intel-gen4asm -g 8 -o <output> media_fill.gxm
+
+From gen8 we can use Intel Graphics Assember to generate binary from asm
+instructions https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga
+
+How to get binary from .asm (e.g. when ISA instructions has changed):
+ $> iga64 media_fill_gen8.asm -p=8 -a -o media_fill_gen8.bin
+ $> Use converter from shaders/README to have hex array used in libs
+ $> Copy output to proper lib
diff --git a/shaders/media/media_fill_gen8.asm b/shaders/media/media_fill_gen8.asm
new file mode 100644
index 00000000..4b6eb84b
--- /dev/null
+++ b/shaders/media/media_fill_gen8.asm
@@ -0,0 +1,11 @@
+ mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
+ mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
+ mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
+ mov (1|M0) r4.2<1>:ud 0xF000F:ud
+ mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
+ mov (16|M0) r7.0<1>:ud r1.0<0;1,0>:ud
+ mov (16|M0) r9.0<1>:ud r1.0<0;1,0>:ud
+ mov (16|M0) r11.0<1>:ud r1.0<0;1,0>:ud
+ send (16|M0) acc0.0:uw r4:d 0x1000000C 0x120A8000 // DP_DC1 wr:9h, rd:0, fc: 0x28000
+ mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
+ send (16|M0) null:uw r112:d 0x10000027 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
diff --git a/shaders/ps/README b/shaders/ps/README
index b196d025..21ff571a 100644
--- a/shaders/ps/README
+++ b/shaders/ps/README
@@ -1 +1,9 @@
These files are here for reference only.
+
+From gen8 we can use Intel Graphics Assember to generate binary from asm
+instructions https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga
+
+How to get binary from .asm?
+ $> iga64 blit_gen8.asm -p=8 -a -o blit_gen8.bin
+ $> Use converter from shaders/README to have hex array used in libs
+ $> Copy output to proper lib
diff --git a/shaders/ps/blit_gen8.asm b/shaders/ps/blit_gen8.asm
new file mode 100644
index 00000000..c35b70a1
--- /dev/null
+++ b/shaders/ps/blit_gen8.asm
@@ -0,0 +1,7 @@
+ pln (8|M0) r10.0<1>:f r6.0<0;1,0>:f r2.0<8;8,1>:f
+ pln (8|M0) r11.0<1>:f r6.0<0;1,0>:f r4.0<8;8,1>:f
+ pln (8|M0) r12.0<1>:f r6.4<0;1,0>:f r2.0<8;8,1>:f
+ pln (8|M0) 13.0<1>:f r6.4<0;1,0>:f r4.0<8;8,1>:f
+ send (16|M0) r112:f r10:ub 0x10000002 0x08840001 // SAMPLER wr:4, rd:8, fc: 0x40001
+ send (16|M0) null:f r112:ub 0x10000025 0x10031000 {EOT} // DP_RC wr:8, rd:0, Render Target Write msc:16, to #0
+
diff --git a/shaders/ps/neg1_gen8.asm b/shaders/ps/neg1_gen8.asm
new file mode 100644
index 00000000..582375b5
--- /dev/null
+++ b/shaders/ps/neg1_gen8.asm
@@ -0,0 +1,9 @@
+mov(8) r112:ud 0x3f800000:ud
+mov(8) r113:ud 0x3f800000:ud
+mov(8) r114:ud 0x3f800000:ud
+mov(8) r115:ud 0x3f800000:ud
+mov(8) r116:ud 0x3f800000:ud
+mov(8) r117:ud 0x3f800000:ud
+mov(8) r118:ud 0x3f800000:ud
+mov(8) r119:ud 0x3f800000:ud
+send(16) null r112 0x25 0x10031000 { EOT }
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING (rev2)
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
` (2 preceding siblings ...)
2018-10-02 14:55 ` [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING Patchwork
@ 2018-10-03 6:14 ` Patchwork
2018-10-03 6:53 ` [igt-dev] ✗ Fi.CI.IGT: failure for Shaders documentation RESENDING Patchwork
2018-10-03 10:14 ` [igt-dev] ✓ Fi.CI.IGT: success for Shaders documentation RESENDING (rev2) Patchwork
5 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2018-10-03 6:14 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
== Series Details ==
Series: Shaders documentation RESENDING (rev2)
URL : https://patchwork.freedesktop.org/series/50445/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_4915 -> IGTPW_1896 =
== Summary - WARNING ==
Minor unknown changes coming with IGTPW_1896 need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1896, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://patchwork.freedesktop.org/api/1.0/series/50445/revisions/2/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1896:
=== IGT changes ===
==== Warnings ====
igt@drv_selftest@live_guc:
fi-glk-j4005: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1896 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gem_exec_suspend@basic-s4-devices:
fi-bdw-samus: NOTRUN -> INCOMPLETE (fdo#107773)
==== Possible fixes ====
igt@drv_selftest@live_coherency:
fi-gdg-551: DMESG-FAIL (fdo#107164) -> PASS
igt@drv_selftest@live_execlists:
fi-glk-j4005: INCOMPLETE (k.org#198133, fdo#103359) -> PASS
igt@gem_exec_suspend@basic-s3:
fi-bdw-samus: INCOMPLETE (fdo#107773) -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence:
fi-byt-clapper: FAIL (fdo#107362, fdo#103191) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-skl-guc: FAIL (fdo#103191) -> PASS
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
fdo#107773 https://bugs.freedesktop.org/show_bug.cgi?id=107773
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (46 -> 40) ==
Missing (6): fi-byt-squawks fi-bsw-cyan fi-bwr-2160 fi-icl-u2 fi-skl-6260u fi-snb-2520m
== Build changes ==
* IGT: IGT_4660 -> IGTPW_1896
CI_DRM_4915: 26e7a7d954a9c28b97af8ca7813f430fd9117232 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1896: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1896/
IGT_4660: d0975646c50568e66e65b44b81d28232d059b94e @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1896/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for Shaders documentation RESENDING
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
` (3 preceding siblings ...)
2018-10-03 6:14 ` [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING (rev2) Patchwork
@ 2018-10-03 6:53 ` Patchwork
2018-10-03 10:14 ` [igt-dev] ✓ Fi.CI.IGT: success for Shaders documentation RESENDING (rev2) Patchwork
5 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2018-10-03 6:53 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
== Series Details ==
Series: Shaders documentation RESENDING
URL : https://patchwork.freedesktop.org/series/50445/
State : failure
== Summary ==
= CI Bug Log - changes from IGT_4660_full -> IGTPW_1891_full =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1891_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1891_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://patchwork.freedesktop.org/api/1.0/series/50445/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1891_full:
=== IGT changes ===
==== Possible regressions ====
igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
shard-glk: PASS -> FAIL +1
igt@kms_color@pipe-a-degamma:
shard-apl: PASS -> FAIL
igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
shard-apl: SKIP -> FAIL +16
igt@kms_plane_alpha_blend@pipe-b-alpha-transparant-fb:
shard-kbl: SKIP -> FAIL +16
igt@kms_plane_alpha_blend@pipe-c-alpha-transparant-fb:
shard-glk: SKIP -> FAIL +11
==== Warnings ====
igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid:
shard-kbl: SKIP -> PASS +9
igt@kms_plane_alpha_blend@pipe-b-alpha-7efc:
shard-glk: SKIP -> PASS +12
igt@kms_plane_alpha_blend@pipe-b-constant-alpha-mid:
shard-apl: SKIP -> PASS +9
== Known issues ==
Here are the changes found in IGTPW_1891_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gem_exec_await@wide-contexts:
shard-glk: PASS -> FAIL (fdo#106680)
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-b:
shard-snb: NOTRUN -> DMESG-WARN (fdo#107956) +1
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-c:
shard-kbl: NOTRUN -> DMESG-WARN (fdo#107956)
igt@kms_cursor_crc@cursor-256x256-suspend:
shard-kbl: PASS -> FAIL (fdo#103191, fdo#103232)
igt@kms_cursor_crc@cursor-256x85-onscreen:
shard-glk: PASS -> FAIL (fdo#103232) +2
igt@kms_cursor_crc@cursor-256x85-random:
shard-apl: PASS -> FAIL (fdo#103232) +5
igt@kms_cursor_crc@cursor-64x64-suspend:
shard-apl: PASS -> FAIL (fdo#103191, fdo#103232) +1
igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
shard-glk: PASS -> DMESG-WARN (fdo#105763, fdo#106538)
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
shard-apl: PASS -> FAIL (fdo#103167) +2
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
shard-glk: PASS -> FAIL (fdo#103167) +2
igt@kms_plane@pixel-format-pipe-a-planes:
shard-snb: PASS -> FAIL (fdo#107749, fdo#103166)
igt@kms_plane@plane-position-covered-pipe-a-planes:
shard-glk: PASS -> FAIL (fdo#103166) +1
shard-apl: PASS -> FAIL (fdo#103166) +2
igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
shard-snb: SKIP -> INCOMPLETE (fdo#105411)
==== Possible fixes ====
igt@gem_ctx_isolation@bcs0-s3:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@gem_exec_big:
shard-hsw: TIMEOUT (fdo#107937) -> PASS
igt@gem_exec_suspend@basic-s3:
shard-snb: INCOMPLETE (fdo#105411) -> PASS
igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt:
shard-glk: FAIL (fdo#103167) -> PASS
igt@kms_setmode@basic:
shard-apl: FAIL (fdo#99912) -> PASS
==== Warnings ====
igt@kms_setmode@basic:
shard-hsw: FAIL (fdo#99912) -> DMESG-FAIL (fdo#102614, fdo#99912)
fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
fdo#106680 https://bugs.freedesktop.org/show_bug.cgi?id=106680
fdo#107749 https://bugs.freedesktop.org/show_bug.cgi?id=107749
fdo#107937 https://bugs.freedesktop.org/show_bug.cgi?id=107937
fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
== Participating hosts (6 -> 5) ==
Missing (1): shard-skl
== Build changes ==
* IGT: IGT_4660 -> IGTPW_1891
* Linux: CI_DRM_4912 -> CI_DRM_4915
CI_DRM_4912: fde5d8f7153abb900a378cce97a7a6b32576a3fa @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_4915: 26e7a7d954a9c28b97af8ca7813f430fd9117232 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1891: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1891/
IGT_4660: d0975646c50568e66e65b44b81d28232d059b94e @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1891/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Shaders documentation RESENDING (rev2)
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
` (4 preceding siblings ...)
2018-10-03 6:53 ` [igt-dev] ✗ Fi.CI.IGT: failure for Shaders documentation RESENDING Patchwork
@ 2018-10-03 10:14 ` Patchwork
5 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2018-10-03 10:14 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
== Series Details ==
Series: Shaders documentation RESENDING (rev2)
URL : https://patchwork.freedesktop.org/series/50445/
State : success
== Summary ==
= CI Bug Log - changes from IGT_4660_full -> IGTPW_1896_full =
== Summary - WARNING ==
Minor unknown changes coming with IGTPW_1896_full need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1896_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://patchwork.freedesktop.org/api/1.0/series/50445/revisions/2/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1896_full:
=== IGT changes ===
==== Warnings ====
{igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid}:
shard-kbl: SKIP -> PASS +9
{igt@kms_plane_alpha_blend@pipe-b-alpha-7efc}:
shard-glk: SKIP -> PASS +11
{igt@kms_plane_alpha_blend@pipe-b-constant-alpha-mid}:
shard-apl: SKIP -> PASS +9
igt@pm_rc6_residency@rc6-accuracy:
shard-snb: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1896_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gem_softpin@noreloc-s3:
shard-apl: PASS -> FAIL (fdo#103375)
igt@kms_available_modes_crc@available_mode_test_crc:
shard-snb: PASS -> FAIL (fdo#106641)
igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b:
shard-snb: NOTRUN -> DMESG-WARN (fdo#107956) +2
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-c:
shard-kbl: NOTRUN -> DMESG-WARN (fdo#107956)
igt@kms_cursor_crc@cursor-128x42-onscreen:
shard-kbl: PASS -> FAIL (fdo#103232)
igt@kms_cursor_crc@cursor-256x256-random:
shard-apl: PASS -> FAIL (fdo#103232) +3
igt@kms_cursor_legacy@2x-cursor-vs-flip-atomic:
shard-hsw: PASS -> FAIL (fdo#105767)
igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions:
shard-hsw: PASS -> FAIL (fdo#103355)
igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
shard-hsw: PASS -> DMESG-WARN (fdo#102614)
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
shard-apl: PASS -> FAIL (fdo#103167) +1
shard-kbl: PASS -> FAIL (fdo#103167) +1
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
shard-glk: PASS -> FAIL (fdo#103167)
igt@kms_frontbuffer_tracking@fbc-1p-rte:
shard-kbl: PASS -> FAIL (fdo#103167, fdo#105682)
shard-apl: PASS -> FAIL (fdo#103167, fdo#105682)
igt@kms_plane@plane-position-covered-pipe-c-planes:
shard-apl: PASS -> FAIL (fdo#103166) +5
{igt@kms_plane_alpha_blend@pipe-b-alpha-7efc}:
shard-apl: SKIP -> FAIL (fdo#108146) +3
{igt@kms_plane_alpha_blend@pipe-b-alpha-basic}:
shard-apl: SKIP -> FAIL (fdo#108145) +11
{igt@kms_plane_alpha_blend@pipe-b-alpha-transparant-fb}:
shard-kbl: SKIP -> FAIL (fdo#108145) +12
{igt@kms_plane_alpha_blend@pipe-c-alpha-7efc}:
shard-kbl: SKIP -> FAIL (fdo#108146) +3
{igt@kms_plane_alpha_blend@pipe-c-alpha-transparant-fb}:
shard-glk: SKIP -> FAIL (fdo#108145) +10
{igt@kms_plane_alpha_blend@pipe-c-coverage-7efc}:
shard-glk: SKIP -> FAIL (fdo#108146)
igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
shard-snb: NOTRUN -> FAIL (fdo#103166)
igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
shard-glk: PASS -> FAIL (fdo#103166) +3
shard-kbl: PASS -> FAIL (fdo#103166) +2
igt@kms_rotation_crc@primary-rotation-180:
shard-snb: PASS -> FAIL (fdo#103925)
igt@kms_setmode@basic:
shard-kbl: PASS -> FAIL (fdo#99912)
igt@perf@blocking:
shard-hsw: PASS -> FAIL (fdo#102252)
igt@perf_pmu@semaphore-wait-idle-vcs1:
shard-snb: SKIP -> INCOMPLETE (fdo#105411)
==== Possible fixes ====
igt@drv_suspend@shrink:
shard-glk: INCOMPLETE (fdo#106886, k.org#198133, fdo#103359) -> PASS
igt@gem_exec_big:
shard-hsw: TIMEOUT (fdo#107937) -> PASS
igt@gem_exec_suspend@basic-s3:
shard-snb: INCOMPLETE (fdo#105411) -> PASS
igt@gem_ppgtt@blt-vs-render-ctxn:
shard-kbl: INCOMPLETE (fdo#106023, fdo#103665) -> PASS
igt@kms_draw_crc@draw-method-xrgb8888-blt-ytiled:
shard-glk: FAIL (fdo#107589) -> PASS
igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt:
shard-glk: FAIL (fdo#103167) -> PASS
igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@kms_setmode@basic:
shard-apl: FAIL (fdo#99912) -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
fdo#103355 https://bugs.freedesktop.org/show_bug.cgi?id=103355
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105682 https://bugs.freedesktop.org/show_bug.cgi?id=105682
fdo#105767 https://bugs.freedesktop.org/show_bug.cgi?id=105767
fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
fdo#107589 https://bugs.freedesktop.org/show_bug.cgi?id=107589
fdo#107937 https://bugs.freedesktop.org/show_bug.cgi?id=107937
fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
fdo#108146 https://bugs.freedesktop.org/show_bug.cgi?id=108146
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (6 -> 5) ==
Missing (1): shard-skl
== Build changes ==
* IGT: IGT_4660 -> IGTPW_1896
* Linux: CI_DRM_4912 -> CI_DRM_4915
CI_DRM_4912: fde5d8f7153abb900a378cce97a7a6b32576a3fa @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_4915: 26e7a7d954a9c28b97af8ca7813f430fd9117232 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1896: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1896/
IGT_4660: d0975646c50568e66e65b44b81d28232d059b94e @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1896/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory Katarzyna Dec
@ 2018-10-03 11:00 ` Petri Latvala
2018-10-03 13:52 ` Katarzyna Dec
0 siblings, 1 reply; 15+ messages in thread
From: Petri Latvala @ 2018-10-03 11:00 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
On Tue, Oct 02, 2018 at 03:49:33PM +0200, Katarzyna Dec wrote:
> In shaders/ directory we got Intel specific information. As igt
> is a project for more vendors, let's move this directory to
> lib/i915.
>
> Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
> Cc: Antonio Argenziano <antonio.argenziano@intel.com>
> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> {shaders => lib/i915/shaders}/README | 0
> {shaders => lib/i915/shaders}/converter.py | 0
> {shaders => lib/i915/shaders}/gpgpu/README | 0
> {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill.gxa | 0
> {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen8.asm | 0
> {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen9.asm | 0
> {shaders => lib/i915/shaders}/media/README | 0
> {shaders => lib/i915/shaders}/media/media_fill.gxa | 0
> {shaders => lib/i915/shaders}/media/media_fill_gen8.asm | 0
> {shaders => lib/i915/shaders}/ps/README | 0
> {shaders => lib/i915/shaders}/ps/blit.g7a | 0
> {shaders => lib/i915/shaders}/ps/blit_gen8.asm | 0
> {shaders => lib/i915/shaders}/ps/neg1_gen8.asm | 0
> {shaders => lib/i915/shaders}/ps/neg1_test.g7a | 0
> 14 files changed, 0 insertions(+), 0 deletions(-)
> rename {shaders => lib/i915/shaders}/README (100%)
> rename {shaders => lib/i915/shaders}/converter.py (100%)
> rename {shaders => lib/i915/shaders}/gpgpu/README (100%)
> rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill.gxa (100%)
> rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen8.asm (100%)
> rename {shaders => lib/i915/shaders}/gpgpu/gpgpu_fill_gen9.asm (100%)
> rename {shaders => lib/i915/shaders}/media/README (100%)
> rename {shaders => lib/i915/shaders}/media/media_fill.gxa (100%)
> rename {shaders => lib/i915/shaders}/media/media_fill_gen8.asm (100%)
> rename {shaders => lib/i915/shaders}/ps/README (100%)
> rename {shaders => lib/i915/shaders}/ps/blit.g7a (100%)
> rename {shaders => lib/i915/shaders}/ps/blit_gen8.asm (100%)
> rename {shaders => lib/i915/shaders}/ps/neg1_gen8.asm (100%)
> rename {shaders => lib/i915/shaders}/ps/neg1_test.g7a (100%)
# git grep shaders/
include/drm-uapi/vc4_drm.h: * how many pointers are necessary (fixed number for shaders/uniforms,
lib/gpgpu_fill.c:/* shaders/gpgpu/gpgpu_fill.gxa */
lib/rendercopy_gen8.c:/* see shaders/ps/blit.g7a */
lib/rendercopy_gen9.c:/* see shaders/ps/blit.g7a */
Ignoring the vc4_drm.h hit, change those other comments to refer to
the new paths.
--
Petri Latvala
>
> diff --git a/shaders/README b/lib/i915/shaders/README
> similarity index 100%
> rename from shaders/README
> rename to lib/i915/shaders/README
> diff --git a/shaders/converter.py b/lib/i915/shaders/converter.py
> similarity index 100%
> rename from shaders/converter.py
> rename to lib/i915/shaders/converter.py
> diff --git a/shaders/gpgpu/README b/lib/i915/shaders/gpgpu/README
> similarity index 100%
> rename from shaders/gpgpu/README
> rename to lib/i915/shaders/gpgpu/README
> diff --git a/shaders/gpgpu/gpgpu_fill.gxa b/lib/i915/shaders/gpgpu/gpgpu_fill.gxa
> similarity index 100%
> rename from shaders/gpgpu/gpgpu_fill.gxa
> rename to lib/i915/shaders/gpgpu/gpgpu_fill.gxa
> diff --git a/shaders/gpgpu/gpgpu_fill_gen8.asm b/lib/i915/shaders/gpgpu/gpgpu_fill_gen8.asm
> similarity index 100%
> rename from shaders/gpgpu/gpgpu_fill_gen8.asm
> rename to lib/i915/shaders/gpgpu/gpgpu_fill_gen8.asm
> diff --git a/shaders/gpgpu/gpgpu_fill_gen9.asm b/lib/i915/shaders/gpgpu/gpgpu_fill_gen9.asm
> similarity index 100%
> rename from shaders/gpgpu/gpgpu_fill_gen9.asm
> rename to lib/i915/shaders/gpgpu/gpgpu_fill_gen9.asm
> diff --git a/shaders/media/README b/lib/i915/shaders/media/README
> similarity index 100%
> rename from shaders/media/README
> rename to lib/i915/shaders/media/README
> diff --git a/shaders/media/media_fill.gxa b/lib/i915/shaders/media/media_fill.gxa
> similarity index 100%
> rename from shaders/media/media_fill.gxa
> rename to lib/i915/shaders/media/media_fill.gxa
> diff --git a/shaders/media/media_fill_gen8.asm b/lib/i915/shaders/media/media_fill_gen8.asm
> similarity index 100%
> rename from shaders/media/media_fill_gen8.asm
> rename to lib/i915/shaders/media/media_fill_gen8.asm
> diff --git a/shaders/ps/README b/lib/i915/shaders/ps/README
> similarity index 100%
> rename from shaders/ps/README
> rename to lib/i915/shaders/ps/README
> diff --git a/shaders/ps/blit.g7a b/lib/i915/shaders/ps/blit.g7a
> similarity index 100%
> rename from shaders/ps/blit.g7a
> rename to lib/i915/shaders/ps/blit.g7a
> diff --git a/shaders/ps/blit_gen8.asm b/lib/i915/shaders/ps/blit_gen8.asm
> similarity index 100%
> rename from shaders/ps/blit_gen8.asm
> rename to lib/i915/shaders/ps/blit_gen8.asm
> diff --git a/shaders/ps/neg1_gen8.asm b/lib/i915/shaders/ps/neg1_gen8.asm
> similarity index 100%
> rename from shaders/ps/neg1_gen8.asm
> rename to lib/i915/shaders/ps/neg1_gen8.asm
> diff --git a/shaders/ps/neg1_test.g7a b/lib/i915/shaders/ps/neg1_test.g7a
> similarity index 100%
> rename from shaders/ps/neg1_test.g7a
> rename to lib/i915/shaders/ps/neg1_test.g7a
> --
> 2.17.1
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-03 5:47 ` Katarzyna Dec
@ 2018-10-03 11:02 ` Petri Latvala
2018-10-03 13:51 ` Katarzyna Dec
0 siblings, 1 reply; 15+ messages in thread
From: Petri Latvala @ 2018-10-03 11:02 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
On Wed, Oct 03, 2018 at 07:47:22AM +0200, Katarzyna Dec wrote:
> We're not planning to work on assembler in igt anymore, since we can
> reuse an existing project (IGA) that will do this work for us. The
> only extra thing we need to do is convert the result binary to C-array,
> simple python script.
>
> v2: Moved converter to single file. Fixed README for shaders.
> v3: Fixed typos.
>
> Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
> Cc: Antonio Argenziano <antonio.argenziano@intel.com>
> ---
> shaders/README | 19 +++++++++++++++++++
> shaders/converter.py | 24 ++++++++++++++++++++++++
> shaders/gpgpu/README | 10 ++++++++++
> shaders/gpgpu/gpgpu_fill_gen8.asm | 10 ++++++++++
> shaders/gpgpu/gpgpu_fill_gen9.asm | 10 ++++++++++
> shaders/media/README | 8 ++++++++
> shaders/media/media_fill_gen8.asm | 11 +++++++++++
> shaders/ps/README | 8 ++++++++
> shaders/ps/blit_gen8.asm | 7 +++++++
> shaders/ps/neg1_gen8.asm | 9 +++++++++
> 10 files changed, 116 insertions(+)
> create mode 100644 shaders/README
> create mode 100644 shaders/converter.py
> create mode 100644 shaders/gpgpu/gpgpu_fill_gen8.asm
> create mode 100644 shaders/gpgpu/gpgpu_fill_gen9.asm
> create mode 100644 shaders/media/media_fill_gen8.asm
> create mode 100644 shaders/ps/blit_gen8.asm
> create mode 100644 shaders/ps/neg1_gen8.asm
>
> diff --git a/shaders/README b/shaders/README
> new file mode 100644
> index 00000000..7ac125b5
> --- /dev/null
> +++ b/shaders/README
> @@ -0,0 +1,19 @@
> +This directory is for shaders used in media_fill, gpgpu_fill, rendercopy
> +and media_spin libraries.
> +
> +Till Gen8 shaders were generated using intel-gen4asm script (implementation in
> +assembler/ directory). From Gen8 it is possible to use Intel Graphics Assembler
> +to generate binary from asm instructions.
> +https://github.com/intel/intel-graphics-compiler
> + 1. Clone IGC project
> + 2. Go to igc/visa/iga
> + 3. Build iga
> + cmake . && make
> +
> +For maintaining compatibility with our tests there is a bin to hex converter
> +written in python:
> + $>converter.py input_file > output_file
> +e.g.$>python converter.py gen9_iga_output > gen9_hex_array
> +
> +Instructions how to build media, gpgpu or ps shaders are included in their
> +subdirectories.
> diff --git a/shaders/converter.py b/shaders/converter.py
> new file mode 100644
> index 00000000..d00e6193
> --- /dev/null
> +++ b/shaders/converter.py
> @@ -0,0 +1,24 @@
> +#!/usr/bin/env python2
Python 2 in 2018? Why?
--
Petri Latvala
> +import struct
> +import sys
> +import argparse
> +
> +parser = argparse.ArgumentParser(description='Script for converting shaders in binary to hex.')
> +args = parser.parse_args()
> +
> +print "static const uint32_t kernel[][4] = {"
> +
> +with open(sys.argv[1], 'r') as f:
> + fmt = '<LLLL'
> + step = struct.calcsize(fmt)
> + while True:
> + buf = f.read(step)
> + if not buf:
> + break
> + elif len(buf) < step:
> + buf += '\x00' * (step - len(buf))
> +
> + val = struct.unpack('<LLLL', buf)
> + print "\t{{ 0x{:08x}, 0x{:08x}, 0x{:08x}, 0x{:08x} }},".format(*val)
> +
> +print "};"
> diff --git a/shaders/gpgpu/README b/shaders/gpgpu/README
> index 3bf328ad..9d254e2a 100644
> --- a/shaders/gpgpu/README
> +++ b/shaders/gpgpu/README
> @@ -1,4 +1,14 @@
> +These files are here for reference only.
>
> Commands used to generate the shader on gen7
> $> m4 gpgpu_fill.gxa > gpgpu_fill.gxm
> $> intel-gen4asm -g 7 -o <output> gpgpu_fill.gxm
> +
> +From gen8 we can use Intel Graphics Assember to generate binary from asm
> +instructions
> +https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga
> +
> +How to get binary from .asm (e.g. when ISA instructions has changed):
> + $> iga64 gpgpu_fill.asm -p=8 -a -o gpgpu_fill_gen8.bin
> + $> Use converter from shaders/README to have hex array used in libs
> + $> Copy output to proper lib
> diff --git a/shaders/gpgpu/gpgpu_fill_gen8.asm b/shaders/gpgpu/gpgpu_fill_gen8.asm
> new file mode 100644
> index 00000000..448e0256
> --- /dev/null
> +++ b/shaders/gpgpu/gpgpu_fill_gen8.asm
> @@ -0,0 +1,10 @@
> + mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
> + mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
> + mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
> + mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
> + mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
> + mov (1|M0) r4.2<1>:ud 0xF:ud
> + mov (16|M0) (eq)f0.0 r5.0<1>:ud r1.0<0;1,0>:ud
> + send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000 // DP_DC1 wr:3h, rd:0, fc: 0x28000
> + mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
> + send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
> diff --git a/shaders/gpgpu/gpgpu_fill_gen9.asm b/shaders/gpgpu/gpgpu_fill_gen9.asm
> new file mode 100644
> index 00000000..6f948935
> --- /dev/null
> +++ b/shaders/gpgpu/gpgpu_fill_gen9.asm
> @@ -0,0 +1,10 @@
> + mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
> + mul (1|M0) r2.0<1>:ud r0.1<0;1,0>:ud 0x10:ud
> + mov (1|M0) r2.1<1>:ud r0.6<0;1,0>:ud
> + mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
> + mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
> + mov (1|M0) r4.2<1>:ud 0xF:ud
> + mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
> + send (16|M0) acc0.0:uw r4:d 0xC 0x060A8000 // DP_DC1 wr:3h, rd:0, fc: 0x28000
> + mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
> + send (16|M0) null:uw r112:d 0x27 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
> diff --git a/shaders/media/README b/shaders/media/README
> index 9f296010..44c08dce 100644
> --- a/shaders/media/README
> +++ b/shaders/media/README
> @@ -3,3 +3,11 @@ These files are here for reference only.
> Commands used to generate the shader on gen8
> $> m4 media_fill.gxa > media_fill.gxm
> $> intel-gen4asm -g 8 -o <output> media_fill.gxm
> +
> +From gen8 we can use Intel Graphics Assember to generate binary from asm
> +instructions https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga
> +
> +How to get binary from .asm (e.g. when ISA instructions has changed):
> + $> iga64 media_fill_gen8.asm -p=8 -a -o media_fill_gen8.bin
> + $> Use converter from shaders/README to have hex array used in libs
> + $> Copy output to proper lib
> diff --git a/shaders/media/media_fill_gen8.asm b/shaders/media/media_fill_gen8.asm
> new file mode 100644
> index 00000000..4b6eb84b
> --- /dev/null
> +++ b/shaders/media/media_fill_gen8.asm
> @@ -0,0 +1,11 @@
> + mov (4|M0) r1.0<1>:ub r1.0<0;1,0>:ub
> + mov (8|M0) r4.0<1>:ud r0.0<8;8,1>:ud
> + mov (2|M0) r4.0<1>:ud r2.0<2;2,1>:ud
> + mov (1|M0) r4.2<1>:ud 0xF000F:ud
> + mov (16|M0) r5.0<1>:ud r1.0<0;1,0>:ud
> + mov (16|M0) r7.0<1>:ud r1.0<0;1,0>:ud
> + mov (16|M0) r9.0<1>:ud r1.0<0;1,0>:ud
> + mov (16|M0) r11.0<1>:ud r1.0<0;1,0>:ud
> + send (16|M0) acc0.0:uw r4:d 0x1000000C 0x120A8000 // DP_DC1 wr:9h, rd:0, fc: 0x28000
> + mov (8|M0) r112.0<1>:ud r0.0<8;8,1>:ud
> + send (16|M0) null:uw r112:d 0x10000027 0x02000010 {EOT} // SPAWNER wr:1, rd:0, fc: 0x10
> diff --git a/shaders/ps/README b/shaders/ps/README
> index b196d025..21ff571a 100644
> --- a/shaders/ps/README
> +++ b/shaders/ps/README
> @@ -1 +1,9 @@
> These files are here for reference only.
> +
> +From gen8 we can use Intel Graphics Assember to generate binary from asm
> +instructions https://github.com/intel/intel-graphics-compiler/tree/master/visa/iga
> +
> +How to get binary from .asm?
> + $> iga64 blit_gen8.asm -p=8 -a -o blit_gen8.bin
> + $> Use converter from shaders/README to have hex array used in libs
> + $> Copy output to proper lib
> diff --git a/shaders/ps/blit_gen8.asm b/shaders/ps/blit_gen8.asm
> new file mode 100644
> index 00000000..c35b70a1
> --- /dev/null
> +++ b/shaders/ps/blit_gen8.asm
> @@ -0,0 +1,7 @@
> + pln (8|M0) r10.0<1>:f r6.0<0;1,0>:f r2.0<8;8,1>:f
> + pln (8|M0) r11.0<1>:f r6.0<0;1,0>:f r4.0<8;8,1>:f
> + pln (8|M0) r12.0<1>:f r6.4<0;1,0>:f r2.0<8;8,1>:f
> + pln (8|M0) 13.0<1>:f r6.4<0;1,0>:f r4.0<8;8,1>:f
> + send (16|M0) r112:f r10:ub 0x10000002 0x08840001 // SAMPLER wr:4, rd:8, fc: 0x40001
> + send (16|M0) null:f r112:ub 0x10000025 0x10031000 {EOT} // DP_RC wr:8, rd:0, Render Target Write msc:16, to #0
> +
> diff --git a/shaders/ps/neg1_gen8.asm b/shaders/ps/neg1_gen8.asm
> new file mode 100644
> index 00000000..582375b5
> --- /dev/null
> +++ b/shaders/ps/neg1_gen8.asm
> @@ -0,0 +1,9 @@
> +mov(8) r112:ud 0x3f800000:ud
> +mov(8) r113:ud 0x3f800000:ud
> +mov(8) r114:ud 0x3f800000:ud
> +mov(8) r115:ud 0x3f800000:ud
> +mov(8) r116:ud 0x3f800000:ud
> +mov(8) r117:ud 0x3f800000:ud
> +mov(8) r118:ud 0x3f800000:ud
> +mov(8) r119:ud 0x3f800000:ud
> +send(16) null r112 0x25 0x10031000 { EOT }
> --
> 2.17.1
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
2018-10-02 13:57 ` Kalamarz, Lukasz
2018-10-03 5:47 ` Katarzyna Dec
@ 2018-10-03 11:05 ` Arkadiusz Hiler
2018-10-03 13:50 ` Katarzyna Dec
2 siblings, 1 reply; 15+ messages in thread
From: Arkadiusz Hiler @ 2018-10-03 11:05 UTC (permalink / raw)
To: Katarzyna Dec; +Cc: igt-dev
On Tue, Oct 02, 2018 at 03:49:32PM +0200, Katarzyna Dec wrote:
> We're not planning to work on assembler in igt anymore, since we can
> reuse an existing project (IGA) that will do this work for us. The
> only extra thing we need to do is convert the result binary to C-array,
> simple python script.
>
> v2: Moved converter to single file. Fixed README for shaders.
>
> Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Kalamarz Lukasz <lukasz.kalamarz@intel.com>
> Cc: Antonio Argenziano <antonio.argenziano@intel.com>
> ---
> shaders/README | 19 +++++++++++++++++++
> shaders/converter.py | 24 ++++++++++++++++++++++++
> shaders/gpgpu/README | 11 +++++++++++
> shaders/gpgpu/gpgpu_fill_gen8.asm | 10 ++++++++++
> shaders/gpgpu/gpgpu_fill_gen9.asm | 10 ++++++++++
> shaders/media/README | 9 +++++++++
> shaders/media/media_fill_gen8.asm | 11 +++++++++++
> shaders/ps/README | 8 ++++++++
> shaders/ps/blit_gen8.asm | 7 +++++++
> shaders/ps/neg1_gen8.asm | 9 +++++++++
> 10 files changed, 118 insertions(+)
> create mode 100644 shaders/README
> create mode 100644 shaders/converter.py
> create mode 100644 shaders/gpgpu/gpgpu_fill_gen8.asm
> create mode 100644 shaders/gpgpu/gpgpu_fill_gen9.asm
> create mode 100644 shaders/media/media_fill_gen8.asm
> create mode 100644 shaders/ps/blit_gen8.asm
> create mode 100644 shaders/ps/neg1_gen8.asm
>
> diff --git a/shaders/README b/shaders/README
> new file mode 100644
> index 00000000..3365a209
> --- /dev/null
> +++ b/shaders/README
> @@ -0,0 +1,19 @@
> +This directory is for shaders used in media_fill, gpgpu_fill, rendercopy
> +and media_spin libraries.
> +
> +Till Gen8 shaders were generated using intel-gen4asm script (implementation in
> +assembler/ directory). From Gen8 it is possible to use Intel Graphics Assembler
> +to generate binary from asm instructions.
> +https://github.com/intel/intel-graphics-compiler
> + 1. Clone IGC project
> + 2. Go to igc/visa/iga
> + 3. Build iga
> + cmake . && make
> +
> +For maintaining compatibility with our tests there is a bin to hex converter
> +written in python:
> + $>converter.py input_file > output_file
> +e.g.$>python converter.py gen9_iga_output > gen9_hex_array
> +
> +Instructions how to build media, gpgpu or ps shaders included in their
> +subdirectories.
> diff --git a/shaders/converter.py b/shaders/converter.py
> new file mode 100644
> index 00000000..a50ac96c
> --- /dev/null
> +++ b/shaders/converter.py
> @@ -0,0 +1,24 @@
> +#!/usr/bin/env python2
> +import struct
> +import sys
> +import argparse
> +
> +parser = argparse.ArgumentParser(description='Script for converting shaders in binary to hex.')
> +args = parser.parse_args()
> +
> +print "static const uint32_t kernel[][4] = {"
> +
> +with open(sys.argv[1], 'r') as f:
> + fmt = '<LLLL'
> + step = struct.calcsize(fmt)
> + while True:
> + buf = f.read(step)
> + if not buf:
> + break
> + elif len(buf) < step:
> + buf += '\x00' * (step - len(buf))
> +
> + val = struct.unpack('<LLLL', buf)
> + print "\t{{ 0x{:08x}, 0x{:08x}, 0x{:08x}, 0x{:08x} }},".format(*val)
> +
> +print "};"
> \ No newline at end of file
> diff --git a/shaders/gpgpu/README b/shaders/gpgpu/README
> index 3bf328ad..91aca7e8 100644
> --- a/shaders/gpgpu/README
> +++ b/shaders/gpgpu/README
> @@ -1,4 +1,15 @@
> +These files are here for reference only.
>
> Commands used to generate the shader on gen7
> $> m4 gpgpu_fill.gxa > gpgpu_fill.gxm
> $> intel-gen4asm -g 7 -o <output> gpgpu_fill.gxm
Is there any point in having this README almost copy-and-pasted for each
shader directory, instead of having just a common one in shaders/
direcotry?
--
Cheers,
Arek
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-03 11:05 ` Arkadiusz Hiler
@ 2018-10-03 13:50 ` Katarzyna Dec
0 siblings, 0 replies; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-03 13:50 UTC (permalink / raw)
To: Arkadiusz Hiler, igt-dev
On Wed, Oct 03, 2018 at 02:05:12PM +0300, Arkadiusz Hiler wrote:
> On Tue, Oct 02, 2018 at 03:49:32PM +0200, Katarzyna Dec wrote:
>
> Is there any point in having this README almost copy-and-pasted for each
> shader directory, instead of having just a common one in shaders/
> direcotry?
>
> --
> Cheers,
> Arek
Good point! I have consolidated README files.
Kasia :)
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders
2018-10-03 11:02 ` Petri Latvala
@ 2018-10-03 13:51 ` Katarzyna Dec
0 siblings, 0 replies; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-03 13:51 UTC (permalink / raw)
To: Petri Latvala, igt-dev
On Wed, Oct 03, 2018 at 02:02:56PM +0300, Petri Latvala wrote:
> On Wed, Oct 03, 2018 at 07:47:22AM +0200, Katarzyna Dec wrote:
> Python 2 in 2018? Why?
>
>
> --
> Petri Latvala
>
I have changed that, thanks!
Kasia :)
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory
2018-10-03 11:00 ` Petri Latvala
@ 2018-10-03 13:52 ` Katarzyna Dec
0 siblings, 0 replies; 15+ messages in thread
From: Katarzyna Dec @ 2018-10-03 13:52 UTC (permalink / raw)
To: Petri Latvala, igt-dev
On Wed, Oct 03, 2018 at 02:00:32PM +0300, Petri Latvala wrote:
> On Tue, Oct 02, 2018 at 03:49:33PM +0200, Katarzyna Dec wrote:
> # git grep shaders/
> include/drm-uapi/vc4_drm.h: * how many pointers are necessary (fixed number for shaders/uniforms,
> lib/gpgpu_fill.c:/* shaders/gpgpu/gpgpu_fill.gxa */
> lib/rendercopy_gen8.c:/* see shaders/ps/blit.g7a */
> lib/rendercopy_gen9.c:/* see shaders/ps/blit.g7a */
>
> Ignoring the vc4_drm.h hit, change those other comments to refer to
> the new paths.
>
>
> --
> Petri Latvala
>
I forgot about "see shaders/" comments in code. Thansk!
Kasia :)
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2018-10-03 13:52 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-02 13:49 [igt-dev] [PATCH i-g-t 0/2] Shaders documentation RESENDING Katarzyna Dec
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 1/2] shaders: Add assembler instructions and update README for shaders Katarzyna Dec
2018-10-02 13:57 ` Kalamarz, Lukasz
2018-10-03 5:47 ` Katarzyna Dec
2018-10-03 11:02 ` Petri Latvala
2018-10-03 13:51 ` Katarzyna Dec
2018-10-03 11:05 ` Arkadiusz Hiler
2018-10-03 13:50 ` Katarzyna Dec
2018-10-02 13:49 ` [igt-dev] [PATCH i-g-t 2/2] lib/i915: Move shaders directory Katarzyna Dec
2018-10-03 11:00 ` Petri Latvala
2018-10-03 13:52 ` Katarzyna Dec
2018-10-02 14:55 ` [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING Patchwork
2018-10-03 6:14 ` [igt-dev] ✓ Fi.CI.BAT: success for Shaders documentation RESENDING (rev2) Patchwork
2018-10-03 6:53 ` [igt-dev] ✗ Fi.CI.IGT: failure for Shaders documentation RESENDING Patchwork
2018-10-03 10:14 ` [igt-dev] ✓ Fi.CI.IGT: success for Shaders documentation RESENDING (rev2) Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.