diff --git a/src/__support/CMakeLists.txt b/src/__support/CMakeLists.txt
index 32f538e..23ac214 100644
--- a/src/__support/CMakeLists.txt
+++ b/src/__support/CMakeLists.txt
@@ -4,3 +4,10 @@
     common.h
     sanitizer_annotations.h
 )
+
+add_header_library(
+  integer_operations
+  HDRS
+    integer_operations.h
+)
+
diff --git a/src/stdlib/abs_utils.h b/src/__support/integer_operations.h
similarity index 80%
rename from src/stdlib/abs_utils.h
rename to src/__support/integer_operations.h
index c0943fe..733fb7e 100644
--- a/src/stdlib/abs_utils.h
+++ b/src/__support/integer_operations.h
@@ -9,9 +9,12 @@
 #ifndef LLVM_LIBC_SRC_STDLIB_ABS_UTILS_H
 #define LLVM_LIBC_SRC_STDLIB_ABS_UTILS_H
 
+#include "utils/CPP/TypeTraits.h"
+
 namespace __llvm_libc {
 
-template <typename T> static inline T integer_abs(T n) {
+template <typename T>
+static inline cpp::EnableIfType<cpp::IsIntegral<T>::Value, T> integerAbs(T n) {
   if (n < 0)
     return -n;
   return n;
diff --git a/src/stdlib/CMakeLists.txt b/src/stdlib/CMakeLists.txt
index a599d8a..60a380d 100644
--- a/src/stdlib/CMakeLists.txt
+++ b/src/stdlib/CMakeLists.txt
@@ -2,12 +2,6 @@
   add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS})
 endif()
 
-add_header_library(
-  abs_utils
-  HDRS
-    abs_utils.h
-)
-
 add_entrypoint_object(
   _Exit
   ALIAS
@@ -34,7 +28,7 @@
   HDRS
     abs.h
   DEPENDS
-    .abs_utils
+    libc.src.__support.integer_operations
 )
 
 add_entrypoint_object(
@@ -44,7 +38,7 @@
   HDRS
     labs.h
   DEPENDS
-    .abs_utils
+    libc.src.__support.integer_operations
 )
 
 add_entrypoint_object(
@@ -54,5 +48,5 @@
   HDRS
     llabs.h
   DEPENDS
-    .abs_utils
+    libc.src.__support.integer_operations
 )
diff --git a/src/stdlib/abs.cpp b/src/stdlib/abs.cpp
index eba2b7d..d6111aa 100644
--- a/src/stdlib/abs.cpp
+++ b/src/stdlib/abs.cpp
@@ -8,13 +8,10 @@
 
 #include "src/stdlib/abs.h"
 #include "src/__support/common.h"
-#include "src/stdlib/abs_utils.h"
+#include "src/__support/integer_operations.h"
 
 namespace __llvm_libc {
 
-LLVM_LIBC_FUNCTION(int, abs, (int n)) {
-  // integer_abs from abs_utils.h.
-  return integer_abs(n);
-}
+LLVM_LIBC_FUNCTION(int, abs, (int n)) { return integerAbs(n); }
 
 } // namespace __llvm_libc
diff --git a/src/stdlib/labs.cpp b/src/stdlib/labs.cpp
index d2aa816..8dffc1e 100644
--- a/src/stdlib/labs.cpp
+++ b/src/stdlib/labs.cpp
@@ -8,13 +8,10 @@
 
 #include "src/stdlib/labs.h"
 #include "src/__support/common.h"
-#include "src/stdlib/abs_utils.h"
+#include "src/__support/integer_operations.h"
 
 namespace __llvm_libc {
 
-LLVM_LIBC_FUNCTION(long, labs, (long n)) {
-  // integer_abs from abs_utils.h.
-  return integer_abs(n);
-}
+LLVM_LIBC_FUNCTION(long, labs, (long n)) { return integerAbs(n); }
 
 } // namespace __llvm_libc
diff --git a/src/stdlib/llabs.cpp b/src/stdlib/llabs.cpp
index 7a83fcb..d74c7f4 100644
--- a/src/stdlib/llabs.cpp
+++ b/src/stdlib/llabs.cpp
@@ -8,13 +8,10 @@
 
 #include "src/stdlib/llabs.h"
 #include "src/__support/common.h"
-#include "src/stdlib/abs_utils.h"
+#include "src/__support/integer_operations.h"
 
 namespace __llvm_libc {
 
-LLVM_LIBC_FUNCTION(long long, llabs, (long long n)) {
-  // integer_abs from abs_utils.h.
-  return integer_abs(n);
-}
+LLVM_LIBC_FUNCTION(long long, llabs, (long long n)) { return integerAbs(n); }
 
 } // namespace __llvm_libc
diff --git a/src/string/CMakeLists.txt b/src/string/CMakeLists.txt
index 9dd8b6b..c31525a 100644
--- a/src/string/CMakeLists.txt
+++ b/src/string/CMakeLists.txt
@@ -73,7 +73,7 @@
   HDRS
     memmove.h
   DEPENDS
-    libc.src.stdlib.abs_utils
+    libc.src.__support.integer_operations
     libc.src.string.memcpy
 )
 
diff --git a/src/string/memmove.cpp b/src/string/memmove.cpp
index 0d4d3d1..ebbe464 100644
--- a/src/string/memmove.cpp
+++ b/src/string/memmove.cpp
@@ -7,8 +7,9 @@
 //===----------------------------------------------------------------------===//
 
 #include "src/string/memmove.h"
+
 #include "src/__support/common.h"
-#include "src/stdlib/abs_utils.h"
+#include "src/__support/integer_operations.h"
 #include "src/string/memcpy.h"
 #include <stddef.h> // size_t, ptrdiff_t
 
@@ -32,14 +33,14 @@
   const char *src_c = reinterpret_cast<const char *>(src);
 
   // If the distance between src_c and dest_c is equal to or greater
-  // than count (integer_abs(src_c - dest_c) >= count), they would not overlap.
+  // than count (integerAbs(src_c - dest_c) >= count), they would not overlap.
   // e.g.   greater     equal       overlapping
   //        [12345678]  [12345678]  [12345678]
   // src_c: [_ab_____]  [_ab_____]  [_ab_____]
   // dest_c:[_____yz_]  [___yz___]  [__yz____]
 
   // Use memcpy if src_c and dest_c do not overlap.
-  if (__llvm_libc::integer_abs(src_c - dest_c) >= static_cast<ptrdiff_t>(count))
+  if (__llvm_libc::integerAbs(src_c - dest_c) >= static_cast<ptrdiff_t>(count))
     return __llvm_libc::memcpy(dest_c, src_c, count);
 
   // Overlap cases.
