Quick compiler - packed switch support
Add support for PACKED_SWITCH. Uses the stock llvm switch operator
plus additional metadata for the Quick path that the portable path
may freely ignore.
Change-Id: I3f7cbf9d441d4cc53bf188beeb94d4178fef3e07
diff --git a/src/compiler/Frontend.cc b/src/compiler/Frontend.cc
index b714065..9fa6911 100644
--- a/src/compiler/Frontend.cc
+++ b/src/compiler/Frontend.cc
@@ -246,6 +246,12 @@
return bb;
}
+/* Find existing block */
+BasicBlock* oatFindBlock(CompilationUnit* cUnit, unsigned int codeOffset)
+{
+ return findBlock(cUnit, codeOffset, false, false, NULL);
+}
+
/* Turn method name into a legal Linux file name */
void oatReplaceSpecialChars(std::string& str)
{
@@ -781,7 +787,7 @@
|| (PrettyMethod(method_idx, dex_file).find("FloatMath") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("Goto") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("InternedString") != std::string::npos)
- // || (PrettyMethod(method_idx, dex_file).find("IntMath") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("IntMath") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("InstField") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("MethodCall") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("Monitor") != std::string::npos)