[hal][cts] Add some non-offset-0 buffer fill tests (#12376)

Existing 4-byte pattern tests are all checking 0 offsets.
diff --git a/runtime/src/iree/hal/cts/command_buffer_test.h b/runtime/src/iree/hal/cts/command_buffer_test.h
index b822dec..cac8faa 100644
--- a/runtime/src/iree/hal/cts/command_buffer_test.h
+++ b/runtime/src/iree/hal/cts/command_buffer_test.h
@@ -413,6 +413,19 @@
   EXPECT_THAT(actual_buffer, ContainerEq(reference_buffer));
 }
 
+TEST_P(command_buffer_test, FillBuffer_pattern4_size4_offset16_length4) {
+  iree_device_size_t buffer_size = 20;
+  iree_device_size_t target_offset = 16;
+  iree_device_size_t fill_length = 4;
+  uint32_t pattern = 0xAB23CD45;
+  std::vector<uint8_t> reference_buffer(buffer_size, 0);
+  *reinterpret_cast<uint32_t*>(&reference_buffer[target_offset]) = pattern;
+  std::vector<uint8_t> actual_buffer =
+      RunFillBufferTest(buffer_size, target_offset, fill_length,
+                        (void*)&pattern, sizeof(pattern));
+  EXPECT_THAT(actual_buffer, ContainerEq(reference_buffer));
+}
+
 TEST_P(command_buffer_test, FillBuffer_pattern4_size16_offset0_length8) {
   iree_device_size_t buffer_size = 16;
   iree_device_size_t target_offset = 0;
@@ -428,6 +441,21 @@
   EXPECT_THAT(actual_buffer, ContainerEq(reference_buffer));
 }
 
+TEST_P(command_buffer_test, FillBuffer_pattern4_size16_offset8_length8) {
+  iree_device_size_t buffer_size = 16;
+  iree_device_size_t target_offset = 8;
+  iree_device_size_t fill_length = 8;
+  uint32_t pattern = 0xAB23CD45;
+  std::vector<uint8_t> reference_buffer{0x00, 0x00, 0x00, 0x00,  //
+                                        0x00, 0x00, 0x00, 0x00,  //
+                                        0x45, 0xCD, 0x23, 0xAB,  //
+                                        0x45, 0xCD, 0x23, 0xAB};
+  std::vector<uint8_t> actual_buffer =
+      RunFillBufferTest(buffer_size, target_offset, fill_length,
+                        (void*)&pattern, sizeof(pattern));
+  EXPECT_THAT(actual_buffer, ContainerEq(reference_buffer));
+}
+
 TEST_P(command_buffer_test, UpdateBufferWholeBuffer) {
   iree_device_size_t target_buffer_size = 16;
   std::vector<uint8_t> source_buffer{0x01, 0x02, 0x03, 0x04,  //