Add ReferenceCountedPtr class.
diff --git a/tools/doxygen/Doxyfile.c++.internal b/tools/doxygen/Doxyfile.c++.internal
index 1d84dcb..078dd7b 100644
--- a/tools/doxygen/Doxyfile.c++.internal
+++ b/tools/doxygen/Doxyfile.c++.internal
@@ -1038,6 +1038,7 @@
 src/core/lib/support/mpscq.h \
 src/core/lib/support/murmur_hash.h \
 src/core/lib/support/reference_counted.h \
+src/core/lib/support/reference_counted_ptr.h \
 src/core/lib/support/spinlock.h \
 src/core/lib/support/stack_lockfree.h \
 src/core/lib/support/string.h \
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index 5b289e7..37ffff6 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -1301,6 +1301,7 @@
 src/core/lib/support/murmur_hash.h \
 src/core/lib/support/reference_counted.cc \
 src/core/lib/support/reference_counted.h \
+src/core/lib/support/reference_counted_ptr.h \
 src/core/lib/support/spinlock.h \
 src/core/lib/support/stack_lockfree.cc \
 src/core/lib/support/stack_lockfree.h \
diff --git a/tools/run_tests/generated/sources_and_headers.json b/tools/run_tests/generated/sources_and_headers.json
index 8ec9619..ed5128d 100644
--- a/tools/run_tests/generated/sources_and_headers.json
+++ b/tools/run_tests/generated/sources_and_headers.json
@@ -3929,6 +3929,25 @@
     "headers": [], 
     "is_filegroup": false, 
     "language": "c++", 
+    "name": "reference_counted_ptr_test", 
+    "src": [
+      "test/core/support/reference_counted_ptr_test.cc"
+    ], 
+    "third_party": false, 
+    "type": "target"
+  }, 
+  {
+    "deps": [
+      "gpr", 
+      "gpr_test_util", 
+      "grpc", 
+      "grpc++", 
+      "grpc++_test", 
+      "grpc_test_util"
+    ], 
+    "headers": [], 
+    "is_filegroup": false, 
+    "language": "c++", 
     "name": "reference_counted_test", 
     "src": [
       "test/core/support/reference_counted_test.cc"
@@ -7861,6 +7880,7 @@
       "src/core/lib/support/mpscq.h", 
       "src/core/lib/support/murmur_hash.h", 
       "src/core/lib/support/reference_counted.h", 
+      "src/core/lib/support/reference_counted_ptr.h", 
       "src/core/lib/support/spinlock.h", 
       "src/core/lib/support/stack_lockfree.h", 
       "src/core/lib/support/string.h", 
@@ -7912,6 +7932,7 @@
       "src/core/lib/support/mpscq.h", 
       "src/core/lib/support/murmur_hash.h", 
       "src/core/lib/support/reference_counted.h", 
+      "src/core/lib/support/reference_counted_ptr.h", 
       "src/core/lib/support/spinlock.h", 
       "src/core/lib/support/stack_lockfree.h", 
       "src/core/lib/support/string.h", 
diff --git a/tools/run_tests/generated/tests.json b/tools/run_tests/generated/tests.json
index a6b58d8..ba70d56 100644
--- a/tools/run_tests/generated/tests.json
+++ b/tools/run_tests/generated/tests.json
@@ -4138,6 +4138,30 @@
     "flaky": false, 
     "gtest": true, 
     "language": "c++", 
+    "name": "reference_counted_ptr_test", 
+    "platforms": [
+      "linux", 
+      "mac", 
+      "posix", 
+      "windows"
+    ], 
+    "uses_polling": true
+  }, 
+  {
+    "args": [], 
+    "benchmark": false, 
+    "ci_platforms": [
+      "linux", 
+      "mac", 
+      "posix", 
+      "windows"
+    ], 
+    "cpu_cost": 1.0, 
+    "exclude_configs": [], 
+    "exclude_iomgrs": [], 
+    "flaky": false, 
+    "gtest": true, 
+    "language": "c++", 
     "name": "reference_counted_test", 
     "platforms": [
       "linux",