Move 64-bit multiplication to helper

We're right on the edge for supporting inline 64-bit arithmetic
with our current temp register pool allocation.  Moving 64-bit multiplication
out of line to sidestep the problem, and added some temp frees to
3-operand long ops.  In the latter case there was a potential problem
if the result long was located in a part of the frame not in the range
of a single base+displacement store.

Change-Id: I6f8e0a11b440ed35e08f2e3457de6cbea89cfccc
diff --git a/src/compiler/Frontend.cc b/src/compiler/Frontend.cc
index 272cb08..0fb6636 100644
--- a/src/compiler/Frontend.cc
+++ b/src/compiler/Frontend.cc
@@ -697,15 +697,19 @@
  */
 bool oatCompileMethod(Method* method, art::InstructionSet insnSet)
 {
-    if (!method->IsStatic() ||
-        (method->GetName()->ToModifiedUtf8().find("foo") != std::string::npos) ||
-        (method->GetName()->ToModifiedUtf8().find("init>") != std::string::npos) ||
-        (method->GetName()->ToModifiedUtf8().find("longOperTest") != std::string::npos) ||
+    bool compiling = true;
+    if (!method->IsStatic()) {
+        compiling = false;
+    } else if ( (method->GetName()->ToModifiedUtf8().find("foo") != std::string::npos) ||
         (method->GetName()->ToModifiedUtf8().find("main") != std::string::npos)) {
+        compiling = false;
+    }
+
+    if (compiling) {
+        LOG(INFO) << "Compiling " << PrettyMethod(method, true);
+    } else {
         LOG(INFO) << "not compiling " << PrettyMethod(method, true);
         return false;
-    } else {
-        LOG(INFO) << "Compiling " << PrettyMethod(method, true);
     }
 
     CompilationUnit cUnit;