1
- // ===- MooreToCore.cpp - Moore To Core Conversion Pass --------------------===//
1
+ // ===-------------------------------------------------- --------------------===//
2
2
//
3
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
4
// See https://llvm.org/LICENSE.txt for license information.
5
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
6
//
7
7
// ===----------------------------------------------------------------------===//
8
- //
9
- // This is the main Moore to Core Conversion Pass Implementation.
10
- //
11
- // ===----------------------------------------------------------------------===//
12
8
13
9
#include " circt/Conversion/MooreToCore.h"
14
10
#include " circt/Dialect/Comb/CombOps.h"
@@ -1821,17 +1817,31 @@ static void populateOpConversion(RewritePatternSet &patterns,
1821
1817
SExtOpConversion,
1822
1818
1823
1819
// Patterns of miscellaneous operations.
1824
- ConstantOpConv, ConcatOpConversion, ReplicateOpConversion,
1820
+ ConstantOpConv,
1821
+ ConcatOpConversion,
1822
+ ReplicateOpConversion,
1825
1823
ConstantTimeOpConv,
1826
- ExtractOpConversion, DynExtractOpConversion, DynExtractRefOpConversion,
1824
+ ExtractOpConversion,
1825
+ DynExtractOpConversion,
1826
+ DynExtractRefOpConversion,
1827
1827
ReadOpConversion,
1828
- StructExtractOpConversion, StructExtractRefOpConversion,
1829
- ExtractRefOpConversion, StructCreateOpConversion, ConditionalOpConversion, ArrayCreateOpConversion,
1830
- YieldOpConversion, OutputOpConversion, StringConstantOpConv,
1828
+ StructExtractOpConversion,
1829
+ StructExtractRefOpConversion,
1830
+ ExtractRefOpConversion,
1831
+ StructCreateOpConversion,
1832
+ ConditionalOpConversion,
1833
+ ArrayCreateOpConversion,
1834
+ YieldOpConversion,
1835
+ OutputOpConversion,
1836
+ StringConstantOpConv,
1831
1837
1832
1838
// Patterns of unary operations.
1833
- ReduceAndOpConversion, ReduceOrOpConversion, ReduceXorOpConversion,
1834
- BoolCastOpConversion, NotOpConversion, NegOpConversion,
1839
+ ReduceAndOpConversion,
1840
+ ReduceOrOpConversion,
1841
+ ReduceXorOpConversion,
1842
+ BoolCastOpConversion,
1843
+ NotOpConversion,
1844
+ NegOpConversion,
1835
1845
1836
1846
// Patterns of binary operations.
1837
1847
BinaryOpConversion<AddOp, comb::AddOp>,
@@ -1874,7 +1884,9 @@ static void populateOpConversion(RewritePatternSet &patterns,
1874
1884
WaitDelayOpConversion,
1875
1885
1876
1886
// Patterns of shifting operations.
1877
- ShrOpConversion, ShlOpConversion, AShrOpConversion,
1887
+ ShrOpConversion,
1888
+ ShlOpConversion,
1889
+ AShrOpConversion,
1878
1890
1879
1891
// Patterns of assignment operations.
1880
1892
AssignOpConversion<ContinuousAssignOp, 0 , 1 >,
@@ -1883,11 +1895,14 @@ static void populateOpConversion(RewritePatternSet &patterns,
1883
1895
AssignedVariableOpConversion,
1884
1896
1885
1897
// Patterns of branch operations.
1886
- CondBranchOpConversion, BranchOpConversion,
1898
+ CondBranchOpConversion,
1899
+ BranchOpConversion,
1887
1900
1888
1901
// Patterns of other operations outside Moore dialect.
1889
- HWInstanceOpConversion, ReturnOpConversion,
1890
- CallOpConversion, UnrealizedConversionCastConversion,
1902
+ HWInstanceOpConversion,
1903
+ ReturnOpConversion,
1904
+ CallOpConversion,
1905
+ UnrealizedConversionCastConversion,
1891
1906
InPlaceOpConversion<debug::ArrayOp>,
1892
1907
InPlaceOpConversion<debug::StructOp>,
1893
1908
InPlaceOpConversion<debug::VariableOp>,
0 commit comments