aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCObjectStreamer.cpp
diff options
context:
space:
mode:
authoraengelke <engelke@in.tum.de>2024-06-10 20:41:21 +0200
committerGitHub <noreply@github.com>2024-06-10 20:41:21 +0200
commit77220823daa06c0e177d7571f73d9b69112861cc (patch)
tree1b3f3c93bfa37d2132d1da4d10de36b45e5f6ca6 /llvm/lib/MC/MCObjectStreamer.cpp
parentbaba78daf2b3a3ee9bfa21f1f8ff3584aa982ac8 (diff)
downloadllvm-77220823daa06c0e177d7571f73d9b69112861cc.zip
llvm-77220823daa06c0e177d7571f73d9b69112861cc.tar.gz
llvm-77220823daa06c0e177d7571f73d9b69112861cc.tar.bz2
[MC] Maintain MCRelaxAll after reset() (#94945)
RelaxAll was set in the constructor, but cleared after reset().
Diffstat (limited to 'llvm/lib/MC/MCObjectStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCObjectStreamer.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/MC/MCObjectStreamer.cpp b/llvm/lib/MC/MCObjectStreamer.cpp
index 0ccade9..8d3873b 100644
--- a/llvm/lib/MC/MCObjectStreamer.cpp
+++ b/llvm/lib/MC/MCObjectStreamer.cpp
@@ -175,8 +175,11 @@ void MCObjectStreamer::emitAbsoluteSymbolDiffAsULEB128(const MCSymbol *Hi,
}
void MCObjectStreamer::reset() {
- if (Assembler)
+ if (Assembler) {
Assembler->reset();
+ if (getContext().getTargetOptions())
+ Assembler->setRelaxAll(getContext().getTargetOptions()->MCRelaxAll);
+ }
CurInsertionPoint = MCSection::iterator();
EmitEHFrame = true;
EmitDebugFrame = false;