Merged PR 81: Remove dynamic_cast.

Remove dynamic_cast.
This commit is contained in:
Xiang_Li (XBox) 2018-06-01 19:44:57 +00:00 коммит произвёл Tex Riddell
Родитель df033577ee
Коммит f968cbf19e
1 изменённых файлов: 7 добавлений и 3 удалений

Просмотреть файл

@ -758,7 +758,8 @@ static DXIL::SamplerKind GetSamplerKind(Value *samplerHandle, ValidationContext
if (!Res) {
return EmitError();
}
if (DxilSampler *S = dynamic_cast<DxilSampler *>(Res)) {
if (Res->GetClass() == DXIL::ResourceClass::Sampler) {
DxilSampler *S = (DxilSampler *)(Res);
return S->GetSamplerKind();
} else {
return EmitError();
@ -841,7 +842,9 @@ static DXIL::ResourceKind GetResourceKindAndCompTy(Value *handle, DXIL::Componen
return EmitError();
}
// TODO: resIndex for Uav Counter.
if (DxilResource *Res = dynamic_cast<DxilResource *>(res)) {
if (res->GetClass() == DXIL::ResourceClass::UAV ||
res->GetClass() == DXIL::ResourceClass::SRV) {
DxilResource *Res = (DxilResource*)(res);
CompTy = Res->GetCompType().GetKind();
} else {
return EmitError();
@ -1219,7 +1222,8 @@ static int GetCBufSize(Value *cbHandle, ValidationContext &ValCtx) {
if (!Res) {
return EmitError();
}
if (DxilCBuffer *CB = dynamic_cast<DxilCBuffer *>(Res)) {
if (Res->GetClass() == DXIL::ResourceClass::CBuffer) {
DxilCBuffer *CB = (DxilCBuffer *)(Res);
return CB->GetSize();
} else {
return EmitError();