[RFC][TableGen] Restructure TableGen Source (#80847)
Refactor of the llvm-tblgen source into: - a "Basic" library, which contains the bare minimum utilities to build `llvm-min-tablegen` - a "Common" library which contains all of the helpers for TableGen backends. Such helpers can be shared by more than one backend, and even unit tested (e.g. CodeExpander is, maybe we can add more over time) Fixes #80647
This commit is contained in:
committed by
GitHub
parent
babbdad15b
commit
fa3d789df1
@@ -15,4 +15,4 @@ add_llvm_unittest(TableGenTests DISABLE_LLVM_LINK_LLVM_DYLIB
|
||||
ParserEntryPointTest.cpp
|
||||
)
|
||||
|
||||
target_link_libraries(TableGenTests PRIVATE LLVMTableGenGlobalISel LLVMTableGen)
|
||||
target_link_libraries(TableGenTests PRIVATE LLVMTableGenCommon LLVMTableGen)
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "GlobalISel/CodeExpander.h"
|
||||
#include "GlobalISel/CodeExpansions.h"
|
||||
#include "Common/GlobalISel/CodeExpander.h"
|
||||
#include "Common/GlobalISel/CodeExpansions.h"
|
||||
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
|
||||
@@ -95,12 +95,12 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstAlias.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "SubtargetFeatureInfo.h"
|
||||
#include "Types.h"
|
||||
#include "Common/CodeGenInstAlias.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/SubtargetFeatureInfo.h"
|
||||
#include "Common/Types.h"
|
||||
#include "llvm/ADT/CachedHashString.h"
|
||||
#include "llvm/ADT/PointerUnion.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "AsmWriterInst.h"
|
||||
#include "CodeGenInstAlias.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "SequenceToOffsetTable.h"
|
||||
#include "Types.h"
|
||||
#include "Basic/SequenceToOffsetTable.h"
|
||||
#include "Common/AsmWriterInst.h"
|
||||
#include "Common/CodeGenInstAlias.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/Types.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
|
||||
21
llvm/utils/TableGen/Basic/CMakeLists.txt
Normal file
21
llvm/utils/TableGen/Basic/CMakeLists.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
# The basic TableGen library contains as little dependencies as possible.
|
||||
# In particular, it does not depend on vt_gen -> it does not use ValueTypes.
|
||||
#
|
||||
# This library is the only thing included in `llvm-min-tablegen`.
|
||||
|
||||
set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
TableGen
|
||||
)
|
||||
|
||||
add_llvm_library(LLVMTableGenBasic STATIC OBJECT EXCLUDE_FROM_ALL
|
||||
CodeGenIntrinsics.cpp
|
||||
SDNodeProperties.cpp
|
||||
)
|
||||
set_target_properties(LLVMTableGenBasic PROPERTIES FOLDER "Tablegenning")
|
||||
|
||||
# Users may include its headers as "Basic/*.h"
|
||||
target_include_directories(LLVMTableGenBasic
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
|
||||
)
|
||||
@@ -1,26 +1,25 @@
|
||||
add_subdirectory(GlobalISel)
|
||||
|
||||
add_llvm_library(LLVMTableGenCommon STATIC OBJECT EXCLUDE_FROM_ALL
|
||||
Attributes.cpp
|
||||
CodeGenIntrinsics.cpp
|
||||
DirectiveEmitter.cpp
|
||||
IntrinsicEmitter.cpp
|
||||
RISCVTargetDefEmitter.cpp
|
||||
SDNodeProperties.cpp
|
||||
VTEmitter.cpp
|
||||
PARTIAL_SOURCES_INTENDED
|
||||
|
||||
LINK_COMPONENTS
|
||||
Support
|
||||
TableGen
|
||||
)
|
||||
set_target_properties(LLVMTableGenCommon PROPERTIES FOLDER "Tablegenning")
|
||||
# Basic utilities which is the strict minimum needed to build
|
||||
# llvm-min-tblgen.
|
||||
add_subdirectory(Basic)
|
||||
# Common utilities are all of the reusable components and helper
|
||||
# code needed by the backends.
|
||||
add_subdirectory(Common)
|
||||
|
||||
set(LLVM_LINK_COMPONENTS Support)
|
||||
|
||||
# llvm-min-tablegen only contains a subset of backends necessary to
|
||||
# build llvm/include. It must not depend on TableGenCommon, as
|
||||
# TableGenCommon depends on this already to generate things such as
|
||||
# ValueType definitions.
|
||||
add_tablegen(llvm-min-tblgen LLVM_HEADERS
|
||||
TableGen.cpp
|
||||
$<TARGET_OBJECTS:obj.LLVMTableGenCommon>
|
||||
Attributes.cpp
|
||||
DirectiveEmitter.cpp
|
||||
IntrinsicEmitter.cpp
|
||||
RISCVTargetDefEmitter.cpp
|
||||
VTEmitter.cpp
|
||||
$<TARGET_OBJECTS:obj.LLVMTableGenBasic>
|
||||
|
||||
PARTIAL_SOURCES_INTENDED
|
||||
)
|
||||
set_target_properties(llvm-min-tblgen PROPERTIES FOLDER "Tablegenning")
|
||||
@@ -35,63 +34,51 @@ add_tablegen(llvm-tblgen LLVM
|
||||
EXPORT LLVM
|
||||
AsmMatcherEmitter.cpp
|
||||
AsmWriterEmitter.cpp
|
||||
AsmWriterInst.cpp
|
||||
CTagsEmitter.cpp
|
||||
Attributes.cpp
|
||||
CallingConvEmitter.cpp
|
||||
CodeEmitterGen.cpp
|
||||
CodeGenDAGPatterns.cpp
|
||||
CodeGenHwModes.cpp
|
||||
CodeGenInstAlias.cpp
|
||||
CodeGenInstruction.cpp
|
||||
CodeGenMapTable.cpp
|
||||
CodeGenRegisters.cpp
|
||||
CodeGenSchedule.cpp
|
||||
CodeGenTarget.cpp
|
||||
CompressInstEmitter.cpp
|
||||
CTagsEmitter.cpp
|
||||
DAGISelEmitter.cpp
|
||||
DAGISelMatcherEmitter.cpp
|
||||
DAGISelMatcherGen.cpp
|
||||
DAGISelMatcherOpt.cpp
|
||||
DAGISelMatcher.cpp
|
||||
DecoderEmitter.cpp
|
||||
DFAEmitter.cpp
|
||||
DFAPacketizerEmitter.cpp
|
||||
DirectiveEmitter.cpp
|
||||
DisassemblerEmitter.cpp
|
||||
DXILEmitter.cpp
|
||||
ExegesisEmitter.cpp
|
||||
FastISelEmitter.cpp
|
||||
GlobalISelCombinerEmitter.cpp
|
||||
GlobalISelEmitter.cpp
|
||||
GlobalISelMatchTable.cpp
|
||||
GlobalISelMatchTableExecutorEmitter.cpp
|
||||
InfoByHwMode.cpp
|
||||
InstrInfoEmitter.cpp
|
||||
InstrDocsEmitter.cpp
|
||||
OptEmitter.cpp
|
||||
InstrInfoEmitter.cpp
|
||||
IntrinsicEmitter.cpp
|
||||
MacroFusionPredicatorEmitter.cpp
|
||||
OptParserEmitter.cpp
|
||||
OptRSTEmitter.cpp
|
||||
PredicateExpander.cpp
|
||||
PseudoLoweringEmitter.cpp
|
||||
CompressInstEmitter.cpp
|
||||
MacroFusionPredicatorEmitter.cpp
|
||||
RegisterBankEmitter.cpp
|
||||
RegisterInfoEmitter.cpp
|
||||
RISCVTargetDefEmitter.cpp
|
||||
SearchableTableEmitter.cpp
|
||||
SubtargetEmitter.cpp
|
||||
SubtargetFeatureInfo.cpp
|
||||
TableGen.cpp
|
||||
Types.cpp
|
||||
VarLenCodeEmitterGen.cpp
|
||||
X86DisassemblerTables.cpp
|
||||
VTEmitter.cpp
|
||||
WebAssemblyDisassemblerEmitter.cpp
|
||||
X86CompressEVEXTablesEmitter.cpp
|
||||
X86DisassemblerTables.cpp
|
||||
X86FoldTablesEmitter.cpp
|
||||
X86MnemonicTables.cpp
|
||||
X86ModRMFilters.cpp
|
||||
X86RecognizableInstr.cpp
|
||||
WebAssemblyDisassemblerEmitter.cpp
|
||||
$<TARGET_OBJECTS:obj.LLVMTableGenCommon>
|
||||
|
||||
DEPENDS
|
||||
intrinsics_gen # via llvm-min-tablegen
|
||||
)
|
||||
target_link_libraries(llvm-tblgen PRIVATE LLVMTableGenGlobalISel)
|
||||
target_link_libraries(llvm-tblgen PRIVATE LLVMTableGenCommon)
|
||||
set_target_properties(llvm-tblgen PROPERTIES FOLDER "Tablegenning")
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
#include "llvm/TableGen/TableGenBackend.h"
|
||||
|
||||
@@ -22,11 +22,11 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenHwModes.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "VarLenCodeEmitterGen.h"
|
||||
#include "Common/CodeGenHwModes.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "Common/VarLenCodeEmitterGen.h"
|
||||
#include "llvm/ADT/APInt.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
|
||||
@@ -75,8 +75,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
using namespace llvm;
|
||||
|
||||
48
llvm/utils/TableGen/Common/CMakeLists.txt
Normal file
48
llvm/utils/TableGen/Common/CMakeLists.txt
Normal file
@@ -0,0 +1,48 @@
|
||||
# The common library is similar to the basic library except it can
|
||||
# depend on vt_gen.
|
||||
#
|
||||
# This library contains the bulk of the supporting code for all
|
||||
# TableGen backends. It's split off as a separate library to
|
||||
# allow unit-testing those components.
|
||||
|
||||
set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
TableGen
|
||||
)
|
||||
|
||||
add_llvm_library(LLVMTableGenCommon STATIC OBJECT EXCLUDE_FROM_ALL
|
||||
GlobalISel/CodeExpander.cpp
|
||||
GlobalISel/CXXPredicates.cpp
|
||||
GlobalISel/GlobalISelMatchTable.cpp
|
||||
GlobalISel/GlobalISelMatchTableExecutorEmitter.cpp
|
||||
GlobalISel/MatchDataInfo.cpp
|
||||
GlobalISel/Patterns.cpp
|
||||
|
||||
AsmWriterInst.cpp
|
||||
CodeGenDAGPatterns.cpp
|
||||
CodeGenHwModes.cpp
|
||||
CodeGenInstAlias.cpp
|
||||
CodeGenInstruction.cpp
|
||||
CodeGenRegisters.cpp
|
||||
CodeGenSchedule.cpp
|
||||
CodeGenTarget.cpp
|
||||
DAGISelMatcher.cpp
|
||||
InfoByHwMode.cpp
|
||||
OptEmitter.cpp
|
||||
PredicateExpander.cpp
|
||||
SubtargetFeatureInfo.cpp
|
||||
Types.cpp
|
||||
VarLenCodeEmitterGen.cpp
|
||||
$<TARGET_OBJECTS:obj.LLVMTableGenBasic>
|
||||
|
||||
DEPENDS
|
||||
vt_gen
|
||||
)
|
||||
set_target_properties(LLVMTableGenCommon PROPERTIES FOLDER "Tablegenning")
|
||||
target_link_libraries(LLVMTableGenCommon PUBLIC LLVMTableGenBasic)
|
||||
|
||||
# Users may include its headers as "Common/*.h"
|
||||
target_include_directories(LLVMTableGenCommon
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
|
||||
)
|
||||
@@ -14,9 +14,9 @@
|
||||
#ifndef LLVM_UTILS_TABLEGEN_CODEGENDAGPATTERNS_H
|
||||
#define LLVM_UTILS_TABLEGEN_CODEGENDAGPATTERNS_H
|
||||
|
||||
#include "CodeGenIntrinsics.h"
|
||||
#include "Basic/CodeGenIntrinsics.h"
|
||||
#include "Basic/SDNodeProperties.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "SDNodeProperties.h"
|
||||
#include "llvm/ADT/IntrusiveRefCntPtr.h"
|
||||
#include "llvm/ADT/MapVector.h"
|
||||
#include "llvm/ADT/PointerUnion.h"
|
||||
@@ -16,10 +16,10 @@
|
||||
#ifndef LLVM_UTILS_TABLEGEN_CODEGENTARGET_H
|
||||
#define LLVM_UTILS_TABLEGEN_CODEGENTARGET_H
|
||||
|
||||
#include "Basic/SDNodeProperties.h"
|
||||
#include "CodeGenHwModes.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "SDNodeProperties.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
@@ -7,8 +7,8 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "GlobalISelMatchTable.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "llvm/ADT/Statistic.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Support/LEB128.h"
|
||||
@@ -16,7 +16,7 @@
|
||||
#ifndef LLVM_UTILS_TABLEGEN_GLOBALISELMATCHTABLE_H
|
||||
#define LLVM_UTILS_TABLEGEN_GLOBALISELMATCHTABLE_H
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
#include "llvm/ADT/SmallPtrSet.h"
|
||||
@@ -15,7 +15,7 @@
|
||||
#ifndef LLVM_UTILS_TABLEGEN_GLOBALISELMATCHTABLEEXECUTOREMITTER_H
|
||||
#define LLVM_UTILS_TABLEGEN_GLOBALISELMATCHTABLEEXECUTOREMITTER_H
|
||||
|
||||
#include "SubtargetFeatureInfo.h"
|
||||
#include "Common/SubtargetFeatureInfo.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/StringRef.h"
|
||||
#include "llvm/ADT/Twine.h"
|
||||
@@ -7,11 +7,11 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "Patterns.h"
|
||||
#include "../CodeGenInstruction.h"
|
||||
#include "../CodeGenIntrinsics.h"
|
||||
#include "Basic/CodeGenIntrinsics.h"
|
||||
#include "CXXPredicates.h"
|
||||
#include "CodeExpander.h"
|
||||
#include "CodeExpansions.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "llvm/ADT/StringSet.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
@@ -337,8 +337,8 @@ static void emitInstBits(raw_ostream &IS, raw_ostream &SS, const APInt &Bits,
|
||||
return;
|
||||
}
|
||||
|
||||
IS.indent(4) << "{/*NumBits*/" << Bits.getBitWidth() << ", "
|
||||
<< "/*Index*/" << Index << "},";
|
||||
IS.indent(4) << "{/*NumBits*/" << Bits.getBitWidth() << ", " << "/*Index*/"
|
||||
<< Index << "},";
|
||||
|
||||
SS.indent(4);
|
||||
for (unsigned I = 0; I < Bits.getNumWords(); ++I, ++Index)
|
||||
@@ -371,8 +371,8 @@ void VarLenCodeEmitterGen::emitInstructionBaseValues(
|
||||
if (ModeIt == InstIt->second.end())
|
||||
ModeIt = InstIt->second.find(Universal);
|
||||
if (ModeIt == InstIt->second.end()) {
|
||||
IS.indent(4) << "{/*NumBits*/0, /*Index*/0},\t"
|
||||
<< "// " << R->getName() << " no encoding\n";
|
||||
IS.indent(4) << "{/*NumBits*/0, /*Index*/0},\t" << "// " << R->getName()
|
||||
<< " no encoding\n";
|
||||
continue;
|
||||
}
|
||||
const VarLenInst &VLI = ModeIt->second;
|
||||
@@ -492,10 +492,9 @@ std::string VarLenCodeEmitterGen::getInstructionCaseForEncoding(
|
||||
|
||||
SS << ", /*Pos=*/" << utostr(Offset) << ", Scratch, Fixups, STI);\n";
|
||||
|
||||
SS.indent(I) << "Inst.insertBits("
|
||||
<< "Scratch.extractBits(" << utostr(NumBits) << ", "
|
||||
<< utostr(LoBit) << ")"
|
||||
<< ", " << Offset << ");\n";
|
||||
SS.indent(I) << "Inst.insertBits(" << "Scratch.extractBits("
|
||||
<< utostr(NumBits) << ", " << utostr(LoBit) << ")" << ", "
|
||||
<< Offset << ");\n";
|
||||
|
||||
HighScratchAccess = std::max(HighScratchAccess, NumBits + LoBit);
|
||||
}
|
||||
@@ -64,9 +64,9 @@
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/ADT/IndexedMap.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
|
||||
@@ -10,10 +10,10 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "DAGISelMatcher.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/DAGISelMatcher.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
#include "llvm/TableGen/TableGenBackend.h"
|
||||
|
||||
@@ -10,12 +10,12 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "DAGISelMatcher.h"
|
||||
#include "SDNodeProperties.h"
|
||||
#include "Basic/SDNodeProperties.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/DAGISelMatcher.h"
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
#include "llvm/ADT/MapVector.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "DAGISelMatcher.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "SDNodeProperties.h"
|
||||
#include "Basic/SDNodeProperties.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/DAGISelMatcher.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
|
||||
@@ -10,9 +10,9 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "DAGISelMatcher.h"
|
||||
#include "SDNodeProperties.h"
|
||||
#include "Basic/SDNodeProperties.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/DAGISelMatcher.h"
|
||||
#include "llvm/ADT/StringSet.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "DFAEmitter.h"
|
||||
#include "SequenceToOffsetTable.h"
|
||||
#include "Basic/SequenceToOffsetTable.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
#include "llvm/ADT/UniqueVector.h"
|
||||
|
||||
@@ -14,8 +14,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenSchedule.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenSchedule.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "DFAEmitter.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenTarget.h"
|
||||
#include "SequenceToOffsetTable.h"
|
||||
#include "Basic/SequenceToOffsetTable.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/SmallSet.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenHwModes.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "Common/CodeGenHwModes.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "Common/VarLenCodeEmitterGen.h"
|
||||
#include "TableGenBackends.h"
|
||||
#include "VarLenCodeEmitterGen.h"
|
||||
#include "llvm/ADT/APInt.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/CachedHashString.h"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "TableGenBackends.h"
|
||||
#include "WebAssemblyDisassemblerEmitter.h"
|
||||
#include "X86DisassemblerTables.h"
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "llvm/ADT/StringSwitch.h"
|
||||
#include "llvm/Support/ErrorHandling.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
TableGen
|
||||
)
|
||||
|
||||
add_llvm_library(LLVMTableGenGlobalISel STATIC DISABLE_LLVM_LINK_LLVM_DYLIB
|
||||
CodeExpander.cpp
|
||||
CXXPredicates.cpp
|
||||
MatchDataInfo.cpp
|
||||
Patterns.cpp
|
||||
|
||||
DEPENDS
|
||||
vt_gen
|
||||
)
|
||||
|
||||
# Users may include its headers as "GlobalISel/*.h"
|
||||
target_include_directories(LLVMTableGenGlobalISel
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
|
||||
)
|
||||
@@ -26,18 +26,18 @@
|
||||
///
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenIntrinsics.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "GlobalISel/CXXPredicates.h"
|
||||
#include "GlobalISel/CodeExpander.h"
|
||||
#include "GlobalISel/CodeExpansions.h"
|
||||
#include "GlobalISel/CombinerUtils.h"
|
||||
#include "GlobalISel/MatchDataInfo.h"
|
||||
#include "GlobalISel/Patterns.h"
|
||||
#include "GlobalISelMatchTable.h"
|
||||
#include "GlobalISelMatchTableExecutorEmitter.h"
|
||||
#include "SubtargetFeatureInfo.h"
|
||||
#include "Basic/CodeGenIntrinsics.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/GlobalISel/CXXPredicates.h"
|
||||
#include "Common/GlobalISel/CodeExpander.h"
|
||||
#include "Common/GlobalISel/CodeExpansions.h"
|
||||
#include "Common/GlobalISel/CombinerUtils.h"
|
||||
#include "Common/GlobalISel/GlobalISelMatchTable.h"
|
||||
#include "Common/GlobalISel/GlobalISelMatchTableExecutorEmitter.h"
|
||||
#include "Common/GlobalISel/MatchDataInfo.h"
|
||||
#include "Common/GlobalISel/Patterns.h"
|
||||
#include "Common/SubtargetFeatureInfo.h"
|
||||
#include "llvm/ADT/APInt.h"
|
||||
#include "llvm/ADT/EquivalenceClasses.h"
|
||||
#include "llvm/ADT/Hashing.h"
|
||||
|
||||
@@ -30,15 +30,15 @@
|
||||
///
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenIntrinsics.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "GlobalISelMatchTable.h"
|
||||
#include "GlobalISelMatchTableExecutorEmitter.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "SubtargetFeatureInfo.h"
|
||||
#include "Basic/CodeGenIntrinsics.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/GlobalISel/GlobalISelMatchTable.h"
|
||||
#include "Common/GlobalISel/GlobalISelMatchTableExecutorEmitter.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "Common/SubtargetFeatureInfo.h"
|
||||
#include "llvm/ADT/Statistic.h"
|
||||
#include "llvm/CodeGenTypes/LowLevelType.h"
|
||||
#include "llvm/CodeGenTypes/MachineValueType.h"
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
#include "llvm/TableGen/TableGenBackend.h"
|
||||
#include <string>
|
||||
|
||||
@@ -11,15 +11,15 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenDAGPatterns.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenSchedule.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "PredicateExpander.h"
|
||||
#include "SequenceToOffsetTable.h"
|
||||
#include "SubtargetFeatureInfo.h"
|
||||
#include "Basic/SequenceToOffsetTable.h"
|
||||
#include "Common/CodeGenDAGPatterns.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenSchedule.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/PredicateExpander.h"
|
||||
#include "Common/SubtargetFeatureInfo.h"
|
||||
#include "Common/Types.h"
|
||||
#include "TableGenBackends.h"
|
||||
#include "Types.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
|
||||
@@ -10,8 +10,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenIntrinsics.h"
|
||||
#include "SequenceToOffsetTable.h"
|
||||
#include "Basic/CodeGenIntrinsics.h"
|
||||
#include "Basic/SequenceToOffsetTable.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
|
||||
@@ -38,8 +38,8 @@
|
||||
//
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenTarget.h"
|
||||
#include "PredicateExpander.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/PredicateExpander.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "OptEmitter.h"
|
||||
#include "Common/OptEmitter.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/SmallString.h"
|
||||
#include "llvm/ADT/Twine.h"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "OptEmitter.h"
|
||||
#include "Common/OptEmitter.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/ADT/IndexedMap.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
|
||||
@@ -11,9 +11,9 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "llvm/ADT/BitVector.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
|
||||
@@ -12,12 +12,12 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenHwModes.h"
|
||||
#include "CodeGenRegisters.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "InfoByHwMode.h"
|
||||
#include "SequenceToOffsetTable.h"
|
||||
#include "Types.h"
|
||||
#include "Basic/SequenceToOffsetTable.h"
|
||||
#include "Common/CodeGenHwModes.h"
|
||||
#include "Common/CodeGenRegisters.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/InfoByHwMode.h"
|
||||
#include "Common/Types.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/BitVector.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
|
||||
@@ -13,8 +13,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenIntrinsics.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Basic/CodeGenIntrinsics.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
|
||||
@@ -10,10 +10,10 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenHwModes.h"
|
||||
#include "CodeGenSchedule.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "PredicateExpander.h"
|
||||
#include "Common/CodeGenHwModes.h"
|
||||
#include "Common/CodeGenSchedule.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "Common/PredicateExpander.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/SmallPtrSet.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "WebAssemblyDisassemblerEmitter.h"
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
///
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "X86RecognizableInstr.h"
|
||||
#include "llvm/TableGen/Error.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "X86RecognizableInstr.h"
|
||||
#include "llvm/ADT/StringSwitch.h"
|
||||
#include "llvm/Support/FormattedStream.h"
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "CodeGenTarget.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "Common/CodeGenTarget.h"
|
||||
#include "X86RecognizableInstr.h"
|
||||
#include "llvm/TableGen/Record.h"
|
||||
#include "llvm/TableGen/TableGenBackend.h"
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
#ifndef LLVM_UTILS_TABLEGEN_X86RECOGNIZABLEINSTR_H
|
||||
#define LLVM_UTILS_TABLEGEN_X86RECOGNIZABLEINSTR_H
|
||||
|
||||
#include "CodeGenInstruction.h"
|
||||
#include "Common/CodeGenInstruction.h"
|
||||
#include "llvm/Support/X86DisassemblerDecoderCommon.h"
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
Reference in New Issue
Block a user