diff --git a/src/log_severity.h b/src/log_severity.h
index 5ecfe8d..126019b 100644
--- a/src/log_severity.h
+++ b/src/log_severity.h
@@ -20,5 +20,6 @@
 typedef int LogSeverity;
 
 const int VERBOSE = 0, DEBUG = 1, INFO = 2, WARNING = 3, ERROR = 4, FATAL = 5;
+const int INTERNAL_FATAL = 6; // For Runtime::Abort.
 
 #endif  // BASE_LOG_SEVERITY_H_
diff --git a/src/logging_android.cc b/src/logging_android.cc
index 2c34d8a..fa574d4 100644
--- a/src/logging_android.cc
+++ b/src/logging_android.cc
@@ -24,8 +24,8 @@
 namespace art {
 
 static const int kLogSeverityToAndroidLogPriority[] = {
-  ANDROID_LOG_VERBOSE, ANDROID_LOG_DEBUG, ANDROID_LOG_INFO,
-  ANDROID_LOG_WARN, ANDROID_LOG_ERROR, ANDROID_LOG_FATAL
+  ANDROID_LOG_VERBOSE, ANDROID_LOG_DEBUG, ANDROID_LOG_INFO, ANDROID_LOG_WARN,
+  ANDROID_LOG_ERROR, ANDROID_LOG_FATAL, ANDROID_LOG_FATAL
 };
 
 LogMessage::LogMessage(const char* file, int line, LogSeverity severity, int error)
diff --git a/src/logging_linux.cc b/src/logging_linux.cc
index 2c1d699..f3a6cf3 100644
--- a/src/logging_linux.cc
+++ b/src/logging_linux.cc
@@ -34,7 +34,7 @@
 }
 
 void LogMessage::LogLine(const char* line) {
-  std::cerr << "VDIWEF"[data_->severity] << ' '
+  std::cerr << "VDIWEFF"[data_->severity] << ' '
             << StringPrintf("%5d %5d", getpid(), ::art::GetTid()) << ' '
             << data_->file << ':' << data_->line_number << "] " << line << std::endl;
 }
diff --git a/src/runtime.cc b/src/runtime.cc
index 579e591..3f6bcca 100644
--- a/src/runtime.cc
+++ b/src/runtime.cc
@@ -138,7 +138,7 @@
   // Many people have difficulty distinguish aborts from crashes,
   // so be explicit.
   AbortState state;
-  LOG(ERROR) << Dumpable<AbortState>(state);
+  LOG(INTERNAL_FATAL) << Dumpable<AbortState>(state);
 
   // Perform any platform-specific pre-abort actions.
   PlatformAbort(file, line);
diff --git a/src/runtime_linux.cc b/src/runtime_linux.cc
index 8fd81cc..d7b32ee 100644
--- a/src/runtime_linux.cc
+++ b/src/runtime_linux.cc
@@ -80,7 +80,7 @@
       text.erase(index, 1);
     }
     std::string log_line(StringPrintf("\t#%02zd ", i) + function_name + text);
-    LogMessage(filename.c_str(), -1, ERROR, -1).stream() << log_line;
+    LogMessage(filename.c_str(), -1, INTERNAL_FATAL, -1).stream() << log_line;
   }
 
   free(symbols);
