aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCAssembler.cpp
diff options
context:
space:
mode:
authorFangrui Song <i@maskray.me>2025-07-05 00:19:47 -0700
committerFangrui Song <i@maskray.me>2025-07-05 00:19:48 -0700
commitfb13be06e18d3e19f3380fc46ff4009918beb19f (patch)
tree57581be364ae8e9b54dcc9ab19681fd982e8dd32 /llvm/lib/MC/MCAssembler.cpp
parentcd39eaeb376e9ae84cafd433c8367cb47cb545a9 (diff)
downloadllvm-fb13be06e18d3e19f3380fc46ff4009918beb19f.zip
llvm-fb13be06e18d3e19f3380fc46ff4009918beb19f.tar.gz
llvm-fb13be06e18d3e19f3380fc46ff4009918beb19f.tar.bz2
MC: Generalize evaluateTargetFixup
Generalize evaluateTargetFixup to be called by all targets, making FKF_IsTarget unneeded. Next: Update targets that use FKF_IsAlignedDownTo32Bits to define `evaluateFixup` and remove FKF_IsAlignedDownTo32Bits from the generic code.
Diffstat (limited to 'llvm/lib/MC/MCAssembler.cpp')
-rw-r--r--llvm/lib/MC/MCAssembler.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/MC/MCAssembler.cpp b/llvm/lib/MC/MCAssembler.cpp
index 64fc0a8..e02fcb1 100644
--- a/llvm/lib/MC/MCAssembler.cpp
+++ b/llvm/lib/MC/MCAssembler.cpp
@@ -163,8 +163,8 @@ bool MCAssembler::evaluateFixup(const MCFragment &F, MCFixup &Fixup,
unsigned FixupFlags = getBackend().getFixupKindInfo(Fixup.getKind()).Flags;
bool IsResolved = false;
- if (FixupFlags & MCFixupKindInfo::FKF_IsTarget) {
- IsResolved = getBackend().evaluateTargetFixup(Fixup, Target, Value);
+ if (auto State = getBackend().evaluateFixup(Fixup, Target, Value)) {
+ IsResolved = *State;
} else {
const MCSymbol *Add = Target.getAddSym();
const MCSymbol *Sub = Target.getSubSym();