[libc] Add rep;movsb as an accelerator under x86

GitOrigin-RevId: 1c7160300db124468ef4a26ec55ad3d6e6527a69
diff --git a/src/string/memory_utils/elements_x86.h b/src/string/memory_utils/elements_x86.h
index 2873fff..9521e06 100644
--- a/src/string/memory_utils/elements_x86.h
+++ b/src/string/memory_utils/elements_x86.h
@@ -160,6 +160,12 @@
 using _128 = __llvm_libc::Repeated<_8, 16>;
 #endif
 
+struct Accelerator {
+  static void Copy(char *dst, const char *src, size_t count) {
+    asm volatile("rep movsb" : "+D"(dst), "+S"(src), "+c"(count) : : "memory");
+  }
+};
+
 } // namespace x86
 } // namespace __llvm_libc