Skip to content

Commit

Permalink
Disable TrivialLocalMemoryOpsElimination pass from the pipeline
Browse files Browse the repository at this point in the history
The pass runs into multiple edge-case issues with aliased (and even direct) SLM
accesses. Originally implemented within commit ac8f9d5, no clear performance
benefit could be identified as of today.
  • Loading branch information
AGindinson authored and igcbot committed Dec 18, 2024
1 parent 0ea9c16 commit 3ae1be7
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 1 deletion.
1 change: 0 additions & 1 deletion IGC/Compiler/CISACodeGen/ShaderCodeGen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1852,7 +1852,6 @@ void OptimizeIR(CodeGenContext* const pContext)
mpm.add(createSROAPass());
}

mpm.add(new TrivialLocalMemoryOpsElimination());
if (pContext->type == ShaderType::COMPUTE_SHADER &&
(IGC_IS_FLAG_ENABLED(RemoveUnusedTGMFence) ||
pContext->getModuleMetaData()->enableRemoveUnusedTGMFence))
Expand Down
1 change: 1 addition & 0 deletions IGC/Compiler/CustomSafeOptPass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ namespace IGC
llvm::Value* analyzeTreeForTrunc64bto32b(const llvm::Use& OperandUse, llvm::SmallVector<llvm::BinaryOperator*, 8>& OpsToDelete);
};

// TODO: Remove this pass as unused
class TrivialLocalMemoryOpsElimination : public llvm::FunctionPass, public llvm::InstVisitor<TrivialLocalMemoryOpsElimination>
{
public:
Expand Down

0 comments on commit 3ae1be7

Please sign in to comment.