File tree Expand file tree Collapse file tree 1 file changed +19
-0
lines changed
lib/vast/Conversion/Parser Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -552,6 +552,24 @@ namespace vast::conv {
552552 }
553553 };
554554
555+ struct AssignConversion
556+ : one_to_one_conversion_pattern< hl::AssignOp, pr::Assign >
557+ {
558+ using op_t = hl::AssignOp;
559+ using base = one_to_one_conversion_pattern< op_t , pr::Assign >;
560+ using base::base;
561+
562+ using adaptor_t = typename op_t ::Adaptor;
563+
564+ logical_result matchAndRewrite (
565+ op_t op, adaptor_t adaptor, conversion_rewriter &rewriter
566+ ) const override {
567+ auto args = realized_operand_values (adaptor.getOperands (), rewriter);
568+ rewriter.replaceOpWithNewOp < pr::Assign >(op, std::vector< mlir_type >(), args);
569+ return mlir::success ();
570+ }
571+ };
572+
555573 struct ExprConversion
556574 : parser_conversion_pattern_base< hl::ExprOp >
557575 {
@@ -643,6 +661,7 @@ namespace vast::conv {
643661 ToNoParse< hl::MulFOp >, ToNoParse< hl::DivFOp >,
644662 ToNoParse< hl::RemFOp >,
645663 // Other operations
664+ AssignConversion,
646665 ExprConversion,
647666 FuncConversion,
648667 ParamConversion,
You can’t perform that action at this time.
0 commit comments