diff options
| author | Ellie Hermaszewska <ellieh@nvidia.com> | 2024-11-06 01:47:26 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-05 09:47:26 -0800 |
| commit | b118451e301d734e3e783b3acdf871f3f6ea851c (patch) | |
| tree | 277f160d31e2c442f724bc6a2d3c09fabff403ca /source/slang/slang-emit-wgsl.cpp | |
| parent | 53dd5928c35d5a5cb1f7d2a563348fd1fa87d672 (diff) | |
Move switch statement bodies to their own lines (#5493)
* Move switch statement bodies to their own lines
* format
---------
Co-authored-by: Yong He <yonghe@outlook.com>
Diffstat (limited to 'source/slang/slang-emit-wgsl.cpp')
| -rw-r--r-- | source/slang/slang-emit-wgsl.cpp | 161 |
1 files changed, 116 insertions, 45 deletions
diff --git a/source/slang/slang-emit-wgsl.cpp b/source/slang/slang-emit-wgsl.cpp index d8ec01776..52ff790d7 100644 --- a/source/slang/slang-emit-wgsl.cpp +++ b/source/slang/slang-emit-wgsl.cpp @@ -114,8 +114,12 @@ void WGSLSourceEmitter::emitEntryPointAttributesImpl( switch (stage) { - case Stage::Fragment: m_writer->emit("@fragment\n"); break; - case Stage::Vertex: m_writer->emit("@vertex\n"); break; + case Stage::Fragment: + m_writer->emit("@fragment\n"); + break; + case Stage::Vertex: + m_writer->emit("@vertex\n"); + break; case Stage::Compute: { @@ -137,7 +141,8 @@ void WGSLSourceEmitter::emitEntryPointAttributesImpl( } break; - default: SLANG_ABORT_COMPILATION("unsupported stage."); + default: + SLANG_ABORT_COMPILATION("unsupported stage."); } } @@ -231,15 +236,25 @@ void WGSLSourceEmitter::emit(const AddressSpace addressSpace) { switch (addressSpace) { - case AddressSpace::Uniform: m_writer->emit("uniform"); break; + case AddressSpace::Uniform: + m_writer->emit("uniform"); + break; - case AddressSpace::StorageBuffer: m_writer->emit("storage"); break; + case AddressSpace::StorageBuffer: + m_writer->emit("storage"); + break; - case AddressSpace::Generic: m_writer->emit("function"); break; + case AddressSpace::Generic: + m_writer->emit("function"); + break; - case AddressSpace::ThreadLocal: m_writer->emit("private"); break; + case AddressSpace::ThreadLocal: + m_writer->emit("private"); + break; - case AddressSpace::GroupShared: m_writer->emit("workgroup"); break; + case AddressSpace::GroupShared: + m_writer->emit("workgroup"); + break; } } @@ -252,22 +267,38 @@ static const char* getWgslImageFormat(IRTextureTypeBase* type) type->hasFormat() ? (ImageFormat)type->getFormat() : ImageFormat::unknown; switch (imageFormat) { - case ImageFormat::rgba8: return "rgba8unorm"; - case ImageFormat::rgba8_snorm: return "rgba8snorm"; - case ImageFormat::rgba8ui: return "rgba8uint"; - case ImageFormat::rgba8i: return "rgba8sint"; - case ImageFormat::rgba16ui: return "rgba16uint"; - case ImageFormat::rgba16i: return "rgba16sint"; - case ImageFormat::rgba16f: return "rgba16float"; - case ImageFormat::r32ui: return "r32uint"; - case ImageFormat::r32i: return "r32sint"; - case ImageFormat::r32f: return "r32float"; - case ImageFormat::rg32ui: return "rg32uint"; - case ImageFormat::rg32i: return "rg32sint"; - case ImageFormat::rg32f: return "rg32float"; - case ImageFormat::rgba32ui: return "rgba32uint"; - case ImageFormat::rgba32i: return "rgba32sint"; - case ImageFormat::rgba32f: return "rgba32float"; + case ImageFormat::rgba8: + return "rgba8unorm"; + case ImageFormat::rgba8_snorm: + return "rgba8snorm"; + case ImageFormat::rgba8ui: + return "rgba8uint"; + case ImageFormat::rgba8i: + return "rgba8sint"; + case ImageFormat::rgba16ui: + return "rgba16uint"; + case ImageFormat::rgba16i: + return "rgba16sint"; + case ImageFormat::rgba16f: + return "rgba16float"; + case ImageFormat::r32ui: + return "r32uint"; + case ImageFormat::r32i: + return "r32sint"; + case ImageFormat::r32f: + return "r32float"; + case ImageFormat::rg32ui: + return "rg32uint"; + case ImageFormat::rg32i: + return "rg32sint"; + case ImageFormat::rg32f: + return "rg32float"; + case ImageFormat::rgba32ui: + return "rgba32uint"; + case ImageFormat::rgba32i: + return "rgba32sint"; + case ImageFormat::rgba32f: + return "rgba32float"; case ImageFormat::unknown: // Unlike SPIR-V, WGSL doesn't have a texel format for "unknown". return "rgba32float"; @@ -317,7 +348,9 @@ void WGSLSourceEmitter::emitSimpleTypeImpl(IRType* type) return; } - case kIROp_FloatType: m_writer->emit("f32"); break; + case kIROp_FloatType: + m_writer->emit("f32"); + break; case kIROp_DoubleType: // There is no "f64" type in WGSL SLANG_UNEXPECTED("'double' type emitted"); @@ -331,20 +364,34 @@ void WGSLSourceEmitter::emitSimpleTypeImpl(IRType* type) m_f16ExtensionEnabled = true; m_writer->emit("f16"); break; - case kIROp_BoolType: m_writer->emit("bool"); break; - case kIROp_IntType: m_writer->emit("i32"); break; - case kIROp_UIntType: m_writer->emit("u32"); break; + case kIROp_BoolType: + m_writer->emit("bool"); + break; + case kIROp_IntType: + m_writer->emit("i32"); + break; + case kIROp_UIntType: + m_writer->emit("u32"); + break; case kIROp_UInt64Type: { m_writer->emit(getDefaultBuiltinTypeName(type->getOp())); return; } case kIROp_Int16Type: - case kIROp_UInt16Type: SLANG_UNEXPECTED("16 bit integer value emitted"); return; + case kIROp_UInt16Type: + SLANG_UNEXPECTED("16 bit integer value emitted"); + return; case kIROp_Int64Type: - case kIROp_IntPtrType: m_writer->emit("i64"); return; - case kIROp_UIntPtrType: m_writer->emit("u64"); return; - case kIROp_StructType: m_writer->emit(getName(type)); return; + case kIROp_IntPtrType: + m_writer->emit("i64"); + return; + case kIROp_UIntPtrType: + m_writer->emit("u64"); + return; + case kIROp_StructType: + m_writer->emit(getName(type)); + return; case kIROp_VectorType: { @@ -406,8 +453,12 @@ void WGSLSourceEmitter::emitSimpleTypeImpl(IRType* type) switch (texType->getAccess()) { case SLANG_RESOURCE_ACCESS_WRITE: - case SLANG_RESOURCE_ACCESS_READ_WRITE: m_writer->emit("texture_storage"); break; - default: m_writer->emit("texture"); break; + case SLANG_RESOURCE_ACCESS_READ_WRITE: + m_writer->emit("texture_storage"); + break; + default: + m_writer->emit("texture"); + break; } if (texType->isShadow()) @@ -422,10 +473,18 @@ void WGSLSourceEmitter::emitSimpleTypeImpl(IRType* type) switch (texType->GetBaseShape()) { - case SLANG_TEXTURE_1D: m_writer->emit("_1d"); break; - case SLANG_TEXTURE_2D: m_writer->emit("_2d"); break; - case SLANG_TEXTURE_3D: m_writer->emit("_3d"); break; - case SLANG_TEXTURE_CUBE: m_writer->emit("_cube"); break; + case SLANG_TEXTURE_1D: + m_writer->emit("_1d"); + break; + case SLANG_TEXTURE_2D: + m_writer->emit("_2d"); + break; + case SLANG_TEXTURE_3D: + m_writer->emit("_3d"); + break; + case SLANG_TEXTURE_CUBE: + m_writer->emit("_cube"); + break; } if (texType->isArray()) @@ -467,7 +526,8 @@ void WGSLSourceEmitter::emitSimpleTypeImpl(IRType* type) m_writer->emit(">"); return; } - default: break; + default: + break; } } @@ -531,7 +591,9 @@ void WGSLSourceEmitter::emitVarKeywordImpl(IRType* type, IRInst* varDecl) { case kIROp_GlobalParam: case kIROp_GlobalVar: - case kIROp_Var: m_writer->emit("var"); break; + case kIROp_Var: + m_writer->emit("var"); + break; default: if (isStaticConst(varDecl)) m_writer->emit("const"); @@ -587,8 +649,12 @@ void WGSLSourceEmitter::_emitType(IRType* type, DeclaratorInfo* declarator) { case kIROp_ArrayType: case kIROp_AttributedType: - case kIROp_UnsizedArrayType: emitSimpleTypeAndDeclarator(type, declarator); break; - default: CLikeSourceEmitter::_emitType(type, declarator); break; + case kIROp_UnsizedArrayType: + emitSimpleTypeAndDeclarator(type, declarator); + break; + default: + CLikeSourceEmitter::_emitType(type, declarator); + break; } } @@ -665,7 +731,9 @@ void WGSLSourceEmitter::emitDeclaratorImpl(DeclaratorInfo* declarator) } break; - default: SLANG_DIAGNOSE_UNEXPECTED(getSink(), SourceLoc(), "unknown declarator flavor"); break; + default: + SLANG_DIAGNOSE_UNEXPECTED(getSink(), SourceLoc(), "unknown declarator flavor"); + break; } } @@ -838,7 +906,9 @@ void WGSLSourceEmitter::emitSimpleValueImpl(IRInst* inst) } break; - default: SLANG_UNIMPLEMENTED_X("val case for emit"); break; + default: + SLANG_UNIMPLEMENTED_X("val case for emit"); + break; } } @@ -851,7 +921,8 @@ bool WGSLSourceEmitter::tryEmitInstStmtImpl(IRInst* inst) { switch (inst->getOp()) { - default: return false; + default: + return false; case kIROp_AtomicLoad: { emitInstResultDecl(inst); |
