[llvm] [NFC][LLVM] Remove unused `TargetIntrinsicInfo` class (PR #111762)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 9 16:58:13 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-llvm-selectiondag
Author: Rahul Joshi (jurahul)
<details>
<summary>Changes</summary>
Remove `TargetIntrinsicInfo` class as its practically unused (its pure virtual with no subclasses) and its references in the code.
---
Patch is 31.80 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/111762.diff
19 Files Affected:
- (modified) llvm/include/llvm/CodeGen/MachineOperand.h (+3-7)
- (removed) llvm/include/llvm/Target/TargetIntrinsicInfo.h (-68)
- (modified) llvm/include/llvm/Target/TargetMachine.h (-6)
- (modified) llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp (+1-6)
- (modified) llvm/lib/CodeGen/MIRParser/MIParser.cpp (+1-7)
- (modified) llvm/lib/CodeGen/MIRPrinter.cpp (+2-3)
- (modified) llvm/lib/CodeGen/MachineInstr.cpp (+9-13)
- (modified) llvm/lib/CodeGen/MachineOperand.cpp (+9-17)
- (modified) llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp (+2-8)
- (modified) llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp (-3)
- (modified) llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp (-3)
- (modified) llvm/lib/Target/CMakeLists.txt (-1)
- (modified) llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp (-1)
- (modified) llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp (-1)
- (modified) llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp (-1)
- (removed) llvm/lib/Target/TargetIntrinsicInfo.cpp (-27)
- (modified) llvm/unittests/CodeGen/MachineOperandTest.cpp (+26-26)
- (modified) llvm/unittests/MIR/MachineMetadata.cpp (+2-4)
- (modified) llvm/utils/gn/secondary/llvm/lib/Target/BUILD.gn (-1)
``````````diff
diff --git a/llvm/include/llvm/CodeGen/MachineOperand.h b/llvm/include/llvm/CodeGen/MachineOperand.h
index 63a172134538c4..1eb3b7d227e67c 100644
--- a/llvm/include/llvm/CodeGen/MachineOperand.h
+++ b/llvm/include/llvm/CodeGen/MachineOperand.h
@@ -32,7 +32,6 @@ class MachineRegisterInfo;
class MCCFIInstruction;
class MDNode;
class ModuleSlotTracker;
-class TargetIntrinsicInfo;
class TargetRegisterInfo;
class hash_code;
class raw_ostream;
@@ -283,8 +282,7 @@ class MachineOperand {
/// Providing a valid \p TRI and \p IntrinsicInfo results in a more
/// target-specific printing. If \p TRI and \p IntrinsicInfo are null, the
/// function will try to pick it up from the parent.
- void print(raw_ostream &os, const TargetRegisterInfo *TRI = nullptr,
- const TargetIntrinsicInfo *IntrinsicInfo = nullptr) const;
+ void print(raw_ostream &os, const TargetRegisterInfo *TRI = nullptr) const;
/// More complex way of printing a MachineOperand.
/// \param TypeToPrint specifies the generic type to be printed on uses and
@@ -310,14 +308,12 @@ class MachineOperand {
void print(raw_ostream &os, ModuleSlotTracker &MST, LLT TypeToPrint,
std::optional<unsigned> OpIdx, bool PrintDef, bool IsStandalone,
bool ShouldPrintRegisterTies, unsigned TiedOperandIdx,
- const TargetRegisterInfo *TRI,
- const TargetIntrinsicInfo *IntrinsicInfo) const;
+ const TargetRegisterInfo *TRI) const;
/// Same as print(os, TRI, IntrinsicInfo), but allows to specify the low-level
/// type to be printed the same way the full version of print(...) does it.
void print(raw_ostream &os, LLT TypeToPrint,
- const TargetRegisterInfo *TRI = nullptr,
- const TargetIntrinsicInfo *IntrinsicInfo = nullptr) const;
+ const TargetRegisterInfo *TRI = nullptr) const;
void dump() const;
diff --git a/llvm/include/llvm/Target/TargetIntrinsicInfo.h b/llvm/include/llvm/Target/TargetIntrinsicInfo.h
deleted file mode 100644
index dc59f11c8d9a13..00000000000000
--- a/llvm/include/llvm/Target/TargetIntrinsicInfo.h
+++ /dev/null
@@ -1,68 +0,0 @@
-//===-- llvm/Target/TargetIntrinsicInfo.h - Instruction Info ----*- C++ -*-===//
-//
-// 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
-//
-//===----------------------------------------------------------------------===//
-//
-// This file describes the target intrinsic instructions to the code generator.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_TARGET_TARGETINTRINSICINFO_H
-#define LLVM_TARGET_TARGETINTRINSICINFO_H
-
-#include "llvm/ADT/StringRef.h"
-#include <string>
-
-namespace llvm {
-
-class Function;
-class Module;
-class Type;
-
-//---------------------------------------------------------------------------
-///
-/// TargetIntrinsicInfo - Interface to description of machine instruction set
-///
-class TargetIntrinsicInfo {
- TargetIntrinsicInfo(const TargetIntrinsicInfo &) = delete;
- void operator=(const TargetIntrinsicInfo &) = delete;
-public:
- TargetIntrinsicInfo();
- virtual ~TargetIntrinsicInfo();
-
- /// Return the name of a target intrinsic, e.g. "llvm.bfin.ssync".
- /// The Tys and numTys parameters are for intrinsics with overloaded types
- /// (e.g., those using iAny or fAny). For a declaration for an overloaded
- /// intrinsic, Tys should point to an array of numTys pointers to Type,
- /// and must provide exactly one type for each overloaded type in the
- /// intrinsic.
- virtual std::string getName(unsigned IID, Type **Tys = nullptr,
- unsigned numTys = 0) const = 0;
-
- /// Look up target intrinsic by name. Return intrinsic ID or 0 for unknown
- /// names.
- virtual unsigned lookupName(const char *Name, unsigned Len) const =0;
-
- unsigned lookupName(StringRef Name) const {
- return lookupName(Name.data(), Name.size());
- }
-
- /// Return the target intrinsic ID of a function, or 0.
- virtual unsigned getIntrinsicID(const Function *F) const;
-
- /// Returns true if the intrinsic can be overloaded.
- virtual bool isOverloaded(unsigned IID) const = 0;
-
- /// Create or insert an LLVM Function declaration for an intrinsic,
- /// and return it. The Tys and numTys are for intrinsics with overloaded
- /// types. See above for more information.
- virtual Function *getDeclaration(Module *M, unsigned ID, Type **Tys = nullptr,
- unsigned numTys = 0) const = 0;
-};
-
-} // End llvm namespace
-
-#endif
diff --git a/llvm/include/llvm/Target/TargetMachine.h b/llvm/include/llvm/Target/TargetMachine.h
index c3e9d41315f617..7011f6032b533c 100644
--- a/llvm/include/llvm/Target/TargetMachine.h
+++ b/llvm/include/llvm/Target/TargetMachine.h
@@ -50,7 +50,6 @@ struct PerFunctionMIParsingState;
class SMDiagnostic;
class SMRange;
class Target;
-class TargetIntrinsicInfo;
class TargetIRAnalysis;
class TargetTransformInfo;
class TargetLoweringObjectFile;
@@ -215,11 +214,6 @@ class TargetMachine {
const MCInstrInfo *getMCInstrInfo() const { return MII.get(); }
const MCSubtargetInfo *getMCSubtargetInfo() const { return STI.get(); }
- /// If intrinsic information is available, return it. If not, return null.
- virtual const TargetIntrinsicInfo *getIntrinsicInfo() const {
- return nullptr;
- }
-
bool requiresStructuredCFG() const { return RequireStructuredCFG; }
void setRequiresStructuredCFG(bool Value) { RequireStructuredCFG = Value; }
diff --git a/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp b/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
index 932287d1403021..d535599eb90cf9 100644
--- a/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
@@ -80,7 +80,6 @@
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
-#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Transforms/Utils/MemoryOpRemark.h"
@@ -2728,7 +2727,6 @@ bool IRTranslator::translateCallBase(const CallBase &CB,
bool IRTranslator::translateCall(const User &U, MachineIRBuilder &MIRBuilder) {
const CallInst &CI = cast<CallInst>(U);
- auto TII = MF->getTarget().getIntrinsicInfo();
const Function *F = CI.getCalledFunction();
// FIXME: support Windows dllimport function calls and calls through
@@ -2752,11 +2750,8 @@ bool IRTranslator::translateCall(const User &U, MachineIRBuilder &MIRBuilder) {
diagnoseDontCall(CI);
Intrinsic::ID ID = Intrinsic::not_intrinsic;
- if (F && F->isIntrinsic()) {
+ if (F && F->isIntrinsic())
ID = F->getIntrinsicID();
- if (TII && ID == Intrinsic::not_intrinsic)
- ID = static_cast<Intrinsic::ID>(TII->getIntrinsicID(F));
- }
if (!F || !F->isIntrinsic() || ID == Intrinsic::not_intrinsic)
return translateCallBase(CI, MIRBuilder);
diff --git a/llvm/lib/CodeGen/MIRParser/MIParser.cpp b/llvm/lib/CodeGen/MIRParser/MIParser.cpp
index 74f38e886a6b97..5826c443b8c132 100644
--- a/llvm/lib/CodeGen/MIRParser/MIParser.cpp
+++ b/llvm/lib/CodeGen/MIRParser/MIParser.cpp
@@ -67,7 +67,6 @@
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/SMLoc.h"
#include "llvm/Support/SourceMgr.h"
-#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include <cassert>
#include <cctype>
@@ -2651,13 +2650,8 @@ bool MIParser::parseIntrinsicOperand(MachineOperand &Dest) {
if (expectAndConsume(MIToken::rparen))
return error("expected ')' to terminate intrinsic name");
- // Find out what intrinsic we're dealing with, first try the global namespace
- // and then the target's private intrinsics if that fails.
- const TargetIntrinsicInfo *TII = MF.getTarget().getIntrinsicInfo();
+ // Find out what intrinsic we're dealing with.
Intrinsic::ID ID = Intrinsic::lookupIntrinsicID(Name);
- if (ID == Intrinsic::not_intrinsic && TII)
- ID = static_cast<Intrinsic::ID>(TII->lookupName(Name));
-
if (ID == Intrinsic::not_intrinsic)
return error("unknown intrinsic name");
Dest = MachineOperand::CreateIntrinsicID(ID);
diff --git a/llvm/lib/CodeGen/MIRPrinter.cpp b/llvm/lib/CodeGen/MIRPrinter.cpp
index d52c1d831267f6..1ef90120e14e17 100644
--- a/llvm/lib/CodeGen/MIRPrinter.cpp
+++ b/llvm/lib/CodeGen/MIRPrinter.cpp
@@ -964,10 +964,9 @@ void MIPrinter::print(const MachineInstr &MI, unsigned OpIdx,
unsigned TiedOperandIdx = 0;
if (ShouldPrintRegisterTies && Op.isReg() && Op.isTied() && !Op.isDef())
TiedOperandIdx = Op.getParent()->findTiedOperandIdx(OpIdx);
- const TargetIntrinsicInfo *TII = MI.getMF()->getTarget().getIntrinsicInfo();
Op.print(OS, MST, TypeToPrint, OpIdx, PrintDef, /*IsStandalone=*/false,
- ShouldPrintRegisterTies, TiedOperandIdx, TRI, TII);
- OS << formatOperandComment(MOComment);
+ ShouldPrintRegisterTies, TiedOperandIdx, TRI);
+ OS << formatOperandComment(MOComment);
break;
}
case MachineOperand::MO_FrameIndex:
diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp
index 0d78c2cafbaf63..1d9a7c3950319f 100644
--- a/llvm/lib/CodeGen/MachineInstr.cpp
+++ b/llvm/lib/CodeGen/MachineInstr.cpp
@@ -69,18 +69,15 @@ static const MachineFunction *getMFIfAvailable(const MachineInstr &MI) {
return nullptr;
}
-// Try to crawl up to the machine function and get TRI and IntrinsicInfo from
-// it.
+// Try to crawl up to the machine function and get TRI/MRI/TII from it.
static void tryToGetTargetInfo(const MachineInstr &MI,
const TargetRegisterInfo *&TRI,
const MachineRegisterInfo *&MRI,
- const TargetIntrinsicInfo *&IntrinsicInfo,
const TargetInstrInfo *&TII) {
if (const MachineFunction *MF = getMFIfAvailable(MI)) {
TRI = MF->getSubtarget().getRegisterInfo();
MRI = &MF->getRegInfo();
- IntrinsicInfo = MF->getTarget().getIntrinsicInfo();
TII = MF->getSubtarget().getInstrInfo();
}
}
@@ -1703,8 +1700,7 @@ void MachineInstr::print(raw_ostream &OS, ModuleSlotTracker &MST,
// We can be a bit tidier if we know the MachineFunction.
const TargetRegisterInfo *TRI = nullptr;
const MachineRegisterInfo *MRI = nullptr;
- const TargetIntrinsicInfo *IntrinsicInfo = nullptr;
- tryToGetTargetInfo(*this, TRI, MRI, IntrinsicInfo, TII);
+ tryToGetTargetInfo(*this, TRI, MRI, TII);
if (isCFIInstruction())
assert(getNumOperands() == 1 && "Expected 1 operand in CFI instruction");
@@ -1734,7 +1730,7 @@ void MachineInstr::print(raw_ostream &OS, ModuleSlotTracker &MST,
LLT TypeToPrint = MRI ? getTypeToPrint(StartOp, PrintedTypes, *MRI) : LLT{};
unsigned TiedOperandIdx = getTiedOperandIdx(StartOp);
MO.print(OS, MST, TypeToPrint, StartOp, /*PrintDef=*/false, IsStandalone,
- ShouldPrintRegisterTies, TiedOperandIdx, TRI, IntrinsicInfo);
+ ShouldPrintRegisterTies, TiedOperandIdx, TRI);
++StartOp;
}
@@ -1794,9 +1790,9 @@ void MachineInstr::print(raw_ostream &OS, ModuleSlotTracker &MST,
const unsigned OpIdx = InlineAsm::MIOp_AsmString;
LLT TypeToPrint = MRI ? getTypeToPrint(OpIdx, PrintedTypes, *MRI) : LLT{};
unsigned TiedOperandIdx = getTiedOperandIdx(OpIdx);
- getOperand(OpIdx).print(OS, MST, TypeToPrint, OpIdx, /*PrintDef=*/true, IsStandalone,
- ShouldPrintRegisterTies, TiedOperandIdx, TRI,
- IntrinsicInfo);
+ getOperand(OpIdx).print(OS, MST, TypeToPrint, OpIdx, /*PrintDef=*/true,
+ IsStandalone, ShouldPrintRegisterTies,
+ TiedOperandIdx, TRI);
// Print HasSideEffects, MayLoad, MayStore, IsAlignStack
unsigned ExtraInfo = getOperand(InlineAsm::MIOp_ExtraInfo).getImm();
@@ -1834,7 +1830,7 @@ void MachineInstr::print(raw_ostream &OS, ModuleSlotTracker &MST,
LLT TypeToPrint = MRI ? getTypeToPrint(i, PrintedTypes, *MRI) : LLT{};
unsigned TiedOperandIdx = getTiedOperandIdx(i);
MO.print(OS, MST, TypeToPrint, i, /*PrintDef=*/true, IsStandalone,
- ShouldPrintRegisterTies, TiedOperandIdx, TRI, IntrinsicInfo);
+ ShouldPrintRegisterTies, TiedOperandIdx, TRI);
}
} else if (isDebugLabel() && MO.isMetadata()) {
// Pretty print DBG_LABEL instructions.
@@ -1845,7 +1841,7 @@ void MachineInstr::print(raw_ostream &OS, ModuleSlotTracker &MST,
LLT TypeToPrint = MRI ? getTypeToPrint(i, PrintedTypes, *MRI) : LLT{};
unsigned TiedOperandIdx = getTiedOperandIdx(i);
MO.print(OS, MST, TypeToPrint, i, /*PrintDef=*/true, IsStandalone,
- ShouldPrintRegisterTies, TiedOperandIdx, TRI, IntrinsicInfo);
+ ShouldPrintRegisterTies, TiedOperandIdx, TRI);
}
} else if (i == AsmDescOp && MO.isImm()) {
// Pretty print the inline asm operand descriptor.
@@ -1889,7 +1885,7 @@ void MachineInstr::print(raw_ostream &OS, ModuleSlotTracker &MST,
MachineOperand::printSubRegIdx(OS, MO.getImm(), TRI);
else
MO.print(OS, MST, TypeToPrint, i, /*PrintDef=*/true, IsStandalone,
- ShouldPrintRegisterTies, TiedOperandIdx, TRI, IntrinsicInfo);
+ ShouldPrintRegisterTies, TiedOperandIdx, TRI);
}
}
diff --git a/llvm/lib/CodeGen/MachineOperand.cpp b/llvm/lib/CodeGen/MachineOperand.cpp
index 89d32c3f005e00..15701922c410b6 100644
--- a/llvm/lib/CodeGen/MachineOperand.cpp
+++ b/llvm/lib/CodeGen/MachineOperand.cpp
@@ -27,7 +27,6 @@
#include "llvm/IR/Instructions.h"
#include "llvm/IR/ModuleSlotTracker.h"
#include "llvm/MC/MCDwarf.h"
-#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include <optional>
@@ -449,14 +448,11 @@ hash_code llvm::hash_value(const MachineOperand &MO) {
llvm_unreachable("Invalid machine operand type");
}
-// Try to crawl up to the machine function and get TRI and IntrinsicInfo from
-// it.
+// Try to crawl up to the machine function and get TRI from it.
static void tryToGetTargetInfo(const MachineOperand &MO,
- const TargetRegisterInfo *&TRI,
- const TargetIntrinsicInfo *&IntrinsicInfo) {
+ const TargetRegisterInfo *&TRI) {
if (const MachineFunction *MF = getMFIfAvailable(MO)) {
TRI = MF->getSubtarget().getRegisterInfo();
- IntrinsicInfo = MF->getTarget().getIntrinsicInfo();
}
}
@@ -775,20 +771,19 @@ static void printCFI(raw_ostream &OS, const MCCFIInstruction &CFI,
}
}
-void MachineOperand::print(raw_ostream &OS, const TargetRegisterInfo *TRI,
- const TargetIntrinsicInfo *IntrinsicInfo) const {
- print(OS, LLT{}, TRI, IntrinsicInfo);
+void MachineOperand::print(raw_ostream &OS,
+ const TargetRegisterInfo *TRI) const {
+ print(OS, LLT{}, TRI);
}
void MachineOperand::print(raw_ostream &OS, LLT TypeToPrint,
- const TargetRegisterInfo *TRI,
- const TargetIntrinsicInfo *IntrinsicInfo) const {
- tryToGetTargetInfo(*this, TRI, IntrinsicInfo);
+ const TargetRegisterInfo *TRI) const {
+ tryToGetTargetInfo(*this, TRI);
ModuleSlotTracker DummyMST(nullptr);
print(OS, DummyMST, TypeToPrint, std::nullopt, /*PrintDef=*/false,
/*IsStandalone=*/true,
/*ShouldPrintRegisterTies=*/true,
- /*TiedOperandIdx=*/0, TRI, IntrinsicInfo);
+ /*TiedOperandIdx=*/0, TRI);
}
void MachineOperand::print(raw_ostream &OS, ModuleSlotTracker &MST,
@@ -796,8 +791,7 @@ void MachineOperand::print(raw_ostream &OS, ModuleSlotTracker &MST,
bool PrintDef, bool IsStandalone,
bool ShouldPrintRegisterTies,
unsigned TiedOperandIdx,
- const TargetRegisterInfo *TRI,
- const TargetIntrinsicInfo *IntrinsicInfo) const {
+ const TargetRegisterInfo *TRI) const {
printTargetFlags(OS, *this);
switch (getType()) {
case MachineOperand::MO_Register: {
@@ -994,8 +988,6 @@ void MachineOperand::print(raw_ostream &OS, ModuleSlotTracker &MST,
Intrinsic::ID ID = getIntrinsicID();
if (ID < Intrinsic::num_intrinsics)
OS << "intrinsic(@" << Intrinsic::getBaseName(ID) << ')';
- else if (IntrinsicInfo)
- OS << "intrinsic(@" << IntrinsicInfo->getName(ID) << ')';
else
OS << "intrinsic(" << ID << ')';
break;
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
index a981e9cc79289a..1b4cd82a6b17e4 100644
--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
@@ -98,7 +98,6 @@
#include "llvm/Support/InstructionCost.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
-#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/TargetParser/Triple.h"
@@ -9254,13 +9253,8 @@ void SelectionDAGBuilder::visitCall(const CallInst &I) {
if (Function *F = I.getCalledFunction()) {
if (F->isDeclaration()) {
- // Is this an LLVM intrinsic or a target-specific intrinsic?
- unsigned IID = F->getIntrinsicID();
- if (!IID)
- if (const TargetIntrinsicInfo *II = TM.getIntrinsicInfo())
- IID = II->getIntrinsicID(F);
-
- if (IID) {
+ // Is this an LLVM intrinsic?
+ if (unsigned IID = F->getIntrinsicID()) {
visitIntrinsicCall(I, IID);
return;
}
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
index 56fc538172f9fc..84d579dff8a200 100644
--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
@@ -43,7 +43,6 @@
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Printable.h"
#include "llvm/Support/raw_ostream.h"
-#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include <cstdint>
#include <iterator>
@@ -164,8 +163,6 @@ std::string SDNode::getOperationName(const SelectionDAG *G) const {
return Intrinsic::getBaseName((Intrinsic::ID)IID).str();
if (!G)
return "Unknown intrinsic";
- if (const TargetIntrinsicInfo *TII = G->getTarget().getIntrinsicInfo())
- return TII->getName(IID);
llvm_unreachable("Invalid intrinsic ID");
}
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
index 2a97580942df36..5bb8059da69c4c 100644
--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
@@ -97,7 +97,6 @@
#include "llvm/Support/KnownBits.h"
#include "llvm/Support/Timer.h"
#include "llvm/Support/raw_ostream.h"
-#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
@@ -4427,8 +4426,6 @@ void SelectionDAGISel::CannotYetSelect(SDNode *N) {
unsigned iid = N->getConstantOperandVal(HasInputChain);
if (iid < Intrinsic::num_intrinsics)
Msg << "intrinsic %" << Intrinsic::getBaseName((Intrinsic::ID)iid);
- else if (const TargetIntrinsicInfo *TII = TM.getIntrinsicInfo())
- Msg << "target intrinsic %" << TII->getName(iid);
else
Msg << "unknown intrinsic #" << iid;
}
diff --git a/llvm/lib/Target/CMakeLists.txt b/llvm/lib/Target/CMakeLists.txt
index 2739233f9ccb3d..9472288229cac6 100644
--- a/llvm/lib/Target/CMakeLists.txt
+++ b/llvm/lib/Target/CMakeLists.txt
@@ -4,7 +4,6 @@ list(APPEND LLVM_TABLEGEN_FLAGS -I ${LLVM_MAIN_SRC_DIR}/lib/Target)
add_llvm_component_library(LLVMTarget
Target.cpp
- TargetIntrinsicInfo.cpp
TargetLoweringObjectFile.cpp
TargetMachine.cpp
TargetMachineC.cpp
diff --git a/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp b/llvm/lib/Ta...
[truncated]
``````````
</details>
https://github.com/llvm/llvm-project/pull/111762
More information about the llvm-commits
mailing list