r600/sfn: Add IR instruction to fetch the TESS parameters
authorGert Wollny <gert.wollny@collabora.com>
Sun, 12 Apr 2020 14:59:47 +0000 (16:59 +0200)
committerMarge Bot <eric+marge@anholt.net>
Tue, 28 Apr 2020 08:06:33 +0000 (08:06 +0000)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4714>

src/gallium/drivers/r600/sfn/sfn_instruction_fetch.cpp
src/gallium/drivers/r600/sfn/sfn_instruction_fetch.h

index 09fd80776c6ace51b1f4134fb1d0a5cf149867dd..62aec922a7b692a8f4b89aecd0c678faa4167671 100644 (file)
@@ -327,6 +327,32 @@ FetchGDSOpResult::FetchGDSOpResult(const GPRVector dst, const PValue src):
    set_flag(vtx_vpm);
 }
 
+FetchTCSIOParam::FetchTCSIOParam(GPRVector dst, PValue src, int offset):
+   FetchInstruction(vc_fetch,
+                    no_index_offset,
+                    fmt_32_32_32_32,
+                    vtx_nf_scaled,
+                    vtx_es_none,
+                    src,
+                    dst,
+                    offset,
+                    false,
+                    16,
+                    R600_LDS_INFO_CONST_BUFFER,
+                    0,
+                    bim_none,
+                    false,
+                    false,
+                    0,
+                    0,
+                    0,
+                    PValue(),
+                    {0,1,2,3})
+{
+   set_flag(vtx_srf_mode);
+   set_flag(vtx_format_comp_signed);
+}
+
 
 static const char *fmt_descr[64] = {
    "INVALID",
index d1cc42f6135eac7437150513beabcbcf5a086551..e8c44317e5c7ac1202d4a3705319a43371a9c527 100644 (file)
@@ -174,6 +174,11 @@ public:
    FetchGDSOpResult(const GPRVector dst, const PValue src);
 };
 
+class FetchTCSIOParam : public FetchInstruction {
+public:
+   FetchTCSIOParam(GPRVector dst, PValue src, int offset);
+};
+
 }
 
 #endif // SFN_INSTRUCTION_FETCH_H