Quick compiler - various bug fixes
Continuing clean-up of the MIR->LLVMIR->LIR path. With this CL,
all of run-test 003 passes except for tests which need switch
support (unimplemented) and one of the Throw tests (I'm apparently not
fully describing all of the exception-related edges in the CFG).
Change-Id: I2075357bc7c5419c873bb62d44c34fdb73424e29
diff --git a/src/compiler/Frontend.cc b/src/compiler/Frontend.cc
index d617be5..b714065 100644
--- a/src/compiler/Frontend.cc
+++ b/src/compiler/Frontend.cc
@@ -759,16 +759,10 @@
#if defined(ART_USE_QUICK_COMPILER)
// TODO: remove - temp for Quick compiler bring-up
if ((PrettyMethod(method_idx, dex_file).find("fibonacci") != std::string::npos)
- || (PrettyMethod(method_idx, dex_file).find("Array") != std::string::npos)
- || (PrettyMethod(method_idx, dex_file).find("Monitor") != std::string::npos)
- || (PrettyMethod(method_idx, dex_file).find("InternedString") != std::string::npos)
- || (PrettyMethod(method_idx, dex_file).find("StaticField") != std::string::npos)
- || (PrettyMethod(method_idx, dex_file).find("UnresClass") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("HelloWorld") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("count10_006") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("exceptions_007") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("catchAndRethrow") != std::string::npos)
- || (PrettyMethod(method_idx, dex_file).find("throwNullPointerException") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("math_012") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("math_013") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("math_014") != std::string::npos)
@@ -781,6 +775,24 @@
|| (PrettyMethod(method_idx, dex_file).find("shiftTest2") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("unsignedShiftTest") != std::string::npos)
|| (PrettyMethod(method_idx, dex_file).find("convTest") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("Array") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("Classes") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("Compare") != std::string::npos)
+ || (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("InstField") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("MethodCall") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("Monitor") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("StaticField") != std::string::npos)
+ // || (PrettyMethod(method_idx, dex_file).find("Switch") != std::string::npos)
+ // || (PrettyMethod(method_idx, dex_file).find("Throw.rethrow") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("UnresClass") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("UsresClassSubclass") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("UsresStuff") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("UsresTest1") != std::string::npos)
+ || (PrettyMethod(method_idx, dex_file).find("UsresTest2") != std::string::npos)
) {
cUnit->genBitcode = true;
}