1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
/*========================== begin_copyright_notice ============================
Copyright (C) 2021 Intel Corporation
SPDX-License-Identifier: MIT
============================= end_copyright_notice ===========================*/
#pragma once
namespace llvm
{
class Pass;
class PassRegistry;
}
namespace IGC
{
////////////////////////////////////////////////////////////////////////
/// @brief This pass is responsible for reducing the number of synchronization
/// instruction. Moreover, the necessary memory fences can decrease their
/// scope of influence.
llvm::Pass* createSynchronizationObjectCoalescing();
} // namespace IGC
void initializeSynchronizationObjectCoalescingPass(llvm::PassRegistry&);
|