diff --git a/runtime/dexopt_test.cc b/runtime/dexopt_test.cc
index d93d767..037d1fb 100644
--- a/runtime/dexopt_test.cc
+++ b/runtime/dexopt_test.cc
@@ -213,8 +213,8 @@
   // Ensure a chunk of memory is reserved for the image space.
   // The reservation_end includes room for the main space that has to come
   // right after the image in case of the GSS collector.
-  uintptr_t reservation_start = ART_BASE_ADDRESS;
-  uintptr_t reservation_end = ART_BASE_ADDRESS + 384 * MB;
+  uint64_t reservation_start = ART_BASE_ADDRESS;
+  uint64_t reservation_end = ART_BASE_ADDRESS + 384 * MB;
 
   std::unique_ptr<BacktraceMap> map(BacktraceMap::Create(getpid(), true));
   ASSERT_TRUE(map.get() != nullptr) << "Failed to build process map";
diff --git a/runtime/native_stack_dump.cc b/runtime/native_stack_dump.cc
index fa46709..2fef70b 100644
--- a/runtime/native_stack_dump.cc
+++ b/runtime/native_stack_dump.cc
@@ -333,15 +333,15 @@
     os << prefix << StringPrintf("#%02zu pc ", it->num);
     bool try_addr2line = false;
     if (!BacktraceMap::IsValid(it->map)) {
-      os << StringPrintf(Is64BitInstructionSet(kRuntimeISA) ? "%016" PRIxPTR "  ???"
-                                                            : "%08" PRIxPTR "  ???",
+      os << StringPrintf(Is64BitInstructionSet(kRuntimeISA) ? "%016" PRIx64 "  ???"
+                                                            : "%08" PRIx64 "  ???",
                          it->pc);
     } else {
-      os << StringPrintf(Is64BitInstructionSet(kRuntimeISA) ? "%016" PRIxPTR "  "
-                                                            : "%08" PRIxPTR "  ",
+      os << StringPrintf(Is64BitInstructionSet(kRuntimeISA) ? "%016" PRIx64 "  "
+                                                            : "%08" PRIx64 "  ",
                          it->rel_pc);
       if (it->map.name.empty()) {
-        os << StringPrintf("<anonymous:%" PRIxPTR ">", it->map.start);
+        os << StringPrintf("<anonymous:%" PRIx64 ">", it->map.start);
       } else {
         os << it->map.name;
       }
@@ -361,7 +361,7 @@
           PcIsWithinQuickCode(current_method, it->pc)) {
         const void* start_of_code = current_method->GetEntryPointFromQuickCompiledCode();
         os << current_method->JniLongName() << "+"
-           << (it->pc - reinterpret_cast<uintptr_t>(start_of_code));
+           << (it->pc - reinterpret_cast<uint64_t>(start_of_code));
       } else {
         os << "???";
       }
