| 577 | } |
| 578 | |
| 579 | bool spvOpcodeIsCommutativeBinaryOperator(spv::Op opcode) { |
| 580 | switch (opcode) { |
| 581 | case spv::Op::OpPtrEqual: |
| 582 | case spv::Op::OpPtrNotEqual: |
| 583 | case spv::Op::OpIAdd: |
| 584 | case spv::Op::OpFAdd: |
| 585 | case spv::Op::OpIMul: |
| 586 | case spv::Op::OpFMul: |
| 587 | case spv::Op::OpDot: |
| 588 | case spv::Op::OpIAddCarry: |
| 589 | case spv::Op::OpUMulExtended: |
| 590 | case spv::Op::OpSMulExtended: |
| 591 | case spv::Op::OpBitwiseOr: |
| 592 | case spv::Op::OpBitwiseXor: |
| 593 | case spv::Op::OpBitwiseAnd: |
| 594 | case spv::Op::OpOrdered: |
| 595 | case spv::Op::OpUnordered: |
| 596 | case spv::Op::OpLogicalEqual: |
| 597 | case spv::Op::OpLogicalNotEqual: |
| 598 | case spv::Op::OpLogicalOr: |
| 599 | case spv::Op::OpLogicalAnd: |
| 600 | case spv::Op::OpIEqual: |
| 601 | case spv::Op::OpINotEqual: |
| 602 | case spv::Op::OpFOrdEqual: |
| 603 | case spv::Op::OpFUnordEqual: |
| 604 | case spv::Op::OpFOrdNotEqual: |
| 605 | case spv::Op::OpFUnordNotEqual: |
| 606 | return true; |
| 607 | default: |
| 608 | return false; |
| 609 | } |
| 610 | } |
| 611 | |
| 612 | bool spvOpcodeIsLinearAlgebra(spv::Op opcode) { |
| 613 | switch (opcode) { |
no outgoing calls
no test coverage detected