diff --git a/src/compiler_llvm/compiler_runtime_func_list.h b/src/compiler_llvm/compiler_runtime_func_list.h
index d9bdc8e..2eb3de9 100644
--- a/src/compiler_llvm/compiler_runtime_func_list.h
+++ b/src/compiler_llvm/compiler_runtime_func_list.h
@@ -14,11 +14,12 @@
  * limitations under the License.
  */
 
-// NOTE: COMPILER_RUNTIME_FUNC_LIST should be sorted!
+#ifndef ART_SRC_COMPILER_LLVM_COMPILER_RUNTIME_FUNC_LIST_H_
+#define ART_SRC_COMPILER_LLVM_COMPILER_RUNTIME_FUNC_LIST_H_
 
-#if defined(__i386__) || defined(__mips__)
+// NOTE: COMPILER_RUNTIME_FUNC_LIST_* should be sorted!
 
-#define COMPILER_RUNTIME_FUNC_LIST(V) \
+#define COMPILER_RUNTIME_FUNC_LIST_X86(V) \
   V(__ashldi3) \
   V(__ashrdi3) \
   V(__divdi3) \
@@ -97,9 +98,69 @@
   V(truncf) \
   V(truncl)
 
-#elif defined(__arm__)
+#define COMPILER_RUNTIME_FUNC_LIST_MIPS(V) \
+  V(__ashldi3) \
+  V(__ashrdi3) \
+  V(__divdi3) \
+  V(__fixdfdi) \
+  V(__fixsfdi) \
+  V(__fixunsdfdi) \
+  V(__fixunsdfsi) \
+  V(__fixunssfdi) \
+  V(__fixunssfsi) \
+  V(__floatdidf) \
+  V(__floatdisf) \
+  V(__floatundidf) \
+  V(__floatundisf) \
+  V(__lshrdi3) \
+  V(__moddi3) \
+  V(__muldi3) \
+  V(__negdi2) \
+  V(__powidf2) \
+  V(__powisf2) \
+  V(__udivdi3) \
+  V(__umoddi3) \
+  V(ceil) \
+  V(ceilf) \
+  V(ceill) \
+  V(copysign) \
+  V(copysignf) \
+  V(copysignl) \
+  V(cos) \
+  V(cosf) \
+  V(exp) \
+  V(exp2) \
+  V(exp2f) \
+  V(expf) \
+  V(floor) \
+  V(floorf) \
+  V(floorl) \
+  V(fma) \
+  V(fmaf) \
+  V(fmod) \
+  V(fmodf) \
+  V(log) \
+  V(log10) \
+  V(log10f) \
+  V(logf) \
+  V(memcpy) \
+  V(memmove) \
+  V(memset) \
+  V(nearbyint) \
+  V(nearbyintf) \
+  V(pow) \
+  V(powf) \
+  V(rint) \
+  V(rintf) \
+  V(sin) \
+  V(sinf) \
+  V(sqrt) \
+  V(sqrtf) \
+  V(trunc) \
+  V(truncf) \
+  V(truncl)
 
-#define COMPILER_RUNTIME_FUNC_LIST(V) \
+#define COMPILER_RUNTIME_FUNC_LIST_ARM(V) \
   V(__aeabi_d2f) \
   V(__aeabi_d2iz) \
   V(__aeabi_d2lz) \
@@ -167,8 +228,15 @@
   V(memmove) \
   V(memset)
 
+
+#if defined(__arm__)
+#define COMPILER_RUNTIME_FUNC_LIST_NATIVE(V) COMPILER_RUNTIME_FUNC_LIST_ARM(V)
+#elif defined(__mips__)
+#define COMPILER_RUNTIME_FUNC_LIST_NATIVE(V) COMPILER_RUNTIME_FUNC_LIST_MIPS(V)
+#elif defined(__i386__)
+#define COMPILER_RUNTIME_FUNC_LIST_NATIVE(V) COMPILER_RUNTIME_FUNC_LIST_X86(V)
 #else
-
 #error "Unknown target platform"
-
 #endif
+
+#endif // ART_SRC_COMPILER_LLVM_COMPILER_RUNTIME_FUNC_LIST_H_
diff --git a/src/compiler_llvm/runtime_support_llvm.cc b/src/compiler_llvm/runtime_support_llvm.cc
index dcd4d96..bf74e06 100644
--- a/src/compiler_llvm/runtime_support_llvm.cc
+++ b/src/compiler_llvm/runtime_support_llvm.cc
@@ -15,6 +15,7 @@
  */
 
 #include "class_linker.h"
+#include "compiler_runtime_func_list.h"
 #include "dex_file.h"
 #include "dex_instruction.h"
 #include "nth_caller_visitor.h"
@@ -22,6 +23,7 @@
 #include "object_utils.h"
 #include "reflection.h"
 #include "runtime_support.h"
+#include "runtime_support_func_list.h"
 #include "runtime_support_llvm.h"
 #include "ScopedLocalRef.h"
 #include "shadow_frame.h"
@@ -587,27 +589,20 @@
 
 #define EXTERNAL_LINKAGE(NAME) \
 extern "C" void NAME(...);
-
-#include "compiler_runtime_func_list.h"
-COMPILER_RUNTIME_FUNC_LIST(EXTERNAL_LINKAGE)
-#undef COMPILER_RUNTIME_FUNC_LIST
+COMPILER_RUNTIME_FUNC_LIST_NATIVE(EXTERNAL_LINKAGE)
 #undef EXTERNAL_LINKAGE
 
 static void* art_find_compiler_runtime_func(char const* name) {
 // TODO: If target support some math func, use the target's version. (e.g. art_d2i -> __aeabi_d2iz)
   static const char* const names[] = {
 #define DEFINE_ENTRY(NAME) #NAME ,
-#include "compiler_runtime_func_list.h"
-    COMPILER_RUNTIME_FUNC_LIST(DEFINE_ENTRY)
-#undef COMPILER_RUNTIME_FUNC_LIST
+    COMPILER_RUNTIME_FUNC_LIST_NATIVE(DEFINE_ENTRY)
 #undef DEFINE_ENTRY
   };
 
   static void* const funcs[] = {
 #define DEFINE_ENTRY(NAME) reinterpret_cast<void*>(NAME) ,
-#include "compiler_runtime_func_list.h"
-    COMPILER_RUNTIME_FUNC_LIST(DEFINE_ENTRY)
-#undef COMPILER_RUNTIME_FUNC_LIST
+    COMPILER_RUNTIME_FUNC_LIST_NATIVE(DEFINE_ENTRY)
 #undef DEFINE_ENTRY
   };
 
@@ -797,10 +792,7 @@
   static struct func_entry_t const tab[] = {
 #define DEFINE_ENTRY(ID, NAME) \
     { #NAME, sizeof(#NAME) - 1, reinterpret_cast<void*>(NAME) },
-
-#include "runtime_support_func_list.h"
     RUNTIME_SUPPORT_FUNC_LIST(DEFINE_ENTRY)
-#undef RUNTIME_SUPPORT_FUNC_LIST
 #undef DEFINE_ENTRY
   };
 
