32-bit darwin targets support .literal16 too.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77191 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2009-07-27 15:44:04 +00:00
parent b0d3f25b77
commit de3a1078ab
2 changed files with 4 additions and 10 deletions

View File

@ -34,10 +34,8 @@ DarwinTargetAsmInfo::DarwinTargetAsmInfo(const TargetMachine &TM)
SectionKind::MergeableConst4);
EightByteConstantSection = getOrCreateSection("\t.literal8\n", true,
SectionKind::MergeableConst8);
// Note: 16-byte constant section is subtarget specific and should be provided
// there, if needed.
SixteenByteConstantSection = 0;
SixteenByteConstantSection =
getOrCreateSection("\t.literal16\n", true, SectionKind::MergeableConst16);
ReadOnlySection = getOrCreateSection("\t.const", true, SectionKind::ReadOnly);
@ -150,7 +148,7 @@ DarwinTargetAsmInfo::SelectSectionForGlobal(const GlobalValue *GV,
return FourByteConstantSection;
if (Kind.isMergeableConst8())
return EightByteConstantSection;
if (Kind.isMergeableConst16() && SixteenByteConstantSection)
if (Kind.isMergeableConst16())
return SixteenByteConstantSection;
return ReadOnlySection; // .const
}
@ -196,7 +194,7 @@ DarwinTargetAsmInfo::getSectionForMergeableConstant(SectionKind Kind) const {
return FourByteConstantSection;
if (Kind.isMergeableConst8())
return EightByteConstantSection;
if (Kind.isMergeableConst16() && SixteenByteConstantSection)
if (Kind.isMergeableConst16())
return SixteenByteConstantSection;
return ReadOnlySection; // .const
}

View File

@ -55,10 +55,6 @@ X86DarwinTargetAsmInfo::X86DarwinTargetAsmInfo(const X86TargetMachine &TM):
ConstantPoolSection = "\t.const_data";
else
ConstantPoolSection = "\t.const\n";
// FIXME: Why don't we always use this section?
if (is64Bit)
SixteenByteConstantSection =
getOrCreateSection("\t.literal16\n", true, SectionKind::MergeableConst16);
LCOMMDirective = "\t.lcomm\t";
// Leopard and above support aligned common symbols.