• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/WebAssembly/

Lines Matching defs:IRB

315 static GlobalVariable *getGlobalVariableI32(Module &M, IRBuilder<> &IRB,
319 dyn_cast<GlobalVariable>(M.getOrInsertGlobal(Name, IRB.getInt32Ty()));
387 IRBuilder<> IRB(C);
388 IRB.SetInsertPoint(CI);
392 IRB.CreateStore(IRB.getInt32(0), ThrewGV);
400 CallInst *NewCall = IRB.CreateCall(getInvokeWrapper(CI), Args);
440 IRB.CreateLoad(IRB.getInt32Ty(), ThrewGV, ThrewGV->getName() + ".val");
441 IRB.CreateStore(IRB.getInt32(0), ThrewGV);
546 IRBuilder<> IRB(C);
547 IRB.SetInsertPoint(InsertPt);
550 IRB.SetInsertPoint(BB);
554 Value *ThrewCmp = IRB.CreateICmpNE(Threw, IRB.getInt32(0));
555 Value *ThrewValue = IRB.CreateLoad(IRB.getInt32Ty(), ThrewValueGV,
557 Value *ThrewValueCmp = IRB.CreateICmpNE(ThrewValue, IRB.getInt32(0));
558 Value *Cmp1 = IRB.CreateAnd(ThrewCmp, ThrewValueCmp, "cmp1");
559 IRB.CreateCondBr(Cmp1, ThenBB1, ElseBB1);
563 IRB.SetInsertPoint(ThenBB1);
566 Value *ThrewInt = IRB.CreateIntToPtr(Threw, Type::getInt32PtrTy(C),
568 Value *LoadedThrew = IRB.CreateLoad(IRB.getInt32Ty(), ThrewInt,
570 Value *ThenLabel = IRB.CreateCall(
572 Value *Cmp2 = IRB.CreateICmpEQ(ThenLabel, IRB.getInt32(0));
573 IRB.CreateCondBr(Cmp2, ThenBB2, EndBB2);
576 IRB.SetInsertPoint(ThenBB2);
577 IRB.CreateCall(EmLongjmpF, {Threw, ThrewValue});
578 IRB.CreateUnreachable();
581 IRB.SetInsertPoint(EndBB2);
582 IRB.CreateCall(SetTempRet0Func, ThrewValue);
583 IRB.CreateBr(EndBB1);
585 IRB.SetInsertPoint(ElseBB1);
586 IRB.CreateBr(EndBB1);
589 IRB.SetInsertPoint(EndBB1);
590 PHINode *LabelPHI = IRB.CreatePHI(IRB.getInt32Ty(), 2, "label");
593 LabelPHI->addIncoming(IRB.getInt32(-1), ElseBB1);
598 LongjmpResult = IRB.CreateCall(GetTempRet0Func, None, "longjmp_result");
629 IRBuilder<> IRB(C);
640 ThrewGV = getGlobalVariableI32(M, IRB, "__THREW__");
641 ThrewValueGV = getGlobalVariableI32(M, IRB, "__threwValue");
643 Function::Create(FunctionType::get(IRB.getInt32Ty(), false),
646 FunctionType::get(IRB.getVoidTy(), IRB.getInt32Ty(), false),
657 FunctionType::get(IRB.getVoidTy(), IRB.getInt8PtrTy(), false);
663 FunctionType::get(IRB.getInt32Ty(), IRB.getInt8PtrTy(), false);
692 IRB.getInt32Ty(), Type::getInt32PtrTy(C),
693 IRB.getInt32Ty()};
700 Params = {IRB.getInt32Ty(), Type::getInt32PtrTy(C), IRB.getInt32Ty()};
701 FTy = FunctionType::get(IRB.getInt32Ty(), Params, false);
705 FTy = FunctionType::get(IRB.getVoidTy(),
706 {IRB.getInt32Ty(), IRB.getInt32Ty()}, false);
743 IRBuilder<> IRB(C);
756 IRB.SetInsertPoint(II);
765 Value *Cmp = IRB.CreateICmpEQ(Threw, IRB.getInt32(1), "cmp");
766 IRB.CreateCondBr(Cmp, II->getUnwindDest(), II->getNormalDest());
773 IRB.CreateCall(II->getFunctionType(), II->getCalledValue(), Args);
781 IRB.CreateBr(II->getNormalDest());
799 IRB.SetInsertPoint(RI);
800 Value *Low = IRB.CreateExtractValue(Input, 0, "low");
802 IRB.CreateCall(ResumeF, {Low});
804 IRB.CreateUnreachable();
822 IRB.SetInsertPoint(CI);
824 IRB.CreateCall(EHTypeIDF, CI->getArgOperand(0), "typeid");
841 IRB.SetInsertPoint(LPI);
851 Value *EV = IRB.CreateExtractValue(Clause, makeArrayRef(J), "filter");
860 CallInst *FMCI = IRB.CreateCall(FMCF, FMCArgs, "fmc");
862 Value *Pair0 = IRB.CreateInsertValue(Undef, FMCI, 0, "pair0");
863 Value *TempRet0 = IRB.CreateCall(GetTempRet0Func, None, "tempret0");
864 Value *Pair1 = IRB.CreateInsertValue(Pair0, TempRet0, 1, "pair1");
880 IRBuilder<> IRB(C);
895 Instruction::Add, IRB.getInt32(4), IRB.getInt32(0), "setjmpTableSize",
899 SetjmpTableSize, IRB.getInt32Ty(), IRB.getInt32Ty(), IRB.getInt32(40),
902 IRB.SetInsertPoint(SetjmpTableSize);
903 IRB.CreateStore(IRB.getInt32(0), SetjmpTable);
925 IRB.SetInsertPoint(Tail->getFirstNonPHI());
926 PHINode *SetjmpRet = IRB.CreatePHI(IRB.getInt32Ty(), 2, "setjmp.ret");
929 SetjmpRet->addIncoming(IRB.getInt32(0), BB);
938 IRB.SetInsertPoint(CI);
939 Value *Args[] = {CI->getArgOperand(0), IRB.getInt32(SetjmpRetPHIs.size()),
942 IRB.CreateCall(SaveSetjmpF, Args, "setjmpTable");
944 IRB.CreateCall(GetTempRet0Func, None, "setjmpTableSize");
1003 if (GV == ThrewGV && SI->getValueOperand() == IRB.getInt32(0)) {
1035 IRB.SetInsertPoint(EndBB);
1036 SwitchInst *SI = IRB.CreateSwitch(Label, Tail, SetjmpRetPHIs.size());
1042 SI->addCase(IRB.getInt32(I + 1), SetjmpRetPHIs[I]->getParent());