emit_spirv_logical.cpp 715 B

1234567891011121314151617181920212223242526
  1. // Copyright 2021 yuzu Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #include "shader_recompiler/backend/spirv/emit_spirv.h"
  5. #include "shader_recompiler/backend/spirv/emit_spirv_instructions.h"
  6. namespace Shader::Backend::SPIRV {
  7. Id EmitLogicalOr(EmitContext& ctx, Id a, Id b) {
  8. return ctx.OpLogicalOr(ctx.U1, a, b);
  9. }
  10. Id EmitLogicalAnd(EmitContext& ctx, Id a, Id b) {
  11. return ctx.OpLogicalAnd(ctx.U1, a, b);
  12. }
  13. Id EmitLogicalXor(EmitContext& ctx, Id a, Id b) {
  14. return ctx.OpLogicalNotEqual(ctx.U1, a, b);
  15. }
  16. Id EmitLogicalNot(EmitContext& ctx, Id value) {
  17. return ctx.OpLogicalNot(ctx.U1, value);
  18. }
  19. } // namespace Shader::Backend::SPIRV