Jlm
Loading...
Searching...
No Matches
MLIRConverterCommon.cpp
Go to the documentation of this file.
1/*
2 * Copyright 2024 HÃ¥vard Krogstie <krogstie.havard@gmail.com>
3 * See COPYING for terms of redistribution.
4 */
5
7
8namespace jlm::mlir
9{
10
11// Mapping between each MLIR FP comparison predicate and JLM fpcmp value
12const util::BijectiveMap<::mlir::arith::CmpFPredicate, llvm::fpcmp> &
14{
16 { ::mlir::arith::CmpFPredicate::AlwaysTrue, llvm::fpcmp::TRUE },
17 { ::mlir::arith::CmpFPredicate::AlwaysFalse, llvm::fpcmp::FALSE },
18 { ::mlir::arith::CmpFPredicate::OEQ, llvm::fpcmp::oeq },
19 { ::mlir::arith::CmpFPredicate::OGT, llvm::fpcmp::ogt },
20 { ::mlir::arith::CmpFPredicate::OGE, llvm::fpcmp::oge },
21 { ::mlir::arith::CmpFPredicate::OLT, llvm::fpcmp::olt },
22 { ::mlir::arith::CmpFPredicate::OLE, llvm::fpcmp::ole },
23 { ::mlir::arith::CmpFPredicate::ONE, llvm::fpcmp::one },
24 { ::mlir::arith::CmpFPredicate::ORD, llvm::fpcmp::ord },
25 { ::mlir::arith::CmpFPredicate::UEQ, llvm::fpcmp::ueq },
26 { ::mlir::arith::CmpFPredicate::UGT, llvm::fpcmp::ugt },
27 { ::mlir::arith::CmpFPredicate::UGE, llvm::fpcmp::uge },
28 { ::mlir::arith::CmpFPredicate::ULT, llvm::fpcmp::ult },
29 { ::mlir::arith::CmpFPredicate::ULE, llvm::fpcmp::ule },
30 { ::mlir::arith::CmpFPredicate::UNE, llvm::fpcmp::une },
31 { ::mlir::arith::CmpFPredicate::UNO, llvm::fpcmp::uno }
32 };
33 return mapping;
34}
35
36} // namespace jlm::mlir
const util::BijectiveMap<::mlir::arith::CmpFPredicate, llvm::fpcmp > & GetFpCmpPredicateMap()