diff --git a/libc/bionic/strtof.cpp b/libc/bionic/strtof.cpp
deleted file mode 100644
index a41e4d4..0000000
--- a/libc/bionic/strtof.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <stdlib.h>
-
-float strtof(const char* s, char** end_ptr) {
-  // TODO: upgrade to a non-hack implementation.
-  return strtod(s, end_ptr);
-}
diff --git a/libc/bionic/strtold.cpp b/libc/bionic/strtold.cpp
index 079f393..08b2758 100644
--- a/libc/bionic/strtold.cpp
+++ b/libc/bionic/strtold.cpp
@@ -28,7 +28,16 @@
 
 #include <stdlib.h>
 
+extern "C" int __strtorQ(const char*, char**, int, void*);
+
 long double strtold(const char* s, char** end_ptr) {
-  // TODO: this is fine for LP32 where double == long double, but is broken on LP64.
+#if __LP64__
+  long double result;
+  // TODO: use the current rounding mode?
+  __strtorQ(s, end_ptr, 1 /* FPI_Round_near */, &result);
+  return result;
+#else
+  // This is fine for LP32 where long double is just double.
   return strtod(s, end_ptr);
+#endif
 }
