Skip to content

Commit 7b4f465

Browse files
alexmalyshevfacebook-github-bot
authored andcommitted
Separate RefcountInsertion to its own library
Summary: Continuing down the path of modularizing the optimization passes. Reviewed By: martindemello Differential Revision: D78897769 fbshipit-source-id: 4690a897a17b35456b2d86a6b98d82bd0e29c523
1 parent acca7fb commit 7b4f465

7 files changed

Lines changed: 30 additions & 18 deletions

File tree

Jit/compiler.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
#include "cinderx/Jit/hir/optimization.h"
1111
#include "cinderx/Jit/hir/phi_elimination.h"
1212
#include "cinderx/Jit/hir/printer.h"
13+
#include "cinderx/Jit/hir/refcount_insertion.h"
1314
#include "cinderx/Jit/hir/ssa.h"
1415
#include "cinderx/Jit/jit_time_log.h"
1516

Jit/hir/optimization.h

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,6 @@
88

99
namespace jit::hir {
1010

11-
// Inserts incref/decref instructions.
12-
class RefcountInsertion : public Pass {
13-
public:
14-
RefcountInsertion() : Pass("RefcountInsertion") {}
15-
16-
void Run(Function& irfunc) override;
17-
18-
static std::unique_ptr<RefcountInsertion> Factory() {
19-
return std::make_unique<RefcountInsertion>();
20-
}
21-
22-
private:
23-
DISALLOW_COPY_AND_ASSIGN(RefcountInsertion);
24-
};
25-
2611
// Perform a mixed bag of strength-reduction optimizations: remove redundant
2712
// null checks, conversions, loads from compile-time constant containers, etc.
2813
//

Jit/hir/refcount_insertion.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
// Copyright (c) Meta Platforms, Inc. and affiliates.
22

3+
#include "cinderx/Jit/hir/refcount_insertion.h"
4+
35
#include "cinderx/Common/log.h"
46
#include "cinderx/Jit/bitvector.h"
57
#include "cinderx/Jit/deopt.h"
68
#include "cinderx/Jit/hir/analysis.h"
79
#include "cinderx/Jit/hir/dead_code_elimination.h"
810
#include "cinderx/Jit/hir/instr_effects.h"
9-
#include "cinderx/Jit/hir/optimization.h"
1011
#include "cinderx/Jit/hir/phi_elimination.h"
1112
#include "cinderx/Jit/hir/printer.h"
1213

Jit/hir/refcount_insertion.h

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
// Copyright (c) Meta Platforms, Inc. and affiliates.
2+
3+
#pragma once
4+
5+
#include "cinderx/Jit/hir/pass.h"
6+
7+
namespace jit::hir {
8+
9+
// Inserts incref/decref instructions.
10+
class RefcountInsertion : public Pass {
11+
public:
12+
RefcountInsertion() : Pass("RefcountInsertion") {}
13+
14+
void Run(Function& irfunc) override;
15+
16+
static std::unique_ptr<RefcountInsertion> Factory() {
17+
return std::make_unique<RefcountInsertion>();
18+
}
19+
20+
private:
21+
DISALLOW_COPY_AND_ASSIGN(RefcountInsertion);
22+
};
23+
24+
} // namespace jit::hir

RuntimeTests/hir_guard_test.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
#include <gtest/gtest.h>
33

44
#include "cinderx/Jit/hir/hir.h"
5-
#include "cinderx/Jit/hir/optimization.h"
65
#include "cinderx/Jit/hir/parser.h"
76
#include "cinderx/Jit/hir/printer.h"
7+
#include "cinderx/Jit/hir/refcount_insertion.h"
88
#include "cinderx/Jit/hir/ssa.h"
99
#include "cinderx/RuntimeTests/fixtures.h"
1010

RuntimeTests/hir_test.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
#include "cinderx/Jit/compiler.h"
88
#include "cinderx/Jit/hir/builder.h"
99
#include "cinderx/Jit/hir/hir.h"
10-
#include "cinderx/Jit/hir/optimization.h"
1110
#include "cinderx/Jit/hir/parser.h"
1211
#include "cinderx/Jit/hir/phi_elimination.h"
1312
#include "cinderx/Jit/hir/printer.h"
13+
#include "cinderx/Jit/hir/refcount_insertion.h"
1414
#include "cinderx/Jit/hir/ssa.h"
1515
#include "cinderx/RuntimeTests/fixtures.h"
1616

RuntimeTests/main.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "cinderx/Jit/hir/dead_code_elimination.h"
1212
#include "cinderx/Jit/hir/optimization.h"
1313
#include "cinderx/Jit/hir/phi_elimination.h"
14+
#include "cinderx/Jit/hir/refcount_insertion.h"
1415
#include "cinderx/RuntimeTests/fixtures.h"
1516
#include "cinderx/RuntimeTests/testutil.h"
1617

0 commit comments

Comments
 (0)