| OLD | NEW |
| 1 //===- subzero/src/llvm2ice.cpp - Driver for testing ----------------------===// | 1 //===- subzero/src/llvm2ice.cpp - Driver for testing ----------------------===// |
| 2 // | 2 // |
| 3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
| 4 // | 4 // |
| 5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
| 6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
| 7 // | 7 // |
| 8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
| 9 // | 9 // |
| 10 // This file defines a driver that uses LLVM capabilities to parse a | 10 // This file defines a driver that uses LLVM capabilities to parse a |
| (...skipping 29 matching lines...) Expand all Loading... |
| 40 clEnumValN(Ice::IceV_Preds, "pred", "Show predecessors"), | 40 clEnumValN(Ice::IceV_Preds, "pred", "Show predecessors"), |
| 41 clEnumValN(Ice::IceV_Succs, "succ", "Show successors"), | 41 clEnumValN(Ice::IceV_Succs, "succ", "Show successors"), |
| 42 clEnumValN(Ice::IceV_Liveness, "live", "Liveness information"), | 42 clEnumValN(Ice::IceV_Liveness, "live", "Liveness information"), |
| 43 clEnumValN(Ice::IceV_RegManager, "rmgr", "Register manager status"), | 43 clEnumValN(Ice::IceV_RegManager, "rmgr", "Register manager status"), |
| 44 clEnumValN(Ice::IceV_RegOrigins, "orig", "Physical register origins"), | 44 clEnumValN(Ice::IceV_RegOrigins, "orig", "Physical register origins"), |
| 45 clEnumValN(Ice::IceV_LinearScan, "regalloc", "Linear scan details"), | 45 clEnumValN(Ice::IceV_LinearScan, "regalloc", "Linear scan details"), |
| 46 clEnumValN(Ice::IceV_Frame, "frame", "Stack frame layout details"), | 46 clEnumValN(Ice::IceV_Frame, "frame", "Stack frame layout details"), |
| 47 clEnumValN(Ice::IceV_Timing, "time", "Pass timing details"), | 47 clEnumValN(Ice::IceV_Timing, "time", "Pass timing details"), |
| 48 clEnumValN(Ice::IceV_AddrOpt, "addropt", "Address mode optimization"), | 48 clEnumValN(Ice::IceV_AddrOpt, "addropt", "Address mode optimization"), |
| 49 clEnumValN(Ice::IceV_All, "all", "Use all verbose options"), | 49 clEnumValN(Ice::IceV_All, "all", "Use all verbose options"), |
| 50 clEnumValN(Ice::IceV_Most, "most", |
| 51 "Use all verbose options except 'regalloc' and 'time'"), |
| 50 clEnumValN(Ice::IceV_None, "none", "No verbosity"), clEnumValEnd)); | 52 clEnumValN(Ice::IceV_None, "none", "No verbosity"), clEnumValEnd)); |
| 51 static cl::opt<Ice::TargetArch> TargetArch( | 53 static cl::opt<Ice::TargetArch> TargetArch( |
| 52 "target", cl::desc("Target architecture:"), cl::init(Ice::Target_X8632), | 54 "target", cl::desc("Target architecture:"), cl::init(Ice::Target_X8632), |
| 53 cl::values( | 55 cl::values( |
| 54 clEnumValN(Ice::Target_X8632, "x8632", "x86-32"), | 56 clEnumValN(Ice::Target_X8632, "x8632", "x86-32"), |
| 55 clEnumValN(Ice::Target_X8632, "x86-32", "x86-32 (same as x8632)"), | 57 clEnumValN(Ice::Target_X8632, "x86-32", "x86-32 (same as x8632)"), |
| 56 clEnumValN(Ice::Target_X8632, "x86_32", "x86-32 (same as x8632)"), | 58 clEnumValN(Ice::Target_X8632, "x86_32", "x86-32 (same as x8632)"), |
| 57 clEnumValN(Ice::Target_X8664, "x8664", "x86-64"), | 59 clEnumValN(Ice::Target_X8664, "x8664", "x86-64"), |
| 58 clEnumValN(Ice::Target_X8664, "x86-64", "x86-64 (same as x8664)"), | 60 clEnumValN(Ice::Target_X8664, "x86-64", "x86-64 (same as x8664)"), |
| 59 clEnumValN(Ice::Target_X8664, "x86_64", "x86-64 (same as x8664)"), | 61 clEnumValN(Ice::Target_X8664, "x86_64", "x86-64 (same as x8664)"), |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 127 | 129 |
| 128 static cl::opt<bool> | 130 static cl::opt<bool> |
| 129 BuildOnRead("build-on-read", | 131 BuildOnRead("build-on-read", |
| 130 cl::desc("Build ICE instructions when reading bitcode"), | 132 cl::desc("Build ICE instructions when reading bitcode"), |
| 131 cl::init(false)); | 133 cl::init(false)); |
| 132 | 134 |
| 133 static cl::opt<bool> | 135 static cl::opt<bool> |
| 134 UseIntegratedAssembler("integrated-as", | 136 UseIntegratedAssembler("integrated-as", |
| 135 cl::desc("Use integrated assembler (default yes)"), | 137 cl::desc("Use integrated assembler (default yes)"), |
| 136 cl::init(true)); | 138 cl::init(true)); |
| 139 static cl::alias UseIas("ias", cl::desc("Alias for -integrated-as"), |
| 140 cl::NotHidden, cl::aliasopt(UseIntegratedAssembler)); |
| 137 | 141 |
| 138 int main(int argc, char **argv) { | 142 int main(int argc, char **argv) { |
| 139 | 143 |
| 140 cl::ParseCommandLineOptions(argc, argv); | 144 cl::ParseCommandLineOptions(argc, argv); |
| 141 | 145 |
| 142 Ice::VerboseMask VMask = Ice::IceV_None; | 146 Ice::VerboseMask VMask = Ice::IceV_None; |
| 143 for (unsigned i = 0; i != VerboseList.size(); ++i) | 147 for (unsigned i = 0; i != VerboseList.size(); ++i) |
| 144 VMask |= VerboseList[i]; | 148 VMask |= VerboseList[i]; |
| 145 | 149 |
| 146 std::ofstream Ofs; | 150 std::ofstream Ofs; |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 195 } | 199 } |
| 196 | 200 |
| 197 Ice::Converter Converter(Mod, &Ctx, Flags); | 201 Ice::Converter Converter(Mod, &Ctx, Flags); |
| 198 Converter.convertToIce(); | 202 Converter.convertToIce(); |
| 199 ErrorStatus = Converter.getErrorStatus(); | 203 ErrorStatus = Converter.getErrorStatus(); |
| 200 } | 204 } |
| 201 const bool FinalStats = true; | 205 const bool FinalStats = true; |
| 202 Ctx.dumpStats("_FINAL_", FinalStats); | 206 Ctx.dumpStats("_FINAL_", FinalStats); |
| 203 return ErrorStatus; | 207 return ErrorStatus; |
| 204 } | 208 } |
| OLD | NEW |