ART: Refactor intrinsics slow-paths

Refactor slow paths so that there is a default implementation for
common cases (only arm64 with vixl is special). Write a generic
intrinsic slow-path that can be reused for the specific architectures.
Move helper functions into CodeGenerator so that they are accessible.

Change-Id: Ibd788dce432601c6a9f7e6f13eab31f28dcb8550
diff --git a/compiler/utils/mips/assembler_mips.h b/compiler/utils/mips/assembler_mips.h
index 6c8b162..378a59c 100644
--- a/compiler/utils/mips/assembler_mips.h
+++ b/compiler/utils/mips/assembler_mips.h
@@ -150,6 +150,13 @@
   void EmitJump(Label* label, bool link);
   void Bind(Label* label, bool is_jump);
 
+  void Bind(Label* label) OVERRIDE {
+    Bind(label, false);
+  }
+  void Jump(Label* label) OVERRIDE {
+    EmitJump(label, false);
+  }
+
   //
   // Overridden common assembler high-level functionality
   //