[llvm] Revert "[llvm][SystemZ] Set comment stream in SystemZDisassembler::getInstruction" (PR #148639)
David Spickett via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 14 07:34:21 PDT 2025
https://github.com/DavidSpickett created https://github.com/llvm/llvm-project/pull/148639
Reverts llvm/llvm-project#148614
Has some missing library dependencies - https://lab.llvm.org/buildbot/#/builders/76/builds/11262/steps/11/logs/stdio.
>From fc17876b4ab710f162737f045cb77821d26e1395 Mon Sep 17 00:00:00 2001
From: David Spickett <spickettdavid at googlemail.com>
Date: Mon, 14 Jul 2025 15:33:55 +0100
Subject: [PATCH] =?UTF-8?q?Revert=20"[llvm][SystemZ]=20Set=20comment=20str?=
=?UTF-8?q?eam=20in=20SystemZDisassembler::getInstruc=E2=80=A6"?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This reverts commit b9ccc0ca38dc1c0b8569c4a859bb258b79bb8bc8.
---
.../Disassembler/SystemZDisassembler.cpp | 2 -
llvm/unittests/MC/SystemZ/CMakeLists.txt | 3 +-
.../MC/SystemZ/SystemZMCDisassemblerTest.cpp | 103 ------------------
3 files changed, 1 insertion(+), 107 deletions(-)
delete mode 100644 llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
diff --git a/llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp b/llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
index 31b4f1196392c..6ae529e974186 100644
--- a/llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
+++ b/llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
@@ -327,8 +327,6 @@ DecodeStatus SystemZDisassembler::getInstruction(MCInst &MI, uint64_t &Size,
ArrayRef<uint8_t> Bytes,
uint64_t Address,
raw_ostream &CS) const {
- CommentStream = &CS;
-
// Get the first two bytes of the instruction.
Size = 0;
if (Bytes.size() < 2)
diff --git a/llvm/unittests/MC/SystemZ/CMakeLists.txt b/llvm/unittests/MC/SystemZ/CMakeLists.txt
index 4af12efa7984d..3b7af4a3bbea3 100644
--- a/llvm/unittests/MC/SystemZ/CMakeLists.txt
+++ b/llvm/unittests/MC/SystemZ/CMakeLists.txt
@@ -10,7 +10,6 @@ set(LLVM_LINK_COMPONENTS
TargetParser
)
-add_llvm_unittest(SystemZMCTests
+add_llvm_unittest(SystemZAsmLexerTests
SystemZAsmLexerTest.cpp
- SystemZMCDisassemblerTest.cpp
)
diff --git a/llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp b/llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
deleted file mode 100644
index df59fcb402e21..0000000000000
--- a/llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
+++ /dev/null
@@ -1,103 +0,0 @@
-//===- SystemZMCDisassemblerTest.cpp - Tests for SystemZ MCDisassembler ---===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#include "llvm/MC/MCAsmInfo.h"
-#include "llvm/MC/MCContext.h"
-#include "llvm/MC/MCDisassembler/MCDisassembler.h"
-#include "llvm/MC/MCDisassembler/MCSymbolizer.h"
-#include "llvm/MC/MCInst.h"
-#include "llvm/MC/MCRegisterInfo.h"
-#include "llvm/MC/MCSubtargetInfo.h"
-#include "llvm/MC/MCTargetOptions.h"
-#include "llvm/MC/TargetRegistry.h"
-#include "llvm/Support/TargetSelect.h"
-#include "gtest/gtest.h"
-
-using namespace llvm;
-
-namespace {
-
-struct Context {
- const char *TripleName = "systemz-unknown";
- std::unique_ptr<MCRegisterInfo> MRI;
- std::unique_ptr<MCAsmInfo> MAI;
- std::unique_ptr<MCContext> Ctx;
- std::unique_ptr<MCSubtargetInfo> STI;
- std::unique_ptr<MCDisassembler> DisAsm;
-
- Context() {
- LLVMInitializeSystemZTargetInfo();
- LLVMInitializeSystemZTargetMC();
- LLVMInitializeSystemZDisassembler();
-
- // If we didn't build SystemZ, do not run the test.
- std::string Error;
- const Target *TheTarget = TargetRegistry::lookupTarget(TripleName, Error);
- if (!TheTarget)
- return;
-
- MRI.reset(TheTarget->createMCRegInfo(TripleName));
- MAI.reset(TheTarget->createMCAsmInfo(*MRI, TripleName, MCTargetOptions()));
- STI.reset(TheTarget->createMCSubtargetInfo(TripleName, "", ""));
- Ctx = std::make_unique<MCContext>(Triple(TripleName), MAI.get(), MRI.get(),
- STI.get());
-
- DisAsm.reset(TheTarget->createMCDisassembler(*STI, *Ctx));
- }
-
- operator MCContext &() { return *Ctx; };
-};
-
-Context &getContext() {
- static Context Ctxt;
- return Ctxt;
-}
-
-class SystemZMCSymbolizerTest : public MCSymbolizer {
-public:
- SystemZMCSymbolizerTest(MCContext &MC) : MCSymbolizer(MC, nullptr) {}
- ~SystemZMCSymbolizerTest() {}
-
- bool tryAddingSymbolicOperand([[maybe_unused]] MCInst &Inst,
- [[maybe_unused]] raw_ostream &CStream,
- [[maybe_unused]] int64_t Value,
- [[maybe_unused]] uint64_t Address,
- [[maybe_unused]] bool IsBranch,
- [[maybe_unused]] uint64_t Offset,
- [[maybe_unused]] uint64_t OpSize,
- [[maybe_unused]] uint64_t InstSize) override {
- return true;
- }
-
- void
- tryAddingPcLoadReferenceComment([[maybe_unused]] raw_ostream &cStream,
- [[maybe_unused]] int64_t Value,
- [[maybe_unused]] uint64_t Address) override {}
-};
-
-} // namespace
-
-TEST(SystemZDisassembler, SystemZMCSymbolizerTest) {
- SystemZMCSymbolizerTest *TestSymbolizer =
- new SystemZMCSymbolizerTest(getContext());
- getContext().DisAsm->setSymbolizer(
- std::unique_ptr<MCSymbolizer>(TestSymbolizer));
-
- MCInst Inst;
- uint64_t InstSize;
-
- // Check that the SystemZ disassembler sets the comment stream before calling
- // MCDisassembler::tryAddingSymbolicOperand. This will fail an assert if it
- // does not do that.
- MCDisassembler::DecodeStatus Status = getContext().DisAsm->getInstruction(
- Inst, InstSize,
- // lgrl %r1, 0x1234
- {0xc4, 0x18, 0x00, 0x00, 0x9a, 0x1a}, 0, nulls());
- ASSERT_TRUE(Status == MCDisassembler::Success);
- EXPECT_EQ(InstSize, uint64_t{6});
-}
More information about the llvm-commits
mailing list