[Mesa-dev] [PATCH] nvc0: update GM107 sched control codes format

Samuel Pitoiset samuel.pitoiset at gmail.com
Tue Sep 27 20:08:11 UTC 2016


envyas now uses a much better representation for those control
codes and it displays the different flags instead of an
unreadable hex number.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
 src/gallium/drivers/nouveau/codegen/lib/gm107.asm | 42 +++++++++++------------
 src/gallium/drivers/nouveau/nvc0/nvc0_surface.c   |  4 +--
 2 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/src/gallium/drivers/nouveau/codegen/lib/gm107.asm b/src/gallium/drivers/nouveau/codegen/lib/gm107.asm
index 758cc81..67b98da 100644
--- a/src/gallium/drivers/nouveau/codegen/lib/gm107.asm
+++ b/src/gallium/drivers/nouveau/codegen/lib/gm107.asm
@@ -11,39 +11,39 @@
 // SIZE:    22 / 14 * 8 bytes
 //
 gm107_div_u32:
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    flo u32 $r2 $r1
    lop xor 1 $r2 $r2 0x1f
    mov $r3 0x1 0xf
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    shl $r2 $r3 $r2
    i2i u32 u32 $r1 neg $r1
    imul u32 u32 $r3 $r1 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imad u32 u32 hi $r2 $r2 $r3 $r2
    imul u32 u32 $r3 $r1 $r2
    imad u32 u32 hi $r2 $r2 $r3 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imul u32 u32 $r3 $r1 $r2
    imad u32 u32 hi $r2 $r2 $r3 $r2
    imul u32 u32 $r3 $r1 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imad u32 u32 hi $r2 $r2 $r3 $r2
    imul u32 u32 $r3 $r1 $r2
    imad u32 u32 hi $r2 $r2 $r3 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    mov $r3 $r0 0xf
    imul u32 u32 hi $r0 $r0 $r2
    i2i u32 u32 $r2 neg $r1
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imad u32 u32 $r1 $r1 $r0 $r3
    isetp ge u32 and $p0 1 $r1 $r2 1
    $p0 iadd $r1 $r1 neg $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    $p0 iadd $r0 $r0 0x1
    $p0 isetp ge u32 and $p0 1 $r1 $r2 1
    $p0 iadd $r1 $r1 neg $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    $p0 iadd $r0 $r0 0x1
    ret
    nop 0
@@ -55,47 +55,47 @@ gm107_div_u32:
 // CLOBBER: $r2 - $r3, $p0 - $p3
 //
 gm107_div_s32:
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    isetp lt and $p2 0x1 $r0 0 1
    isetp lt xor $p3 1 $r1 0 $p2
    i2i s32 s32 $r0 abs $r0
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    i2i s32 s32 $r1 abs $r1
    flo u32 $r2 $r1
    lop xor 1 $r2 $r2 0x1f
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    mov $r3 0x1 0xf
    shl $r2 $r3 $r2
    i2i u32 u32 $r1 neg $r1
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imul u32 u32 $r3 $r1 $r2
    imad u32 u32 hi $r2 $r2 $r3 $r2
    imul u32 u32 $r3 $r1 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imad u32 u32 hi $r2 $r2 $r3 $r2
    imul u32 u32 $r3 $r1 $r2
    imad u32 u32 hi $r2 $r2 $r3 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imul u32 u32 $r3 $r1 $r2
    imad u32 u32 hi $r2 $r2 $r3 $r2
    imul u32 u32 $r3 $r1 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    imad u32 u32 hi $r2 $r2 $r3 $r2
    mov $r3 $r0 0xf
    imul u32 u32 hi $r0 $r0 $r2
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    i2i u32 u32 $r2 neg $r1
    imad u32 u32 $r1 $r1 $r0 $r3
    isetp ge u32 and $p0 1 $r1 $r2 1
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    $p0 iadd $r1 $r1 neg $r2
    $p0 iadd $r0 $r0 0x1
    $p0 isetp ge u32 and $p0 1 $r1 $r2 1
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    $p0 iadd $r1 $r1 neg $r2
    $p0 iadd $r0 $r0 0x1
    $p3 i2i s32 s32 $r0 neg $r0
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    $p2 i2i s32 s32 $r1 neg $r1
    ret
    nop 0
@@ -103,7 +103,7 @@ gm107_div_s32:
 // STUB
 gm107_rcp_f64:
 gm107_rsq_f64:
-   sched 0x7e0 0x7e0 0x7e0
+   sched (st 0x0) (st 0x0) (st 0x0)
    ret
    nop 0
    nop 0
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
index e353242..0d14058 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
@@ -836,11 +836,11 @@ nvc0_blitter_make_vp(struct nvc0_blitter *blit)
    };
    static const uint32_t code_gm107[] =
    {
-      0xfc0007e0, 0x001f8000, /* sched 0x7e0 0x7e0 0x7e0 */
+      0xfc0007e0, 0x001f8000, /* sched (st 0x0) (st 0x0) (st 0x0) */
       0x0807ff04, 0xefd8ff80, /* ld b64 $r4 a[0x80] 0x0 */
       0x0907ff00, 0xefd97f80, /* ld b96 $r0 a[0x90] 0x0 */
       0x0707ff04, 0xeff0ff80, /* st b64 a[0x70] $r4 0x0 */
-      0xfc0007e0, 0x00000000, /* sched 0x7e0 0x7e0 0x0 */
+      0xfc0007e0, 0x00000000, /* sched (st 0x0) (st 0x0) (st 0x0) */
       0x0807ff00, 0xeff17f80, /* st b96 a[0x80] $r0 0x0 */
       0x0007000f, 0xe3000000, /* exit */
    };
-- 
2.10.0



More information about the mesa-dev mailing list