Code refactor in creating platform,texture and cachepolicy (#42)
diff --git a/Source/GmmLib/Utility/GmmLibObject.cpp b/Source/GmmLib/Utility/GmmLibObject.cpp
index 64a0416..5fe891b 100644
--- a/Source/GmmLib/Utility/GmmLibObject.cpp
+++ b/Source/GmmLib/Utility/GmmLibObject.cpp
@@ -64,26 +64,26 @@
}
#endif
GMM_DPF_EXIT;
- if (GFX_GET_CURRENT_RENDERCORE(Platform) >= IGFX_GEN12_CORE)
+ switch(GFX_GET_CURRENT_RENDERCORE(Platform))
{
- return new GmmLib::PlatformInfoGen12(Platform);
+ case IGFX_GEN12LP_CORE:
+ case IGFX_GEN12_CORE:
+ return new GmmLib::PlatformInfoGen12(Platform);
+ break;
+ case IGFX_GEN11_CORE:
+ return new GmmLib::PlatformInfoGen11(Platform);
+ break;
+ case IGFX_GEN10_CORE:
+ return new GmmLib::PlatformInfoGen10(Platform);
+ break;
+ case IGFX_GEN9_CORE:
+ return new GmmLib::PlatformInfoGen9(Platform);
+ break;
+ default:
+ return new GmmLib::PlatformInfoGen8(Platform);
+ break;
}
- else if(GFX_GET_CURRENT_RENDERCORE(Platform) >= IGFX_GEN11_CORE)
- {
- return new GmmLib::PlatformInfoGen11(Platform);
- }
- else if(GFX_GET_CURRENT_RENDERCORE(Platform) >= IGFX_GEN10_CORE)
- {
- return new GmmLib::PlatformInfoGen10(Platform);
- }
- else if(GFX_GET_CURRENT_RENDERCORE(Platform) >= IGFX_GEN9_CORE)
- {
- return new GmmLib::PlatformInfoGen9(Platform);
- }
- else
- {
- return new GmmLib::PlatformInfoGen8(Platform);
- }
+
}
/////////////////////////////////////////////////////////////////////////////////////
@@ -103,34 +103,32 @@
return pGmmGlobalContext->GetCachePolicyObj();
}
- if (GFX_GET_CURRENT_RENDERCORE(pGmmGlobalContext->GetPlatformInfo().Platform) >= IGFX_GEN12_CORE)
- {
- if(pGmmGlobalContext->GetSkuTable().FtrLocalMemory)
+ switch(GFX_GET_CURRENT_RENDERCORE(pGmmGlobalContext->GetPlatformInfo().Platform))
{
- pGmmCachePolicy = new GmmLib::GmmGen12dGPUCachePolicy(CachePolicy);
+ case IGFX_GEN12LP_CORE:
+ case IGFX_GEN12_CORE:
+ if(pGmmGlobalContext->GetSkuTable().FtrLocalMemory)
+ {
+ pGmmCachePolicy = new GmmLib::GmmGen12dGPUCachePolicy(CachePolicy);
+ }
+ else
+ {
+ pGmmCachePolicy = new GmmLib::GmmGen12CachePolicy(CachePolicy);
+ }
+ break;
+ case IGFX_GEN11_CORE:
+ pGmmCachePolicy = new GmmLib::GmmGen11CachePolicy(CachePolicy);
+ break;
+ case IGFX_GEN10_CORE:
+ pGmmCachePolicy = new GmmLib::GmmGen10CachePolicy(CachePolicy);
+ break;
+ case IGFX_GEN9_CORE:
+ pGmmCachePolicy = new GmmLib::GmmGen9CachePolicy(CachePolicy);
+ break;
+ default:
+ pGmmCachePolicy = new GmmLib::GmmGen8CachePolicy(CachePolicy);
+ break;
}
- else
- {
- pGmmCachePolicy = new GmmLib::GmmGen12CachePolicy(CachePolicy);
- }
- }
- else if(GFX_GET_CURRENT_RENDERCORE(pGmmGlobalContext->GetPlatformInfo().Platform) >= IGFX_GEN11_CORE)
- {
- pGmmCachePolicy = new GmmLib::GmmGen11CachePolicy(CachePolicy);
- }
- else if(GFX_GET_CURRENT_RENDERCORE(pGmmGlobalContext->GetPlatformInfo().Platform) >= IGFX_GEN10_CORE)
- {
- pGmmCachePolicy = new GmmLib::GmmGen10CachePolicy(CachePolicy);
- }
-
- else if(GFX_GET_CURRENT_RENDERCORE(pGmmGlobalContext->GetPlatformInfo().Platform) >= IGFX_GEN9_CORE)
- {
- pGmmCachePolicy = new GmmLib::GmmGen9CachePolicy(CachePolicy);
- }
- else
- {
- pGmmCachePolicy = new GmmLib::GmmGen8CachePolicy(CachePolicy);
- }
if(!pGmmCachePolicy)
{
@@ -177,6 +175,7 @@
case IGFX_GEN11_CORE:
return new GmmGen11TextureCalc();
break;
+ case IGFX_GEN12LP_CORE:
case IGFX_GEN12_CORE:
default:
return new GmmGen12TextureCalc();