Home | History | Annotate | Download | only in Writer

Lines Matching refs:VE

253 static void WriteAttributeGroupTable(const ValueEnumerator &VE,
255 const std::vector<AttributeSet> &AttrGrps = VE.getAttributeGroups();
266 Record.push_back(VE.getAttributeGroupID(A));
301 static void WriteAttributeTable(const ValueEnumerator &VE,
303 const std::vector<AttributeSet> &Attrs = VE.getAttributes();
312 Record.push_back(VE.getAttributeGroupID(A.getSlotAttributes(i)));
322 static void WriteTypeTable(const ValueEnumerator &VE, BitstreamWriter &Stream) {
323 const ValueEnumerator::TypeList &TypeList = VE.getTypes();
328 uint64_t NumBits = Log2_32_Ceil(VE.getTypes().size()+1);
410 TypeVals.push_back(VE.getTypeID(PTy->getElementType()));
421 TypeVals.push_back(VE.getTypeID(FT->getReturnType()));
423 TypeVals.push_back(VE.getTypeID(FT->getParamType(i)));
434 TypeVals.push_back(VE.getTypeID(*I));
459 TypeVals.push_back(VE.getTypeID(AT->getElementType()));
468 TypeVals.push_back(VE.getTypeID(VT->getElementType()));
543 static void writeComdats(const ValueEnumerator &VE, BitstreamWriter &Stream) {
545 for (const Comdat *C : VE.getComdats()) {
558 static void WriteModuleInfo(const Module *M, const ValueEnumerator &VE,
579 MaxGlobalType = std::max(MaxGlobalType, VE.getTypeID(GV.getType()));
647 Vals.push_back(VE.getTypeID(GV.getType()));
650 (VE.getValueID(GV.getInitializer()) + 1));
664 Vals.push_back(GV.hasComdat() ? VE.getComdatID(GV.getComdat()) : 0);
677 Vals.push_back(VE.getTypeID(F.getType()));
681 Vals.push_back(VE.getAttributeID(F.getAttributes()));
687 Vals.push_back(F.hasPrefixData() ? (VE.getValueID(F.getPrefixData()) + 1)
690 Vals.push_back(F.hasComdat() ? VE.getComdatID(F.getComdat()) : 0);
700 Vals.push_back(VE.getTypeID(A.getType()));
701 Vals.push_back(VE.getValueID(A.getAliasee()));
744 const ValueEnumerator &VE,
749 Record.push_back(VE.getTypeID(N->getOperand(i)->getType()));
750 Record.push_back(VE.getValueID(N->getOperand(i)));
752 Record.push_back(VE.getTypeID(Type::getVoidTy(N->getContext())));
763 const ValueEnumerator &VE,
765 const ValueEnumerator::ValueList &Vals = VE.getMDValues();
777 WriteMDNode(N, VE, Stream, Record);
819 Record.push_back(VE.getValueID(NMD->getOperand(i)));
829 const ValueEnumerator &VE,
833 const SmallVectorImpl<const MDNode *> &Vals = VE.getFunctionLocalMDValues();
841 WriteMDNode(N, VE, Stream, Record);
849 const ValueEnumerator &VE,
868 Record.push_back(VE.getInstructionID(I));
872 Record.push_back(VE.getValueID(MDs[i].second));
913 const ValueEnumerator &VE,
954 const ValueEnumerator::ValueList &Vals = VE.getValues();
961 Record.push_back(VE.getTypeID(LastTy));
1084 Record.push_back(VE.getValueID(C->getOperand(i)));
1092 Record.push_back(VE.getTypeID(C->getOperand(0)->getType()));
1093 Record.push_back(VE.getValueID(C->getOperand(0)));
1099 Record.push_back(VE.getValueID(C->getOperand(0)));
1100 Record.push_back(VE.getValueID(C->getOperand(1)));
1111 Record.push_back(VE.getTypeID(C->getOperand(i)->getType()));
1112 Record.push_back(VE.getValueID(C->getOperand(i)));
1117 Record.push_back(VE.getValueID(C->getOperand(0)));
1118 Record.push_back(VE.getValueID(C->getOperand(1)));
1119 Record.push_back(VE.getValueID(C->getOperand(2)));
1123 Record.push_back(VE.getTypeID(C->getOperand(0)->getType()));
1124 Record.push_back(VE.getValueID(C->getOperand(0)));
1125 Record.push_back(VE.getTypeID(C->getOperand(1)->getType()));
1126 Record.push_back(VE.getValueID(C->getOperand(1)));
1130 Record.push_back(VE.getValueID(C->getOperand(0)));
1131 Record.push_back(VE.getValueID(C->getOperand(1)));
1132 Record.push_back(VE.getTypeID(C->getOperand(2)->getType()));
1133 Record.push_back(VE.getValueID(C->getOperand(2)));
1144 Record.push_back(VE.getTypeID(C->getOperand(0)->getType()));
1146 Record.push_back(VE.getValueID(C->getOperand(0)));
1147 Record.push_back(VE.getValueID(C->getOperand(1)));
1148 Record.push_back(VE.getValueID(C->getOperand(2)));
1153 Record.push_back(VE.getTypeID(C->getOperand(0)->getType()));
1154 Record.push_back(VE.getValueID(C->getOperand(0)));
1155 Record.push_back(VE.getValueID(C->getOperand(1)));
1161 Record.push_back(VE.getTypeID(BA->getFunction()->getType()));
1162 Record.push_back(VE.getValueID(BA->getFunction()));
1163 Record.push_back(VE.getGlobalBasicBlockID(BA->getBasicBlock()));
1177 static void WriteModuleConstants(const ValueEnumerator &VE,
1179 const ValueEnumerator::ValueList &Vals = VE.getValues();
1185 WriteConstants(i, Vals.size(), VE, Stream, true);
1201 ValueEnumerator &VE) {
1202 unsigned ValID = VE.getValueID(V);
1206 Vals.push_back(VE.getTypeID(V->getType()));
1216 ValueEnumerator &VE) {
1217 unsigned ValID = VE.getValueID(V);
1223 ValueEnumerator &VE) {
1224 unsigned ValID = VE.getValueID(V);
1231 ValueEnumerator &VE, BitstreamWriter &Stream,
1235 VE.setInstructionID(&I);
1240 if (!PushValueAndType(I.getOperand(0), InstID, Vals, VE))
1242 Vals.push_back(VE.getTypeID(I.getType()));
1247 if (!PushValueAndType(I.getOperand(0), InstID, Vals, VE))
1249 pushValue(I.getOperand(1), InstID, Vals, VE);
1265 PushValueAndType(I.getOperand(i), InstID, Vals, VE);
1269 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1277 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1278 PushValueAndType(I.getOperand(1), InstID, Vals, VE);
1286 VE);
1287 pushValue(I.getOperand(2), InstID, Vals, VE);
1288 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1292 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1293 PushValueAndType(I.getOperand(1), InstID, Vals, VE);
1297 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1298 pushValue(I.getOperand(1), InstID, Vals, VE);
1299 PushValueAndType(I.getOperand(2), InstID, Vals, VE);
1303 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1304 pushValue(I.getOperand(1), InstID, Vals, VE);
1305 pushValue(I.getOperand(2), InstID, Vals, VE);
1311 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1312 pushValue(I.getOperand(1), InstID, Vals, VE);
1323 if (!PushValueAndType(I.getOperand(0), InstID, Vals, VE))
1327 PushValueAndType(I.getOperand(i), InstID, Vals, VE);
1335 Vals.push_back(VE.getValueID(II.getSuccessor(0)));
1337 Vals.push_back(VE.getValueID(II.getSuccessor(1)));
1338 pushValue(II.getCondition(), InstID, Vals, VE);
1346 Vals.push_back(VE.getTypeID(SI.getCondition()->getType()));
1347 pushValue(SI.getCondition(), InstID, Vals, VE);
1348 Vals.push_back(VE.getValueID(SI.getDefaultDest()));
1351 Vals.push_back(VE.getValueID(i.getCaseValue()));
1352 Vals.push_back(VE.getValueID(i.getCaseSuccessor()));
1358 Vals.push_back(VE.getTypeID(I.getOperand(0)->getType()));
1360 pushValue(I.getOperand(0), InstID, Vals, VE);
1362 Vals.push_back(VE.getValueID(I.getOperand(i)));
1372 Vals.push_back(VE.getAttributeID(II->getAttributes()));
1374 Vals.push_back(VE.getValueID(II->getNormalDest()));
1375 Vals.push_back(VE.getValueID(II->getUnwindDest()));
1376 PushValueAndType(Callee, InstID, Vals, VE);
1380 pushValue(I.getOperand(i), InstID, Vals, VE); // fixed param.
1386 PushValueAndType(I.getOperand(i), InstID, Vals, VE); // vararg
1392 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1406 Vals64.push_back(VE.getTypeID(PN.getType()));
1408 pushValueSigned(PN.getIncomingValue(i), InstID, Vals64, VE);
1409 Vals64.push_back(VE.getValueID(PN.getIncomingBlock(i)));
1420 Vals.push_back(VE.getTypeID(LP.getType()));
1421 PushValueAndType(LP.getPersonalityFn(), InstID, Vals, VE);
1429 PushValueAndType(LP.getClause(I), InstID, Vals, VE);
1436 Vals.push_back(VE.getTypeID(I.getType()));
1437 Vals.push_back(VE.getTypeID(I.getOperand(0)->getType()));
1438 Vals.push_back(VE.getValueID(I.getOperand(0))); // size.
1445 PushValueAndType(I.getOperand(0), InstID, Vals, VE);
1448 if (!PushValueAndType(I.getOperand(0), InstID, Vals, VE)) // ptr
1463 PushValueAndType(I.getOperand(1), InstID, Vals, VE); // ptrty + ptr
1464 pushValue(I.getOperand(0), InstID, Vals, VE); // val.
1474 PushValueAndType(I.getOperand(0), InstID, Vals, VE); // ptrty + ptr
1475 pushValue(I.getOperand(1), InstID, Vals, VE); // cmp.
1476 pushValue(I.getOperand(2), InstID, Vals, VE); // newval.
1488 PushValueAndType(I.getOperand(0), InstID, Vals, VE); // ptrty + ptr
1489 pushValue(I.getOperand(1), InstID, Vals, VE); // val.
1509 Vals.push_back(VE.getAttributeID(CI.getAttributes()));
1512 PushValueAndType(CI.getCalledValue(), InstID, Vals, VE); // Callee
1518 Vals.push_back(VE.getValueID(CI.getArgOperand(i)));
1520 pushValue(CI.getArgOperand(i), InstID, Vals, VE); // fixed param.
1527 PushValueAndType(CI.getArgOperand(i), InstID, Vals, VE); // varargs
1533 Vals.push_back(VE.getTypeID(I.getOperand(0)->getType())); // valistty
1534 pushValue(I.getOperand(0), InstID, Vals, VE); // valist.
1535 Vals.push_back(VE.getTypeID(I.getType())); // restype.
1545 const ValueEnumerator &VE,
1589 NameVals.push_back(VE.getValueID(SI->getValue()));
1602 static void WriteFunction(const Function &F, ValueEnumerator &VE,
1605 VE.incorporateFunction(F);
1611 Vals.push_back(VE.getBasicBlocks().size());
1617 VE.getFunctionConstantRange(CstStart, CstEnd);
1618 WriteConstants(CstStart, CstEnd, VE, Stream, false);
1621 WriteFunctionLocalMetadata(F, VE, Stream);
1634 WriteInstruction(*I, InstID, VE, Stream, Vals);
1655 Vals.push_back(Scope ? VE.getValueID(Scope)+1 : 0);
1656 Vals.push_back(IA ? VE.getValueID(IA)+1 : 0);
1665 WriteValueSymbolTable(F.getValueSymbolTable(), VE, Stream);
1668 WriteMetadataAttachment(F, VE, Stream);
1669 VE.purgeFunction();
1674 static void WriteBlockInfo(const ValueEnumerator &VE, BitstreamWriter &Stream) {
1728 Log2_32_Ceil(VE.getTypes().size()+1)));
1748 Log2_32_Ceil(VE.getTypes().size()+1)));
1801 Log2_32_Ceil(VE.getTypes().size()+1)));
1841 static void WriteUseList(const Value *V, const ValueEnumerator &VE,
1860 static void WriteFunctionUseList(const Function *F, ValueEnumerator &VE,
1862 VE.incorporateFunction(*F);
1866 WriteUseList(AI, VE, Stream);
1869 WriteUseList(BB, VE, Stream);
1872 WriteUseList(II, VE, Stream);
1877 WriteUseList(*OI, VE, Stream);
1881 VE.purgeFunction();
1885 static void WriteModuleUseLists(const Module *M, ValueEnumerator &VE,
1900 WriteUseList(GI, VE, Stream);
1904 WriteUseList(GI->getInitializer(), VE, Stream);
1909 WriteUseList(FI, VE, Stream);
1911 WriteFunctionUseList(FI, VE, Stream);
1913 WriteUseList(FI->getPrefixData(), VE, Stream);
1919 WriteUseList(AI, VE, Stream);
1920 WriteUseList(AI->getAliasee(), VE, Stream);
1936 ValueEnumerator VE(M);
1939 WriteBlockInfo(VE, Stream);
1942 WriteAttributeGroupTable(VE, Stream);
1945 WriteAttributeTable(VE, Stream);
1948 WriteTypeTable(VE, Stream);
1950 writeComdats(VE, Stream);
1954 WriteModuleInfo(M, VE, Stream);
1957 WriteModuleConstants(VE, Stream);
1960 WriteModuleMetadata(M, VE, Stream);
1966 WriteValueSymbolTable(M->getValueSymbolTable(), VE, Stream);
1970 WriteModuleUseLists(M, VE, Stream);
1975 WriteFunction(*F, VE, Stream);