<div dir="ltr">Acked-by: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Nov 29, 2018 at 5:54 PM Matt Turner <<a href="mailto:mattst88@gmail.com">mattst88@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This extension is not properly tested (testing for<br>
GL_ARB_fragment_shader_interlock is not sufficient), and since this was<br>
noted in review on August 28th no tests have been sent.<br>
<br>
Revert "i965: Add INTEL_fragment_shader_ordering support."<br>
Revert "mesa: Add GL/GLSL plumbing for INTEL_fragment_shader_ordering"<br>
<br>
This reverts commit 03ecec9ed2099f6e2b62994b33dc948dc731e7b8.<br>
This reverts commit 119435c8778dd26cb7c8bcde9f04b3982239fe60.<br>
<br>
Cc: <a href="mailto:mesa-stable@lists.freedesktop.org" target="_blank">mesa-stable@lists.freedesktop.org</a><br>
---<br>
Emil: I just noticed that this was never reverted from master (and it<br>
needs to be removed before the 18.3 release)<br>
<br>
 docs/relnotes/18.3.0.html                    |  1 -<br>
 src/compiler/glsl/builtin_functions.cpp      | 17 -----------------<br>
 src/compiler/glsl/glsl_parser_extras.cpp     |  1 -<br>
 src/compiler/glsl/glsl_parser_extras.h       |  2 --<br>
 src/compiler/glsl/glsl_to_nir.cpp            |  6 ------<br>
 src/compiler/glsl/ir.h                       |  1 -<br>
 src/compiler/nir/nir_intrinsics.py           |  1 -<br>
 src/intel/compiler/brw_fs_nir.cpp            |  1 -<br>
 src/mesa/drivers/dri/i965/intel_extensions.c |  1 -<br>
 src/mesa/main/extensions_table.h             |  1 -<br>
 src/mesa/main/mtypes.h                       |  1 -<br>
 11 files changed, 33 deletions(-)<br>
<br>
diff --git a/docs/relnotes/18.3.0.html b/docs/relnotes/18.3.0.html<br>
index 8af225a61e1..aa924391919 100644<br>
--- a/docs/relnotes/18.3.0.html<br>
+++ b/docs/relnotes/18.3.0.html<br>
@@ -61,7 +61,6 @@ Note: some of the new features are only available with certain drivers.<br>
 <li>GL_EXT_vertex_attrib_64bit on i965, nvc0, radeonsi.</li><br>
 <li>GL_EXT_window_rectangles on radeonsi.</li><br>
 <li>GL_KHR_texture_compression_astc_sliced_3d on radeonsi.</li><br>
-<li>GL_INTEL_fragment_shader_ordering on i965.</li><br>
 <li>GL_NV_fragment_shader_interlock on i965.</li><br>
 <li>EGL_EXT_device_base for all drivers.</li><br>
 <li>EGL_EXT_device_drm for all drivers.</li><br>
diff --git a/src/compiler/glsl/builtin_functions.cpp b/src/compiler/glsl/builtin_functions.cpp<br>
index 5650365d1d5..b6018806865 100644<br>
--- a/src/compiler/glsl/builtin_functions.cpp<br>
+++ b/src/compiler/glsl/builtin_functions.cpp<br>
@@ -525,12 +525,6 @@ supports_nv_fragment_shader_interlock(const _mesa_glsl_parse_state *state)<br>
    return state->NV_fragment_shader_interlock_enable;<br>
 }<br>
<br>
-static bool<br>
-supports_intel_fragment_shader_ordering(const _mesa_glsl_parse_state *state)<br>
-{<br>
-   return state->INTEL_fragment_shader_ordering_enable;<br>
-}<br>
-<br>
 static bool<br>
 shader_clock(const _mesa_glsl_parse_state *state)<br>
 {<br>
@@ -1311,11 +1305,6 @@ builtin_builder::create_intrinsics()<br>
                    supports_arb_fragment_shader_interlock,<br>
                    ir_intrinsic_end_invocation_interlock), NULL);<br>
<br>
-   add_function("__intrinsic_begin_fragment_shader_ordering",<br>
-                _invocation_interlock_intrinsic(<br>
-                   supports_intel_fragment_shader_ordering,<br>
-                   ir_intrinsic_begin_fragment_shader_ordering), NULL);<br>
-<br>
    add_function("__intrinsic_shader_clock",<br>
                 _shader_clock_intrinsic(shader_clock,<br>
                                         glsl_type::uvec2_type),<br>
@@ -3430,12 +3419,6 @@ builtin_builder::create_builtins()<br>
                    supports_nv_fragment_shader_interlock),<br>
                 NULL);<br>
<br>
-   add_function("beginFragmentShaderOrderingINTEL",<br>
-                _invocation_interlock(<br>
-                   "__intrinsic_begin_fragment_shader_ordering",<br>
-                   supports_intel_fragment_shader_ordering),<br>
-                NULL);<br>
-<br>
    add_function("anyInvocationARB",<br>
                 _vote("__intrinsic_vote_any", vote),<br>
                 NULL);<br>
diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp<br>
index 21ed34d79d0..f9178d8c107 100644<br>
--- a/src/compiler/glsl/glsl_parser_extras.cpp<br>
+++ b/src/compiler/glsl/glsl_parser_extras.cpp<br>
@@ -730,7 +730,6 @@ static const _mesa_glsl_extension _mesa_glsl_supported_extensions[] = {<br>
    EXT_AEP(EXT_texture_buffer),<br>
    EXT_AEP(EXT_texture_cube_map_array),<br>
    EXT(INTEL_conservative_rasterization),<br>
-   EXT(INTEL_fragment_shader_ordering),<br>
    EXT(INTEL_shader_atomic_float_minmax),<br>
    EXT(MESA_shader_integer_functions),<br>
    EXT(NV_fragment_shader_interlock),<br>
diff --git a/src/compiler/glsl/glsl_parser_extras.h b/src/compiler/glsl/glsl_parser_extras.h<br>
index da8b2fa3ab5..7ceee7469d8 100644<br>
--- a/src/compiler/glsl/glsl_parser_extras.h<br>
+++ b/src/compiler/glsl/glsl_parser_extras.h<br>
@@ -834,8 +834,6 @@ struct _mesa_glsl_parse_state {<br>
    bool EXT_texture_cube_map_array_warn;<br>
    bool INTEL_conservative_rasterization_enable;<br>
    bool INTEL_conservative_rasterization_warn;<br>
-   bool INTEL_fragment_shader_ordering_enable;<br>
-   bool INTEL_fragment_shader_ordering_warn;<br>
    bool INTEL_shader_atomic_float_minmax_enable;<br>
    bool INTEL_shader_atomic_float_minmax_warn;<br>
    bool MESA_shader_integer_functions_enable;<br>
diff --git a/src/compiler/glsl/glsl_to_nir.cpp b/src/compiler/glsl/glsl_to_nir.cpp<br>
index 55628dd2ccd..5e70d230550 100644<br>
--- a/src/compiler/glsl/glsl_to_nir.cpp<br>
+++ b/src/compiler/glsl/glsl_to_nir.cpp<br>
@@ -747,9 +747,6 @@ nir_visitor::visit(ir_call *ir)<br>
       case ir_intrinsic_end_invocation_interlock:<br>
          op = nir_intrinsic_end_invocation_interlock;<br>
          break;<br>
-      case ir_intrinsic_begin_fragment_shader_ordering:<br>
-         op = nir_intrinsic_begin_fragment_shader_ordering;<br>
-         break;<br>
       case ir_intrinsic_group_memory_barrier:<br>
          op = nir_intrinsic_group_memory_barrier;<br>
          break;<br>
@@ -988,9 +985,6 @@ nir_visitor::visit(ir_call *ir)<br>
       case nir_intrinsic_end_invocation_interlock:<br>
          nir_builder_instr_insert(&b, &instr->instr);<br>
          break;<br>
-      case nir_intrinsic_begin_fragment_shader_ordering:<br>
-         nir_builder_instr_insert(&b, &instr->instr);<br>
-         break;<br>
       case nir_intrinsic_store_ssbo: {<br>
          exec_node *param = ir->actual_parameters.get_head();<br>
          ir_rvalue *block = ((ir_instruction *)param)->as_rvalue();<br>
diff --git a/src/compiler/glsl/ir.h b/src/compiler/glsl/ir.h<br>
index f478b29a6b5..d05d1998a50 100644<br>
--- a/src/compiler/glsl/ir.h<br>
+++ b/src/compiler/glsl/ir.h<br>
@@ -1122,7 +1122,6 @@ enum ir_intrinsic_id {<br>
    ir_intrinsic_memory_barrier_shared,<br>
    ir_intrinsic_begin_invocation_interlock,<br>
    ir_intrinsic_end_invocation_interlock,<br>
-   ir_intrinsic_begin_fragment_shader_ordering,<br>
<br>
    ir_intrinsic_vote_all,<br>
    ir_intrinsic_vote_any,<br>
diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py<br>
index 735db43d16a..6ea6ad1198f 100644<br>
--- a/src/compiler/nir/nir_intrinsics.py<br>
+++ b/src/compiler/nir/nir_intrinsics.py<br>
@@ -202,7 +202,6 @@ barrier("memory_barrier_image")<br>
 barrier("memory_barrier_shared")<br>
 barrier("begin_invocation_interlock")<br>
 barrier("end_invocation_interlock")<br>
-barrier("begin_fragment_shader_ordering")<br>
<br>
 # A conditional discard, with a single boolean source.<br>
 intrinsic("discard_if", src_comp=[1])<br>
diff --git a/src/intel/compiler/brw_fs_nir.cpp b/src/intel/compiler/brw_fs_nir.cpp<br>
index 6eb68794f58..1ebb4c3fbe3 100644<br>
--- a/src/intel/compiler/brw_fs_nir.cpp<br>
+++ b/src/intel/compiler/brw_fs_nir.cpp<br>
@@ -4567,7 +4567,6 @@ fs_visitor::nir_emit_intrinsic(const fs_builder &bld, nir_intrinsic_instr *instr<br>
       break;<br>
    }<br>
<br>
-   case nir_intrinsic_begin_fragment_shader_ordering:<br>
    case nir_intrinsic_begin_invocation_interlock: {<br>
       const fs_builder ubld = bld.group(8, 0);<br>
       const fs_reg tmp = ubld.vgrf(BRW_REGISTER_TYPE_UD, 2);<br>
diff --git a/src/mesa/drivers/dri/i965/intel_extensions.c b/src/mesa/drivers/dri/i965/intel_extensions.c<br>
index 6ec6248a701..c1e92e586e3 100644<br>
--- a/src/mesa/drivers/dri/i965/intel_extensions.c<br>
+++ b/src/mesa/drivers/dri/i965/intel_extensions.c<br>
@@ -248,7 +248,6 @@ intelInitExtensions(struct gl_context *ctx)<br>
       ctx->Extensions.OES_primitive_bounding_box = true;<br>
       ctx->Extensions.OES_texture_buffer = true;<br>
       ctx->Extensions.ARB_fragment_shader_interlock = true;<br>
-      ctx->Extensions.INTEL_fragment_shader_ordering = true;<br>
<br>
       if (can_do_pipelined_register_writes(brw->screen)) {<br>
          ctx->Extensions.ARB_draw_indirect = true;<br>
diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h<br>
index dd846d7bc5c..5c03bb0d9dc 100644<br>
--- a/src/mesa/main/extensions_table.h<br>
+++ b/src/mesa/main/extensions_table.h<br>
@@ -319,7 +319,6 @@ EXT(IBM_texture_mirrored_repeat             , dummy_true<br>
 EXT(INGR_blend_func_separate                , EXT_blend_func_separate                , GLL,  x ,  x ,  x , 1999)<br>
<br>
 EXT(INTEL_conservative_rasterization        , INTEL_conservative_rasterization       ,  x , GLC,  x ,  31, 2013)<br>
-EXT(INTEL_fragment_shader_ordering          , INTEL_fragment_shader_ordering         , GLL, GLC,  x ,  x , 2013)<br>
 EXT(INTEL_performance_query                 , INTEL_performance_query                , GLL, GLC,  x , ES2, 2013)<br>
 EXT(INTEL_shader_atomic_float_minmax        , INTEL_shader_atomic_float_minmax       , GLL, GLC,  x ,  x , 2018)<br>
<br>
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h<br>
index 157d45bc0ba..411d30602f2 100644<br>
--- a/src/mesa/main/mtypes.h<br>
+++ b/src/mesa/main/mtypes.h<br>
@@ -4307,7 +4307,6 @@ struct gl_extensions<br>
    GLboolean ATI_fragment_shader;<br>
    GLboolean GREMEDY_string_marker;<br>
    GLboolean INTEL_conservative_rasterization;<br>
-   GLboolean INTEL_fragment_shader_ordering;<br>
    GLboolean INTEL_performance_query;<br>
    GLboolean INTEL_shader_atomic_float_minmax;<br>
    GLboolean KHR_blend_equation_advanced;<br>
-- <br>
2.18.1<br>
<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</blockquote></div>