Skip to content

Commit 12bf9cd

Browse files
committed
[TableGen][NFCI] Change TableGenMain() to take function_ref.
It was switched from a function pointer to std::function in TableGen: Make 2nd arg MainFn of TableGenMain(argv0, MainFn) optional. f675ec6 but there's no mention of any particular reason for that.
1 parent ad20628 commit 12bf9cd

File tree

3 files changed

+9
-13
lines changed

3 files changed

+9
-13
lines changed

llvm/include/llvm/TableGen/Main.h

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
#define LLVM_TABLEGEN_MAIN_H
1515

1616
#include "llvm/Support/CommandLine.h"
17-
#include <functional>
1817
#include <map>
1918

2019
namespace llvm {
@@ -30,18 +29,17 @@ struct TableGenOutputFiles {
3029
};
3130

3231
/// Returns true on error, false otherwise.
33-
using TableGenMainFn = bool(raw_ostream &OS, const RecordKeeper &Records);
32+
using TableGenMainFn =
33+
function_ref<bool(raw_ostream &OS, const RecordKeeper &Records)>;
3434

3535
/// Perform the action using Records, and store output in OutFiles.
3636
/// Returns true on error, false otherwise.
37-
using MultiFileTableGenMainFn = bool(TableGenOutputFiles &OutFiles,
38-
const RecordKeeper &Records);
37+
using MultiFileTableGenMainFn = function_ref<bool(TableGenOutputFiles &OutFiles,
38+
const RecordKeeper &Records)>;
3939

40-
int TableGenMain(const char *argv0,
41-
std::function<TableGenMainFn> MainFn = nullptr);
40+
int TableGenMain(const char *argv0, TableGenMainFn MainFn = nullptr);
4241

43-
int TableGenMain(const char *argv0,
44-
std::function<MultiFileTableGenMainFn> MainFn = nullptr);
42+
int TableGenMain(const char *argv0, MultiFileTableGenMainFn MainFn = nullptr);
4543

4644
/// Controls emitting large character arrays as strings or character arrays.
4745
/// Typically set to false when building with MSVC.

llvm/lib/TableGen/Main.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,7 @@ static int WriteOutput(const TGParser &Parser, const char *argv0,
127127
return 0;
128128
}
129129

130-
int llvm::TableGenMain(const char *argv0,
131-
std::function<MultiFileTableGenMainFn> MainFn) {
130+
int llvm::TableGenMain(const char *argv0, MultiFileTableGenMainFn MainFn) {
132131
RecordKeeper Records;
133132
TGTimer &Timer = Records.getTimer();
134133

@@ -210,8 +209,7 @@ int llvm::TableGenMain(const char *argv0,
210209
return 0;
211210
}
212211

213-
int llvm::TableGenMain(const char *argv0,
214-
std::function<TableGenMainFn> MainFn) {
212+
int llvm::TableGenMain(const char *argv0, TableGenMainFn MainFn) {
215213
return TableGenMain(argv0, [&MainFn](TableGenOutputFiles &OutFiles,
216214
const RecordKeeper &Records) {
217215
std::string S;

llvm/utils/TableGen/Basic/TableGen.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ int tblgen_main(int argc, char **argv) {
7373
InitLLVM X(argc, argv);
7474
cl::ParseCommandLineOptions(argc, argv);
7575

76-
std::function<MultiFileTableGenMainFn> MainFn = nullptr;
76+
MultiFileTableGenMainFn MainFn = nullptr;
7777
return TableGenMain(argv[0], MainFn);
7878
}
7979

0 commit comments

Comments
 (0)