LLVM  8.0.1
Functions
AArch64MachObjectWriter.cpp File Reference
#include "MCTargetDesc/AArch64FixupKinds.h"
#include "MCTargetDesc/AArch64MCTargetDesc.h"
#include "llvm/ADT/Twine.h"
#include "llvm/BinaryFormat/MachO.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCAsmLayout.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCFixup.h"
#include "llvm/MC/MCFragment.h"
#include "llvm/MC/MCMachObjectWriter.h"
#include "llvm/MC/MCSection.h"
#include "llvm/MC/MCSectionMachO.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/MC/MCValue.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include <cstdint>
Include dependency graph for AArch64MachObjectWriter.cpp:

Go to the source code of this file.

Functions

static bool canUseLocalRelocation (const MCSectionMachO &Section, const MCSymbol &Symbol, unsigned Log2Size)
 

Function Documentation

◆ canUseLocalRelocation()

static bool canUseLocalRelocation ( const MCSectionMachO Section,
const MCSymbol Symbol,
unsigned  Log2Size 
)
static

Definition at line 125 of file AArch64MachObjectWriter.cpp.

References llvm::MachObjectWriter::addRelocation(), llvm::MachO::ARM64_RELOC_ADDEND, llvm::MachO::ARM64_RELOC_BRANCH26, llvm::MachO::ARM64_RELOC_PAGE21, llvm::MachO::ARM64_RELOC_PAGEOFF12, llvm::MachO::ARM64_RELOC_POINTER_TO_GOT, llvm::MachO::ARM64_RELOC_SUBTRACTOR, llvm::MachO::ARM64_RELOC_UNSIGNED, llvm::HexStyle::Asm, assert(), B, llvm::AArch64::fixup_aarch64_pcrel_adrp_imm21, llvm::AArch64::fixup_aarch64_pcrel_branch14, llvm::AArch64::fixup_aarch64_pcrel_branch19, llvm::MCContext::getAsmInfo(), llvm::MCAssembler::getAtom(), llvm::MCValue::getConstant(), llvm::MCAssembler::getContext(), llvm::MCSymbol::getFragment(), llvm::MachObjectWriter::getFragmentAddress(), llvm::MCAsmLayout::getFragmentOffset(), llvm::MCFixup::getKind(), llvm::MCSymbolRefExpr::getKind(), llvm::MCFixup::getLoc(), llvm::MCSymbol::getName(), llvm::MCFixup::getOffset(), llvm::MCSection::getOrdinal(), llvm::MCFragment::getParent(), llvm::MCSymbol::getSection(), llvm::MCSectionMachO::getSectionName(), llvm::MCSectionMachO::getSegmentName(), llvm::MCValue::getSymA(), llvm::MCValue::getSymB(), llvm::MCSymbolRefExpr::getSymbol(), llvm::MachObjectWriter::getSymbolAddress(), llvm::MCAsmLayout::getSymbolOffset(), llvm::MCSectionMachO::getType(), llvm::MCSectionMachO::hasAttribute(), llvm::MCValue::isAbsolute(), llvm::MachObjectWriter::isFixupKindPCRel(), llvm::MCSymbol::isInSection(), llvm::MCAsmInfo::isSectionAtomizableBySymbols(), llvm::MCSymbol::isTemporary(), llvm::MCSymbol::isVariable(), Kind, llvm_unreachable, llvm::MachO::any_relocation_info::r_word0, llvm::MachO::any_relocation_info::r_word1, llvm::MCContext::reportError(), llvm::MachO::S_ATTR_DEBUG, llvm::MachO::S_CSTRING_LITERALS, llvm::ARMBuildAttrs::Section, llvm::MCSymbol::setUsedInReloc(), llvm::ARMBuildAttrs::Symbol, llvm::MCSymbolRefExpr::VK_GOT, and llvm::MCSymbolRefExpr::VK_None.