spirv-reader: make valid SPIR-V for derivative tests

Bug: tint:765
Change-Id: I81a905e73d7435d85cffab4ff804934015de065b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/50441
Reviewed-by: Alan Baker <alanbaker@google.com>
Commit-Queue: David Neto <dneto@google.com>
diff --git a/src/reader/spirv/function_arithmetic_test.cc b/src/reader/spirv/function_arithmetic_test.cc
index 8ef3e1d..e3a0f25 100644
--- a/src/reader/spirv/function_arithmetic_test.cc
+++ b/src/reader/spirv/function_arithmetic_test.cc
@@ -28,7 +28,8 @@
   return R"(
   OpCapability Shader
   OpMemoryModel Logical Simple
-  OpEntryPoint Vertex %100 "main"
+  OpEntryPoint Fragment %100 "main"
+  OpExecutionMode %100 OriginUpperLeft
 
   %void = OpTypeVoid
   %voidfn = OpTypeFunction %void
@@ -1539,7 +1540,9 @@
   auto& intrinsic = std::get<0>(GetParam());
   auto& arg = std::get<1>(GetParam());
 
-  const auto assembly = Preamble() + R"(
+  const auto assembly = R"(
+     OpCapability DerivativeControl
+)" + Preamble() + R"(
      %100 = OpFunction %void None %voidfn
      %entry = OpLabel
      %1 = OpCopyObject %)" +