1 //===- ControlFlowToSPIRV.h - CF to SPIR-V Patterns --------*- C++ ------*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 // 9 // Provides patterns to convert ControlFlow dialect to SPIR-V dialect. 10 // 11 //===----------------------------------------------------------------------===// 12 13 #ifndef MLIR_CONVERSION_CONTROLFLOWTOSPIRV_CONTROLFLOWTOSPIRV_H 14 #define MLIR_CONVERSION_CONTROLFLOWTOSPIRV_CONTROLFLOWTOSPIRV_H 15 16 namespace mlir { 17 class RewritePatternSet; 18 class SPIRVTypeConverter; 19 20 namespace cf { 21 /// Appends to a pattern list additional patterns for translating ControlFLow 22 /// ops to SPIR-V ops. 23 void populateControlFlowToSPIRVPatterns(SPIRVTypeConverter &typeConverter, 24 RewritePatternSet &patterns); 25 } // namespace cf 26 } // namespace mlir 27 28 #endif // MLIR_CONVERSION_CONTROLFLOWTOSPIRV_CONTROLFLOWTOSPIRV_H 29