| 301 | } |
| 302 | |
| 303 | bool spvOpcodeIsLoad(const spv::Op opcode) { |
| 304 | switch (opcode) { |
| 305 | case spv::Op::OpLoad: |
| 306 | case spv::Op::OpImageSampleExplicitLod: |
| 307 | case spv::Op::OpImageSampleImplicitLod: |
| 308 | case spv::Op::OpImageSampleDrefImplicitLod: |
| 309 | case spv::Op::OpImageSampleDrefExplicitLod: |
| 310 | case spv::Op::OpImageSampleProjImplicitLod: |
| 311 | case spv::Op::OpImageSampleProjExplicitLod: |
| 312 | case spv::Op::OpImageSampleProjDrefImplicitLod: |
| 313 | case spv::Op::OpImageSampleProjDrefExplicitLod: |
| 314 | case spv::Op::OpImageSampleFootprintNV: |
| 315 | case spv::Op::OpImageFetch: |
| 316 | case spv::Op::OpImageGather: |
| 317 | case spv::Op::OpImageDrefGather: |
| 318 | case spv::Op::OpImageRead: |
| 319 | case spv::Op::OpImageSparseSampleImplicitLod: |
| 320 | case spv::Op::OpImageSparseSampleExplicitLod: |
| 321 | case spv::Op::OpImageSparseSampleDrefExplicitLod: |
| 322 | case spv::Op::OpImageSparseSampleDrefImplicitLod: |
| 323 | case spv::Op::OpImageSparseFetch: |
| 324 | case spv::Op::OpImageSparseGather: |
| 325 | case spv::Op::OpImageSparseDrefGather: |
| 326 | case spv::Op::OpImageSparseRead: |
| 327 | return true; |
| 328 | default: |
| 329 | return false; |
| 330 | } |
| 331 | } |
| 332 | |
| 333 | bool spvOpcodeIsBranch(spv::Op opcode) { |
| 334 | switch (opcode) { |