From a195cf64300f21717061a5cd01c24c98be61d6cd Mon Sep 17 00:00:00 2001 From: Mateusz Borzyszkowski Date: Mon, 18 Sep 2023 12:11:52 +0000 Subject: [PATCH] Add ARL functionality Add ARL functionality --- IGC/AdaptorCommon/API/igc.h | 1 + IGC/Compiler/CISACodeGen/EmitVISAPass.cpp | 5 +++-- IGC/Compiler/CISACodeGen/Platform.hpp | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/IGC/AdaptorCommon/API/igc.h b/IGC/AdaptorCommon/API/igc.h index 1c4b3531b2ee..5ab5960e3aca 100644 --- a/IGC/AdaptorCommon/API/igc.h +++ b/IGC/AdaptorCommon/API/igc.h @@ -164,6 +164,7 @@ typedef enum CODE_PATCH_NO_PullSnapped = ( 0x1 << 0x1 ), CODE_PATCH_NO_PullCentroid = ( 0x1 << 0x2 ), CODE_PATCH_NO_ZWDelta = ( 0x1 << 0x3 ), + CODE_PATCH_NO_UNSTABLE_PLATFORM = ( 0x1 << 0x4 ), } CODE_PATCH_FLAG_t; // Fastest compilation experimental flags diff --git a/IGC/Compiler/CISACodeGen/EmitVISAPass.cpp b/IGC/Compiler/CISACodeGen/EmitVISAPass.cpp index 132d22289f9b..b231c4eebc74 100644 --- a/IGC/Compiler/CISACodeGen/EmitVISAPass.cpp +++ b/IGC/Compiler/CISACodeGen/EmitVISAPass.cpp @@ -781,12 +781,13 @@ bool EmitPass::runOnFunction(llvm::Function& F) ++I; } } - if ((IGC_GET_FLAG_VALUE(CodePatchFilter) & (0x1 << 0x4)) && + if ((IGC_GET_FLAG_VALUE(CodePatchFilter) & CODE_PATCH_NO_UNSTABLE_PLATFORM) && (m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_DG2 || m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_ALDERLAKE_P || m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_ALDERLAKE_N || m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_ALDERLAKE_S || - m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_METEORLAKE)) { + m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_METEORLAKE || + m_pCtx->platform.getPlatformInfo().eProductFamily == IGFX_ARROWLAKE)) { m_encoder->SetIsCodePatchCandidate(false); } } diff --git a/IGC/Compiler/CISACodeGen/Platform.hpp b/IGC/Compiler/CISACodeGen/Platform.hpp index e24a724abb93..7eb2b5e4d310 100644 --- a/IGC/Compiler/CISACodeGen/Platform.hpp +++ b/IGC/Compiler/CISACodeGen/Platform.hpp @@ -1081,7 +1081,8 @@ bool supportAIParameterCombiningWithLODBiasEnabled() const (m_platformInfo.eProductFamily == IGFX_DG2 && SI_WA_FROM(m_platformInfo.usRevId, ACM_G10_GT_REV_ID_B0)) || GFX_IS_DG2_G12_CONFIG(m_platformInfo.usDeviceID) || GFX_IS_DG2_G11_CONFIG(m_platformInfo.usDeviceID) || - m_platformInfo.eProductFamily == IGFX_METEORLAKE; + m_platformInfo.eProductFamily == IGFX_METEORLAKE || + m_platformInfo.eProductFamily == IGFX_ARROWLAKE; } bool useScratchSpaceForOCL() const