--- a/compiler-rt/test/sanitizer_common/ios_commands/iossim_run.py
+++ b/compiler-rt/test/sanitizer_common/ios_commands/iossim_run.py
@@ -1,7 +1,10 @@
 #!/usr/bin/env python3
 
-import glob, os, pipes, sys, subprocess
-
+import glob, os, sys, subprocess
+try:
+    from pipes import quote
+except ImportError:
+    from shlex import quote
 
 device_id = os.environ.get("SANITIZER_IOSSIM_TEST_DEVICE_IDENTIFIER")
 iossim_run_verbose = os.environ.get("SANITIZER_IOSSIM_RUN_VERBOSE")
@@ -49,8 +52,7 @@ if prog == "rm":
             # Don't quote glob pattern
             rm_args.append(arg)
         else:
-            # FIXME(dliew): pipes.quote() is deprecated
-            rm_args.append(pipes.quote(arg))
+            rm_args.append(quote(arg))
     rm_cmd_line = ["/bin/rm"] + rm_args
     rm_cmd_line_str = " ".join(rm_cmd_line)
     # We use `shell=True` so that any wildcard globs get expanded by the shell.
