/// Set the CPU string. Replaces previous setting. Setting to "" clears CPU.
void setCPU(const std::string &String);
- /// Get the CPU string.
- const std::string &getCPU() const { return Features[0]; }
-
/// Setting CPU string only if no string is set.
void setCPUIfNone(const std::string &String);
class TargetSubtarget {
TargetSubtarget(const TargetSubtarget&); // DO NOT IMPLEMENT
void operator=(const TargetSubtarget&); // DO NOT IMPLEMENT
- std::string CPU; // CPU name.
protected: // Can only create subclasses...
TargetSubtarget();
public:
virtual ~TargetSubtarget();
- void setCPU(const std::string &C) { CPU = C; }
- const std::string &getCPU() const { return CPU; }
};
} // End llvm namespace
bool DarwinAsmPrinter::doInitialization(Module &M) {
+#if 1
+ if (Subtarget.isGigaProcessor())
+ O << "\t.machine ppc970\n";
+#else
const std::string &CPU = Subtarget.getCPU();
if (CPU != "generic")
O << "\t.machine ppc7400\n";
else
O << "\t.machine ppc\n";
+#endif
AsmPrinter::doInitialization(M);
" const std::string &CPU) {\n"
" SubtargetFeatures Features(FS);\n"
" Features.setCPUIfNone(CPU);\n"
- " setCPU(Features.getCPU());\n"
" uint32_t Bits = Features.getBits(SubTypeKV, SubTypeKVSize,\n"
" FeatureKV, FeatureKVSize);\n";