[mlir][spirv] Serialize all operands together if possible
SPIR-V ops can mix operands and attributes in the definition. These operands and attributes are serialized in the exact order of the definition to match SPIR-V binary format requirements. It can cause excessive generated code bloat because we are emitting code to handle each operand/attribute separately. So here we probe first to check whether all the operands are ahead of attributes. Then we can serialize all operands together. This removes ~1000 lines of code from the generated inc file. Differential Revision: https://reviews.llvm.org/D79446
Loading
Please sign in to comment