Skip to content

Commit 31052fb

Browse files
dmitryryinteligcbot
authored andcommitted
Move GenXImportBiF to VCTransforms and rename it to GenXImportOCLBiF.
1 parent bffd6d2 commit 31052fb

File tree

7 files changed

+36
-40
lines changed

7 files changed

+36
-40
lines changed

IGC/VectorCompiler/include/vc/GenXOpts/GenXOpts.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,9 @@ void initializeGenXPrintfResolutionPass(PassRegistry &);
6565
ModulePass *createGenXPrintfLegalizationPass();
6666
void initializeGenXPrintfLegalizationPass(PassRegistry &);
6767

68+
ModulePass *createGenXImportOCLBiFPass();
69+
void initializeGenXImportOCLBiFPass(PassRegistry &);
70+
6871
} // End llvm namespace
6972

7073
#endif

IGC/VectorCompiler/lib/GenXCodeGen/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ set(CODEGEN_SOURCES
4242
GenXGEPLowering.cpp
4343
GenXGlobalVariableLowering.cpp
4444
GenXIMadPostLegalization.cpp
45-
GenXImportBiF.cpp
4645
GenXInlineAsmLowering.cpp
4746
GenXIntrinsics.cpp
4847
GenXLayoutBlocks.cpp

IGC/VectorCompiler/lib/GenXCodeGen/GenX.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ FunctionGroupPass *createGenXVisaRegAllocPass();
102102
FunctionGroupPass *createGenXCisaBuilderPass();
103103
ModulePass *createGenXFinalizerPass(raw_pwrite_stream &o);
104104
ModulePass *createGenXDebugInfoPass();
105-
ModulePass *createGenXImportBiFPass();
106105
ModulePass *createGenXGlobalVariableLoweringPass();
107106
FunctionPass *createGenXSimplifyRegionPass();
108107

IGC/VectorCompiler/lib/GenXCodeGen/GenXTargetMachine.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ void initializeGenXPasses(PassRegistry &registry) {
128128
initializeTransformPrivMemPass(registry);
129129
initializeGenXFunctionPointersLoweringPass(registry);
130130
initializeGenXBackendConfigPass(registry);
131-
initializeGenXImportBiFPass(registry);
131+
initializeGenXImportOCLBiFPass(registry);
132132
initializeGenXSimplifyPass(registry);
133133
initializeCMABIPass(registry);
134134
initializeGenXLowerJmpTableSwitchPass(registry);
@@ -517,7 +517,7 @@ void GenXTargetMachine::adjustPassManager(PassManagerBuilder &PMBuilder) {
517517
auto AddPacketize = [](const PassManagerBuilder &Builder,
518518
PassManagerBase &PM) {
519519
PM.add(createGenXPrintfResolutionPass());
520-
PM.add(createGenXImportBiFPass());
520+
PM.add(createGenXImportOCLBiFPass());
521521
PM.add(createGenXPacketizePass());
522522
PM.add(createAlwaysInlinerLegacyPass());
523523
PM.add(createGenXPrintfLegalizationPass());

IGC/VectorCompiler/lib/GenXCodeGen/GenXTargetMachine.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,6 @@ void initializeGenXUnbalingPass(PassRegistry &);
177177
void initializeGenXVisaRegAllocPass(PassRegistry &);
178178
void initializeTransformPrivMemPass(PassRegistry &);
179179
void initializeGenXFunctionPointersLoweringPass(PassRegistry &);
180-
void initializeGenXImportBiFPass(PassRegistry &);
181180
void initializeGenXLowerJmpTableSwitchPass(PassRegistry &);
182181
void initializeGenXGlobalVariableLoweringPass(PassRegistry &);
183182
void initializeGenXAggregatePseudoLoweringPass(PassRegistry &);

IGC/VectorCompiler/lib/GenXCodeGen/GenXImportBiF.cpp renamed to IGC/VectorCompiler/lib/GenXOpts/CMTrans/GenXImportOCLBiF.cpp

Lines changed: 30 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ SPDX-License-Identifier: MIT
77
============================= end_copyright_notice ===========================*/
88

99
//
10-
/// GenXImportBiF
10+
/// GenXImportOCLBiF
1111
/// -----------
1212
///
1313
/// This pass import Builtin Function library compiled into bitcode
@@ -20,7 +20,7 @@ SPDX-License-Identifier: MIT
2020

2121
#define DEBUG_TYPE "cmimportbif"
2222

23-
#include "GenX.h"
23+
#include "vc/GenXOpts/GenXOpts.h"
2424
#include "vc/Support/BackendConfig.h"
2525
#include "vc/Utils/General/BiF.h"
2626

@@ -48,8 +48,8 @@ SPDX-License-Identifier: MIT
4848
#include <unordered_set>
4949
#include <vector>
5050

51-
#include "llvm/GenXIntrinsics/GenXIntrinsicInst.h"
5251
#include "Probe/Assertion.h"
52+
#include "llvm/GenXIntrinsics/GenXIntrinsicInst.h"
5353

5454
using namespace llvm;
5555

@@ -181,8 +181,7 @@ void BIConvert::runOnModule(Module &M) {
181181
if (id == Intrinsic::lifetime_start || id == Intrinsic::lifetime_end) {
182182
ListDelete.push_back(InstCall);
183183
continue;
184-
}
185-
else if (id == Intrinsic::ctlz) {
184+
} else if (id == Intrinsic::ctlz) {
186185
// convert this to genx_ldz, but genx_lzd only support 32-bit input
187186
auto Src = InstCall->getOperand(0);
188187
auto SrcTy = Src->getType();
@@ -194,9 +193,10 @@ void BIConvert::runOnModule(Module &M) {
194193
tys[0] = SrcTy;
195194
// build argument list for the 1st intrinsic
196195
args.push_back(Src);
197-
Function *IntrinFunc = GenXIntrinsic::getAnyDeclaration(&M, GenXIntrinsic::genx_lzd, tys);
198-
Instruction *IntrinCall = CallInst::Create(
199-
IntrinFunc, args, InstCall->getName(), InstCall);
196+
Function *IntrinFunc = GenXIntrinsic::getAnyDeclaration(
197+
&M, GenXIntrinsic::genx_lzd, tys);
198+
Instruction *IntrinCall =
199+
CallInst::Create(IntrinFunc, args, InstCall->getName(), InstCall);
200200
IntrinCall->setDebugLoc(InstCall->getDebugLoc());
201201
InstCall->replaceAllUsesWith(IntrinCall);
202202
ListDelete.push_back(InstCall);
@@ -290,8 +290,8 @@ void BIConvert::runOnModule(Module &M) {
290290
tys[0] = InstCall->getArgOperand(0)->getType();
291291
// build argument list for the 1st intrinsic
292292
args.push_back(Mul);
293-
Function *IntrinFunc =
294-
GenXIntrinsic::getAnyDeclaration(&M, GenXIntrinsic::genx_rndz, tys);
293+
Function *IntrinFunc = GenXIntrinsic::getAnyDeclaration(
294+
&M, GenXIntrinsic::genx_rndz, tys);
295295
Instruction *IntrinCall =
296296
CallInst::Create(IntrinFunc, args, InstCall->getName(), InstCall);
297297
IntrinCall->setDebugLoc(InstCall->getDebugLoc());
@@ -308,8 +308,8 @@ void BIConvert::runOnModule(Module &M) {
308308
tys[0] = InstCall->getArgOperand(0)->getType();
309309
// build argument list for the 1st intrinsic
310310
args.push_back(Add);
311-
Function *IntrinFunc =
312-
GenXIntrinsic::getAnyDeclaration(&M, GenXIntrinsic::genx_rndz, tys);
311+
Function *IntrinFunc = GenXIntrinsic::getAnyDeclaration(
312+
&M, GenXIntrinsic::genx_rndz, tys);
313313
Instruction *IntrinCall =
314314
CallInst::Create(IntrinFunc, args, InstCall->getName(), InstCall);
315315
IntrinCall->setDebugLoc(InstCall->getDebugLoc());
@@ -366,8 +366,8 @@ static void removeFunctionBitcasts(llvm::Module &M) {
366366
CallInst *pInstCall = dyn_cast<CallInst>(I);
367367
if (!pInstCall || pInstCall->getCalledFunction())
368368
continue;
369-
if (auto constExpr =
370-
dyn_cast<llvm::ConstantExpr>(IGCLLVM::getCalledValue(pInstCall))) {
369+
if (auto constExpr = dyn_cast<llvm::ConstantExpr>(
370+
IGCLLVM::getCalledValue(pInstCall))) {
371371
if (auto funcTobeChanged =
372372
dyn_cast<llvm::Function>(constExpr->stripPointerCasts())) {
373373
if (funcTobeChanged->isDeclaration())
@@ -660,37 +660,33 @@ void BiFImporter::run() {
660660
}
661661
}
662662

663-
class GenXImportBiF final : public ModulePass {
663+
class GenXImportOCLBiF final : public ModulePass {
664664

665665
public:
666666
static char ID;
667-
GenXImportBiF() : ModulePass(ID) {}
668-
StringRef getPassName() const override { return "GenX import BiF"; }
667+
GenXImportOCLBiF() : ModulePass(ID) {}
668+
StringRef getPassName() const override { return "GenX import OCL BiF"; }
669669
void getAnalysisUsage(AnalysisUsage &AU) const override;
670670
bool runOnModule(Module &M) override;
671671

672672
private:
673-
std::unique_ptr<Module> getBiFModule(BiFKind Kind,
674-
LLVMContext &Ctx);
673+
std::unique_ptr<Module> getBiFModule(BiFKind Kind, LLVMContext &Ctx);
675674
};
676675

677-
char GenXImportBiF::ID = 0;
678-
namespace llvm {
679-
void initializeGenXImportBiFPass(PassRegistry &);
680-
}
676+
char GenXImportOCLBiF::ID = 0;
681677

682-
INITIALIZE_PASS_BEGIN(GenXImportBiF, "GenXImportBiF", "GenXImportBiF", false,
683-
false)
678+
INITIALIZE_PASS_BEGIN(GenXImportOCLBiF, "GenXImportOCLBiF", "GenXImportOCLBiF",
679+
false, false)
684680
INITIALIZE_PASS_DEPENDENCY(GenXBackendConfig)
685-
INITIALIZE_PASS_END(GenXImportBiF, "GenXImportBiF", "GenXImportBiF", false,
686-
false)
681+
INITIALIZE_PASS_END(GenXImportOCLBiF, "GenXImportOCLBiF", "GenXImportOCLBiF",
682+
false, false)
687683

688-
ModulePass *llvm::createGenXImportBiFPass() {
689-
initializeGenXImportBiFPass(*PassRegistry::getPassRegistry());
690-
return new GenXImportBiF;
684+
ModulePass *llvm::createGenXImportOCLBiFPass() {
685+
initializeGenXImportOCLBiFPass(*PassRegistry::getPassRegistry());
686+
return new GenXImportOCLBiF;
691687
}
692688

693-
void GenXImportBiF::getAnalysisUsage(AnalysisUsage &AU) const {
689+
void GenXImportOCLBiF::getAnalysisUsage(AnalysisUsage &AU) const {
694690
AU.addRequired<GenXBackendConfig>();
695691
}
696692

@@ -742,7 +738,7 @@ static void translateSPIRVOCLBuiltins(Module &M) {
742738
llvm::for_each(Worklist, [](Function &F) { translateSPIRVOCLBuiltin(F); });
743739
}
744740

745-
bool GenXImportBiF::runOnModule(Module &M) {
741+
bool GenXImportOCLBiF::runOnModule(Module &M) {
746742
if (!OCLBuiltinsRequired(M))
747743
return false;
748744

@@ -756,9 +752,8 @@ bool GenXImportBiF::runOnModule(Module &M) {
756752
return true;
757753
}
758754

759-
std::unique_ptr<Module>
760-
GenXImportBiF::getBiFModule(BiFKind Kind,
761-
LLVMContext &Ctx) {
755+
std::unique_ptr<Module> GenXImportOCLBiF::getBiFModule(BiFKind Kind,
756+
LLVMContext &Ctx) {
762757
MemoryBufferRef BiFModuleBuffer =
763758
getAnalysis<GenXBackendConfig>().getBiFModule(Kind);
764759
return vc::getLazyBiFModuleOrReportError(BiFModuleBuffer, Ctx);

IGC/VectorCompiler/lib/GenXOpts/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ set(OPT_SOURCES
1616
CMTrans/CMRegion.cpp
1717
CMTrans/GenXPrintfLegalization.cpp
1818
CMTrans/GenXPrintfResolution.cpp
19+
CMTrans/GenXImportOCLBiF.cpp
1920
CMPacketize/GenXPacketize.cpp
2021
CMPacketize/PacketBuilder.cpp
2122
CMPacketize/PacketBuilder_math.cpp

0 commit comments

Comments
 (0)