   BenchmarkInfo(name: "DataReset",
     runFunction: { resetBytes($0, in: 431..<809, data: medium) }, tags: d),
 
-  BenchmarkInfo(name: "DataReplaceSmall",
-    runFunction: run_ReplaceSmall, tags: d),
-  BenchmarkInfo(name: "DataReplaceMedium",
-    runFunction: run_ReplaceMedium, tags: d),
-  BenchmarkInfo(name: "DataReplaceLarge",
-    runFunction: run_ReplaceLarge, tags: d),
+  BenchmarkInfo(name: "DataReplaceSmall", runFunction: {
+    replace($0, data: medium, subrange:431..<809, with: small) }, tags: d),
+  BenchmarkInfo(name: "DataReplaceMedium", runFunction: {
+    replace($0, data: medium, subrange:431..<809, with: medium) }, tags: d),
+  BenchmarkInfo(name: "DataReplaceLarge", runFunction: {
+    replace($0, data: medium, subrange:431..<809, with: large) }, tags: d),
 
   BenchmarkInfo(name: "DataReplaceSmallBuffer",
     runFunction: run_ReplaceSmallBuffer, tags: d),

  }
}

func benchmark_Replace(_ N: Int, _ range: Range<Data.Index>, _ data_: Data, _ replacement: Data) {
  for _ in 0..<10000*N {
    var data = data_
    data.replaceSubrange(range, with: replacement)
  }
}


    copy.count = count
    copy.count = orig
  }
}

@inline(never)
