search for: ismergeableconst

Displaying 4 results from an estimated 4 matches for "ismergeableconst".

2014 Aug 28
4
[LLVMdev] How to tell whether a GlobalValue is user-defined
...require only symbols that start with 'l' or 'L'. > Not sure what you mean here. What is "requiring”? Are we talking about this code in TargetLoweringObjectFileMachO::SelectSectionForGlobal() I mean "the correspoinding symbol name will start with". > if (Kind.isMergeableConst()) { > if (Kind.isMergeableConst4()) > return FourByteConstantSection; > if (Kind.isMergeableConst8()) > return EightByteConstantSection; > if (Kind.isMergeableConst16()) > return SixteenByteConstantSection; > } > > Can’t we just change the...
2014 Aug 27
2
[LLVMdev] How to tell whether a GlobalValue is user-defined
>> The literalN sections were developed long ago to support coalescing of >> unnamed constants like 9.897 in source code for architectures that could not >> embed large constants in instructions. The linker could knew how to break >> up the section (e.g. __literal8 is always 8 byte chunks) and coalesce copies >> by content. >> >> ~6 years ago we
2014 Aug 25
2
[LLVMdev] How to tell whether a GlobalValue is user-defined
...LoweringObjectFileImpl.cpp > +++ b/lib/CodeGen/TargetLoweringObjectFileImpl.cpp > @@ -667,12 +667,6 @@ > TargetLoweringObjectFileMachO::getSectionForConstant(SectionKind Kind, > if (Kind.isDataRel() || Kind.isReadOnlyWithRel()) > return ConstDataSection; > > - if (Kind.isMergeableConst4()) > - return FourByteConstantSection; > - if (Kind.isMergeableConst8()) > - return EightByteConstantSection; > - if (Kind.isMergeableConst16()) > - return SixteenByteConstantSection; > return ReadOnlySection; // .const > } > > >> >> -Nick &gt...
2013 Sep 25
1
[LLVMdev] arm64 / iOS support
...TT) {} + bool mayNeedRelaxation(const MCInst &) const { return false; } + + virtual bool doesSectionRequireSymbols(const MCSection &Section) const { + SectionKind kind = Section.getKind(); + return kind.isDataRel() || kind.isReadOnlyWithRel() || kind.isMetadata() || + kind.isMergeableConst(); + } + + unsigned int getNumFixupKinds() const { return AArch64::NumTargetFixupKinds; } + + bool fixupNeedsRelaxation(const MCFixup &Fixup, uint64_t Value, + const MCRelaxableFragment *DF, + const MCAsmLayout &Layout) const { + r...