}
bool PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
- unsigned AsmVariant) {
+ unsigned AsmVariant, const char *ExtraCode) {
printOperand(MI, OpNo);
return false;
}
: DwarfWriter(o, ap)
{
needsSet = true;
- DwarfAbbrevSection = ".section __DWARFA,__debug_abbrev";
- DwarfInfoSection = ".section __DWARFA,__debug_info";
- DwarfLineSection = ".section __DWARFA,__debug_line";
+ DwarfAbbrevSection = ".section __DWARF,__debug_abbrev";
+ DwarfInfoSection = ".section __DWARF,__debug_info";
+ DwarfLineSection = ".section __DWARF,__debug_line";
DwarfFrameSection =
- ".section __DWARFA,__debug_frame,,coalesced,no_toc+strip_static_syms";
- DwarfPubNamesSection = ".section __DWARFA,__debug_pubnames";
- DwarfPubTypesSection = ".section __DWARFA,__debug_pubtypes";
- DwarfStrSection = ".section __DWARFA,__debug_str";
- DwarfLocSection = ".section __DWARFA,__debug_loc";
- DwarfARangesSection = ".section __DWARFA,__debug_aranges";
- DwarfRangesSection = ".section __DWARFA,__debug_ranges";
- DwarfMacInfoSection = ".section __DWARFA,__debug_macinfo";
+ ".section __DWARF,__debug_frame,,coalesced,no_toc+strip_static_syms";
+ DwarfPubNamesSection = ".section __DWARF,__debug_pubnames";
+ DwarfPubTypesSection = ".section __DWARF,__debug_pubtypes";
+ DwarfStrSection = ".section __DWARF,__debug_str";
+ DwarfLocSection = ".section __DWARF,__debug_loc";
+ DwarfARangesSection = ".section __DWARF,__debug_aranges";
+ DwarfRangesSection = ".section __DWARF,__debug_ranges";
+ DwarfMacInfoSection = ".section __DWARF,__debug_macinfo";
TextSection = ".text";
DataSection = ".data";
}
DarwinDwarfWriter DW;
DarwinAsmPrinter(std::ostream &O, TargetMachine &TM)
- : PPCAsmPrinter(O, TM), DW(O, this)
- {
+ : PPCAsmPrinter(O, TM), DW(O, this) {
CommentString = ";";
GlobalPrefix = "_";
PrivateGlobalPrefix = "L"; // Marker for constant pool idxs
LCOMMDirective = "\t.lcomm\t";
StaticCtorsSection = ".mod_init_func";
StaticDtorsSection = ".mod_term_func";
+ InlineAsmStart = InlineAsmEnd = ""; // Don't use #APP/#NO_APP
}
virtual const char *getPassName() const {
O << ", " << (unsigned int)SH << "\n";
return;
}
+ } else if (MI->getOpcode() == PPC::OR4 || MI->getOpcode() == PPC::OR8) {
+ if (MI->getOperand(1).getReg() == MI->getOperand(2).getReg()) {
+ O << "mr ";
+ printOperand(MI, 0);
+ O << ", ";
+ printOperand(MI, 1);
+ O << "\n";
+ return;
+ }
}
if (printInstruction(MI))