Skip to content

Commit 12ea099

Browse files
cmarcelolanza
authored andcommitted
[CIR][CodeGen] Add missing conversion patterns for ControlFlowDialect
Fixes #4.
1 parent 10aff52 commit 12ea099

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

clang/lib/CIR/CodeGen/LowerToLLVM.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
#include "mlir/Conversion/AffineToStandard/AffineToStandard.h"
1414
#include "mlir/Conversion/ArithToLLVM/ArithToLLVM.h"
15+
#include "mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h"
1516
#include "mlir/Conversion/FuncToLLVM/ConvertFuncToLLVM.h"
1617
#include "mlir/Conversion/FuncToLLVM/ConvertFuncToLLVMPass.h"
1718
#include "mlir/Conversion/LLVMCommon/ConversionTarget.h"
@@ -492,6 +493,8 @@ void ConvertCIRToLLVMPass::runOnOperation() {
492493
populateAffineToStdConversionPatterns(patterns);
493494
mlir::arith::populateArithToLLVMConversionPatterns(typeConverter, patterns);
494495
populateSCFToControlFlowConversionPatterns(patterns);
496+
mlir::cf::populateControlFlowToLLVMConversionPatterns(typeConverter,
497+
patterns);
495498
populateFinalizeMemRefToLLVMConversionPatterns(typeConverter, patterns);
496499
populateFuncToLLVMConversionPatterns(typeConverter, patterns);
497500

clang/test/CIR/CIRToLLVM/goto.cir

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
// RUN: cir-tool %s -canonicalize -cir-to-func -cir-to-memref -o - | FileCheck %s -check-prefix=MLIR
22
// RUN: cir-tool %s -canonicalize -cir-to-func -cir-to-memref -cir-to-llvm -o - | mlir-translate -mlir-to-llvmir | FileCheck %s -check-prefix=LLVM
3-
4-
// FIXME: after rebasing against July's 2022 mlir, we get "failed to legalize
5-
// operation 'cf.br'" from -cir-to-llvm
63
// XFAIL: *
74

85
module {

0 commit comments

Comments
 (0)