Similar to D127536, if any of the operands for FCmpOp is a vector, returns a vector<Nxi1> rather than an i1 type result.
Details
Diff Detail
Event Timeline
mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp | ||
---|---|---|
923 | does llvm.fmp do implicit broadcasting? |
mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp | ||
---|---|---|
923 | I just checked LLVM IR and LLVM Dialect's semantic and surprisingly found that neither llvm.icmp nor llvm.fcmp (and their LLVM IR counterparts) do implicit broadcasting: LLVM IR simply says that operands under comparison should have identical types. Let me cleanup the code here. What I'm more curious is why did the original ICmpOp::build do implicit broadcasting at the first place? |
Do not broadcast when the operand types are different
mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp | ||
---|---|---|
923 |
nvm, it was me that first did implicit broadcasting for ICmpOp::build in D127536 for reason I cannot remember now. |
does llvm.fmp do implicit broadcasting?