class GlobalValue;
class GlobalVariable;
class Type;
+ class Mangler;
- struct DarwinTargetAsmInfo: public virtual TargetAsmInfo {
+ struct DarwinTargetAsmInfo: public TargetAsmInfo {
const Section* TextCoalSection;
+ const Section* ConstTextCoalSection;
const Section* ConstDataCoalSection;
const Section* ConstDataSection;
const Section* DataCoalSection;
+ const Section* FourByteConstantSection;
+ const Section* EightByteConstantSection;
+ const Section* SixteenByteConstantSection;
explicit DarwinTargetAsmInfo(const TargetMachine &TM);
- virtual const Section* SelectSectionForGlobal(const GlobalValue *GV,
- bool NoCoalesce = false) const;
+ virtual const Section* SelectSectionForGlobal(const GlobalValue *GV) const;
virtual std::string UniqueSectionForGlobal(const GlobalValue* GV,
SectionKind::Kind kind) const;
+ virtual bool emitUsedDirectiveFor(const GlobalValue *GV,
+ Mangler *Mang) const;
const Section* MergeableConstSection(const GlobalVariable *GV) const;
const Section* MergeableConstSection(const Type *Ty) const;
const Section* MergeableStringSection(const GlobalVariable *GV) const;
const Section* SelectSectionForMachineConst(const Type *Ty) const;
- protected:
- const TargetMachine* DTM;
};
}