Lines Matching refs:Out

290 static void PrintCallingConv(unsigned cc, raw_ostream &Out) {
292 default: Out << "cc" << cc; break;
293 case CallingConv::Fast: Out << "fastcc"; break;
294 case CallingConv::Cold: Out << "coldcc"; break;
295 case CallingConv::WebKit_JS: Out << "webkit_jscc"; break;
296 case CallingConv::AnyReg: Out << "anyregcc"; break;
297 case CallingConv::PreserveMost: Out << "preserve_mostcc"; break;
298 case CallingConv::PreserveAll: Out << "preserve_allcc"; break;
299 case CallingConv::CXX_FAST_TLS: Out << "cxx_fast_tlscc"; break;
300 case CallingConv::GHC: Out << "ghccc"; break;
301 case CallingConv::X86_StdCall: Out << "x86_stdcallcc"; break;
302 case CallingConv::X86_FastCall: Out << "x86_fastcallcc"; break;
303 case CallingConv::X86_ThisCall: Out << "x86_thiscallcc"; break;
304 case CallingConv::X86_VectorCall:Out << "x86_vectorcallcc"; break;
305 case CallingConv::Intel_OCL_BI: Out << "intel_ocl_bicc"; break;
306 case CallingConv::ARM_APCS: Out << "arm_apcscc"; break;
307 case CallingConv::ARM_AAPCS: Out << "arm_aapcscc"; break;
308 case CallingConv::ARM_AAPCS_VFP: Out << "arm_aapcs_vfpcc"; break;
309 case CallingConv::MSP430_INTR: Out << "msp430_intrcc"; break;
310 case CallingConv::PTX_Kernel: Out << "ptx_kernel"; break;
311 case CallingConv::PTX_Device: Out << "ptx_device"; break;
312 case CallingConv::X86_64_SysV: Out << "x86_64_sysvcc"; break;
313 case CallingConv::X86_64_Win64: Out << "x86_64_win64cc"; break;
314 case CallingConv::SPIR_FUNC: Out << "spir_func"; break;
315 case CallingConv::SPIR_KERNEL: Out << "spir_kernel"; break;
316 case CallingConv::X86_INTR: Out << "x86_intrcc"; break;
317 case CallingConv::HHVM: Out << "hhvmcc"; break;
318 case CallingConv::HHVM_C: Out << "hhvm_ccc"; break;
324 static void PrintEscapedString(StringRef Name, raw_ostream &Out) {
328 Out << C;
330 Out << '\\' << hexdigit(C >> 4) << hexdigit(C & 0x0F);
990 static void WriteAsOperandInternal(raw_ostream &Out, const Value *V,
995 static void WriteAsOperandInternal(raw_ostream &Out, const Metadata *MD,
1033 static void writeAtomicRMWOperation(raw_ostream &Out,
1036 default: Out << " <unknown operation " << Op << ">"; break;
1037 case AtomicRMWInst::Xchg: Out << " xchg"; break;
1038 case AtomicRMWInst::Add: Out << " add"; break;
1039 case AtomicRMWInst::Sub: Out << " sub"; break;
1040 case AtomicRMWInst::And: Out << " and"; break;
1041 case AtomicRMWInst::Nand: Out << " nand"; break;
1042 case AtomicRMWInst::Or: Out << " or"; break;
1043 case AtomicRMWInst::Xor: Out << " xor"; break;
1044 case AtomicRMWInst::Max: Out << " max"; break;
1045 case AtomicRMWInst::Min: Out << " min"; break;
1046 case AtomicRMWInst::UMax: Out << " umax"; break;
1047 case AtomicRMWInst::UMin: Out << " umin"; break;
1051 static void WriteOptimizationInfo(raw_ostream &Out, const User *U) {
1055 Out << " fast";
1058 Out << " nnan";
1060 Out << " ninf";
1062 Out << " nsz";
1064 Out << " arcp";
1071 Out << " nuw";
1073 Out << " nsw";
1077 Out << " exact";
1080 Out << " inbounds";
1084 static void WriteConstantInternal(raw_ostream &Out, const Constant *CV,
1090 Out << (CI->getZExtValue() ? "true" : "false");
1093 Out << CI->getValue();
1124 Out << StrVal;
1140 Out << format_hex(apf.bitcastToAPInt().getZExtValue(), 0, /*Upper=*/true);
1147 Out << "0x";
1150 Out << 'K';
1151 Out << format_hex_no_prefix(API.getHiBits(16).getZExtValue(), 4,
1153 Out << format_hex_no_prefix(API.getLoBits(64).getZExtValue(), 16,
1157 Out << 'L';
1158 Out << format_hex_no_prefix(API.getLoBits(64).getZExtValue(), 16,
1160 Out << format_hex_no_prefix(API.getHiBits(64).getZExtValue(), 16,
1163 Out << 'M';
1164 Out << format_hex_no_prefix(API.getLoBits(64).getZExtValue(), 16,
1166 Out << format_hex_no_prefix(API.getHiBits(64).getZExtValue(), 16,
1169 Out << 'H';
1170 Out << format_hex_no_prefix(API.getZExtValue(), 4,
1178 Out << "zeroinitializer";
1183 Out << "blockaddress(";
1184 WriteAsOperandInternal(Out, BA->getFunction(), &TypePrinter, Machine,
1186 Out << ", ";
1187 WriteAsOperandInternal(Out, BA->getBasicBlock(), &TypePrinter, Machine,
1189 Out << ")";
1195 Out << '[';
1196 TypePrinter.print(ETy, Out);
1197 Out << ' ';
1198 WriteAsOperandInternal(Out, CA->getOperand(0),
1202 Out << ", ";
1203 TypePrinter.print(ETy, Out);
1204 Out << ' ';
1205 WriteAsOperandInternal(Out, CA->getOperand(i), &TypePrinter, Machine,
1208 Out << ']';
1216 Out << "c\"";
1217 PrintEscapedString(CA->getAsString(), Out);
1218 Out << '"';
1223 Out << '[';
1224 TypePrinter.print(ETy, Out);
1225 Out << ' ';
1226 WriteAsOperandInternal(Out, CA->getElementAsConstant(0),
1230 Out << ", ";
1231 TypePrinter.print(ETy, Out);
1232 Out << ' ';
1233 WriteAsOperandInternal(Out, CA->getElementAsConstant(i), &TypePrinter,
1236 Out << ']';
1243 Out << '<';
1244 Out << '{';
1247 Out << ' ';
1248 TypePrinter.print(CS->getOperand(0)->getType(), Out);
1249 Out << ' ';
1251 WriteAsOperandInternal(Out, CS->getOperand(0), &TypePrinter, Machine,
1255 Out << ", ";
1256 TypePrinter.print(CS->getOperand(i)->getType(), Out);
1257 Out << ' ';
1259 WriteAsOperandInternal(Out, CS->getOperand(i), &TypePrinter, Machine,
1262 Out << ' ';
1265 Out << '}';
1267 Out << '>';
1273 Out << '<';
1274 TypePrinter.print(ETy, Out);
1275 Out << ' ';
1276 WriteAsOperandInternal(Out, CV->getAggregateElement(0U), &TypePrinter,
1279 Out << ", ";
1280 TypePrinter.print(ETy, Out);
1281 Out << ' ';
1282 WriteAsOperandInternal(Out, CV->getAggregateElement(i), &TypePrinter,
1285 Out << '>';
1290 Out << "null";
1295 Out << "none";
1300 Out << "undef";
1305 Out << CE->getOpcodeName();
1306 WriteOptimizationInfo(Out, CE);
1308 Out << ' ' << getPredicateText(CE->getPredicate());
1309 Out << " (";
1312 TypePrinter.print(GEP->getSourceElementType(), Out);
1313 Out << ", ";
1317 TypePrinter.print((*OI)->getType(), Out);
1318 Out << ' ';
1319 WriteAsOperandInternal(Out, *OI, &TypePrinter, Machine, Context);
1321 Out << ", ";
1327 Out << ", " << Indices[i];
1331 Out << " to ";
1332 TypePrinter.print(CE->getType(), Out);
1335 Out << ')';
1339 Out << "<placeholder or erroneous Constant>";
1342 static void writeMDTuple(raw_ostream &Out, const MDTuple *Node,
1345 Out << "!{";
1349 Out << "null";
1352 TypePrinter->print(V->getType(), Out);
1353 Out << ' ';
1354 WriteAsOperandInternal(Out, V, TypePrinter, Machine, Context);
1356 WriteAsOperandInternal(Out, MD, TypePrinter, Machine, Context);
1359 Out << ", ";
1362 Out << "}";
1379 raw_ostream &Out;
1385 explicit MDFieldPrinter(raw_ostream &Out)
1386 : Out(Out), TypePrinter(nullptr), Machine(nullptr), Context(nullptr) {}
1387 MDFieldPrinter(raw_ostream &Out, TypePrinting *TypePrinter,
1389 : Out(Out), TypePrinter(TypePrinter), Machine(Machine), Context(Context) {
1408 Out << FS << "tag: ";
1410 Out << Tag;
1412 Out << N->getTag();
1416 Out << FS << "type: ";
1418 Out << Type;
1420 Out << N->getMacinfoType();
1428 Out << FS << Name << ": \"";
1429 PrintEscapedString(Value, Out);
1430 Out << "\"";
1433 static void writeMetadataAsOperand(raw_ostream &Out, const Metadata *MD,
1438 Out << "null";
1441 WriteAsOperandInternal(Out, MD, TypePrinter, Machine, Context);
1449 Out << FS << Name << ": ";
1450 writeMetadataAsOperand(Out, MD, TypePrinter, Machine, Context);
1458 Out << FS << Name << ": " << Int;
1462 Out << FS << Name << ": " << (Value ? "true" : "false");
1469 Out << FS << Name << ": ";
1478 Out << FlagsFS << StringF;
1481 Out << FlagsFS << Extra;
1490 Out << FS << Name << ": ";
1492 Out << S;
1494 Out << Value;
1497 static void writeGenericDINode(raw_ostream &Out, const GenericDINode *N,
1500 Out << "!GenericDINode(";
1501 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1505 Out << Printer.FS << "operands: {";
1508 Out << IFS;
1509 writeMetadataAsOperand(Out, I, TypePrinter, Machine, Context);
1511 Out << "}";
1513 Out << ")";
1516 static void writeDILocation(raw_ostream &Out, const DILocation *DL,
1519 Out << "!DILocation(";
1520 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1526 Out << ")";
1529 static void writeDISubrange(raw_ostream &Out, const DISubrange *N,
1531 Out << "!DISubrange(";
1532 MDFieldPrinter Printer(Out);
1535 Out << ")";
1538 static void writeDIEnumerator(raw_ostream &Out, const DIEnumerator *N,
1540 Out << "!DIEnumerator(";
1541 MDFieldPrinter Printer(Out);
1544 Out << ")";
1547 static void writeDIBasicType(raw_ostream &Out, const DIBasicType *N,
1549 Out << "!DIBasicType(";
1550 MDFieldPrinter Printer(Out);
1558 Out << ")";
1561 static void writeDIDerivedType(raw_ostream &Out, const DIDerivedType *N,
1564 Out << "!DIDerivedType(";
1565 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1578 Out << ")";
1581 static void writeDICompositeType(raw_ostream &Out, const DICompositeType *N,
1584 Out << "!DICompositeType(";
1585 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1602 Out << ")";
1605 static void writeDISubroutineType(raw_ostream &Out, const DISubroutineType *N,
1608 Out << "!DISubroutineType(";
1609 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1613 Out << ")";
1616 static void writeDIFile(raw_ostream &Out, const DIFile *N, TypePrinting *,
1618 Out << "!DIFile(";
1619 MDFieldPrinter Printer(Out);
1624 Out << ")";
1627 static void writeDICompileUnit(raw_ostream &Out, const DICompileUnit *N,
1630 Out << "!DICompileUnit(";
1631 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1650 Out << ")";
1653 static void writeDISubprogram(raw_ostream &Out, const DISubprogram *N,
1656 Out << "!DISubprogram(";
1657 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1676 Out << ")";
1679 static void writeDILexicalBlock(raw_ostream &Out, const DILexicalBlock *N,
1682 Out << "!DILexicalBlock(";
1683 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1688 Out << ")";
1691 static void writeDILexicalBlockFile(raw_ostream &Out,
1696 Out << "!DILexicalBlockFile(";
1697 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1702 Out << ")";
1705 static void writeDINamespace(raw_ostream &Out, const DINamespace *N,
1708 Out << "!DINamespace(";
1709 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1714 Out << ")";
1717 static void writeDIMacro(raw_ostream &Out, const DIMacro *N,
1720 Out << "!DIMacro(";
1721 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1726 Out << ")";
1729 static void writeDIMacroFile(raw_ostream &Out, const DIMacroFile *N,
1732 Out << "!DIMacroFile(";
1733 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1737 Out << ")";
1740 static void writeDIModule(raw_ostream &Out, const DIModule *N,
1743 Out << "!DIModule(";
1744 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1750 Out << ")";
1754 static void writeDITemplateTypeParameter(raw_ostream &Out,
1759 Out << "!DITemplateTypeParameter(";
1760 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1763 Out << ")";
1766 static void writeDITemplateValueParameter(raw_ostream &Out,
1771 Out << "!DITemplateValueParameter(";
1772 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1778 Out << ")";
1781 static void writeDIGlobalVariable(raw_ostream &Out, const DIGlobalVariable *N,
1784 Out << "!DIGlobalVariable(";
1785 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1796 Out << ")";
1799 static void writeDILocalVariable(raw_ostream &Out, const DILocalVariable *N,
1802 Out << "!DILocalVariable(";
1803 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1811 Out << ")";
1814 static void writeDIExpression(raw_ostream &Out, const DIExpression *N,
1817 Out << "!DIExpression(";
1824 Out << FS << OpStr;
1826 Out << FS << I->getArg(A);
1830 Out << FS << I;
1832 Out << ")";
1835 static void writeDIObjCProperty(raw_ostream &Out, const DIObjCProperty *N,
1838 Out << "!DIObjCProperty(";
1839 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1847 Out << ")";
1850 static void writeDIImportedEntity(raw_ostream &Out, const DIImportedEntity *N,
1853 Out << "!DIImportedEntity(";
1854 MDFieldPrinter Printer(Out, TypePrinter, Machine, Context);
1860 Out << ")";
1864 static void WriteMDNodeBodyInternal(raw_ostream &Out, const MDNode *Node,
1869 Out << "distinct ";
1871 Out << "<temporary!> "; // Handle broken code.
1878 write##CLASS(Out, cast<CLASS>(Node), TypePrinter, Machine, Context); \
1886 static void WriteAsOperandInternal(raw_ostream &Out, const Value *V,
1891 PrintLLVMName(Out, V);
1898 WriteConstantInternal(Out, CV, *TypePrinter, Machine, Context);
1903 Out << "asm ";
1905 Out << "sideeffect ";
1907 Out << "alignstack ";
1910 Out << "inteldialect ";
1911 Out << '"';
1912 PrintEscapedString(IA->getAsmString(), Out);
1913 Out << "\", \"";
1914 PrintEscapedString(IA->getConstraintString(), Out);
1915 Out << '"';
1920 WriteAsOperandInternal(Out, MD->getMetadata(), TypePrinter, Machine,
1959 Out << Prefix << Slot;
1961 Out << "<badref>";
1964 static void WriteAsOperandInternal(raw_ostream &Out, const Metadata *MD,
1978 Out << "<" << N << ">";
1980 Out << '!' << Slot;
1985 Out << "!\"";
1986 PrintEscapedString(MDS->getString(), Out);
1987 Out << '"';
1996 TypePrinter->print(V->getValue()->getType(), Out);
1997 Out << ' ';
1998 WriteAsOperandInternal(Out, V->getValue(), TypePrinter, Machine, Context);
2003 formatted_raw_ostream &Out;
2070 : Out(o), TheModule(M), Machine(Mac), AnnotationWriter(AAW),
2086 Out << "<null operand!>";
2090 TypePrinter.print(Operand->getType(), Out);
2091 Out << ' ';
2093 WriteAsOperandInternal(Out, Operand, &TypePrinter, &Machine, TheModule);
2102 case SingleThread: Out << " singlethread"; break;
2107 default: Out << " <bad ordering " << int(Ordering) << ">"; break;
2108 case Unordered: Out << " unordered"; break;
2109 case Monotonic: Out << " monotonic"; break;
2110 case Acquire: Out << " acquire"; break;
2111 case Release: Out << " release"; break;
2112 case AcquireRelease: Out << " acq_rel"; break;
2113 case SequentiallyConsistent: Out << " seq_cst"; break;
2123 case SingleThread: Out << " singlethread"; break;
2128 default: Out << " <bad ordering " << int(SuccessOrdering) << ">"; break;
2129 case Unordered: Out << " unordered"; break;
2130 case Monotonic: Out << " monotonic"; break;
2131 case Acquire: Out << " acquire"; break;
2132 case Release: Out << " release"; break;
2133 case AcquireRelease: Out << " acq_rel"; break;
2134 case SequentiallyConsistent: Out << " seq_cst"; break;
2138 default: Out << " <bad ordering " << int(FailureOrdering) << ">"; break;
2139 case Unordered: Out << " unordered"; break;
2140 case Monotonic: Out << " monotonic"; break;
2141 case Acquire: Out << " acquire"; break;
2142 case Release: Out << " release"; break;
2143 case AcquireRelease: Out << " acq_rel"; break;
2144 case SequentiallyConsistent: Out << " seq_cst"; break;
2151 Out << "<null operand!>";
2156 TypePrinter.print(Operand->getType(), Out);
2159 Out << ' ' << Attrs.getAsString(Idx);
2160 Out << ' ';
2162 WriteAsOperandInternal(Out, Operand, &TypePrinter, &Machine, TheModule);
2169 Out << " [ ";
2176 Out << ", ";
2179 Out << '"';
2180 PrintEscapedString(BU.getTagName(), Out);
2181 Out << '"';
2183 Out << '(';
2188 Out << ", ";
2191 TypePrinter.print(Input->getType(), Out);
2192 Out << " ";
2193 WriteAsOperandInternal(Out, Input, &TypePrinter, &Machine, TheModule);
2196 Out << ')';
2199 Out << " ]";
2212 Out << "; ModuleID = '" << M->getModuleIdentifier() << "'\n";
2216 Out << "target datalayout = \"" << DL << "\"\n";
2218 Out << "target triple = \"" << M->getTargetTriple() << "\"\n";
2221 Out << '\n';
2231 Out << "module asm \"";
2232 PrintEscapedString(Front, Out);
2233 Out << "\"\n";
2241 Out << '\n';
2245 Out << '\n';
2249 if (!M->global_empty()) Out << '\n';
2251 printGlobal(&GV); Out << '\n';
2255 if (!M->alias_empty()) Out << "\n";
2269 Out << '\n';
2274 if (!M->named_metadata_empty()) Out << '\n';
2281 Out << '\n';
2287 formatted_raw_ostream &Out) {
2289 Out << "<empty name> ";
2293 Out << Name[0];
2295 Out << '\\' << hexdigit(Name[0] >> 4) << hexdigit(Name[0] & 0x0F);
2300 Out << C;
2302 Out << '\\' << hexdigit(C >> 4) << hexdigit(C & 0x0F);
2308 Out << '!';
2309 printMetadataIdentifier(NMD->getName(), Out);
2310 Out << " = !{";
2313 Out << ", ";
2316 Out << "<badref>";
2318 Out << '!' << Slot;
2320 Out << "}\n";
2324 formatted_raw_ostream &Out) {
2327 case GlobalValue::PrivateLinkage: Out << "private "; break;
2328 case GlobalValue::InternalLinkage: Out << "internal "; break;
2329 case GlobalValue::LinkOnceAnyLinkage: Out << "linkonce "; break;
2330 case GlobalValue::LinkOnceODRLinkage: Out << "linkonce_odr "; break;
2331 case GlobalValue::WeakAnyLinkage: Out << "weak "; break;
2332 case GlobalValue::WeakODRLinkage: Out << "weak_odr "; break;
2333 case GlobalValue::CommonLinkage: Out << "common "; break;
2334 case GlobalValue::AppendingLinkage: Out << "appending "; break;
2335 case GlobalValue::ExternalWeakLinkage: Out << "extern_weak "; break;
2337 Out << "available_externally ";
2343 formatted_raw_ostream &Out) {
2346 case GlobalValue::HiddenVisibility: Out << "hidden "; break;
2347 case GlobalValue::ProtectedVisibility: Out << "protected "; break;
2352 formatted_raw_ostream &Out) {
2355 case GlobalValue::DLLImportStorageClass: Out << "dllimport "; break;
2356 case GlobalValue::DLLExportStorageClass: Out << "dllexport "; break;
2361 formatted_raw_ostream &Out) {
2366 Out << "thread_local ";
2369 Out << "thread_local(localdynamic) ";
2372 Out << "thread_local(initialexec) ";
2375 Out << "thread_local(localexec) ";
2380 static void maybePrintComdat(formatted_raw_ostream &Out,
2387 Out << ',';
2388 Out << " comdat";
2393 Out << '(';
2394 PrintLLVMName(Out, C->getName(), ComdatPrefix);
2395 Out << ')';
2400 Out << "; Materializable\n";
2402 WriteAsOperandInternal(Out, GV, &TypePrinter, &Machine, GV->getParent());
2403 Out << " = ";
2406 Out << "external ";
2408 PrintLinkage(GV->getLinkage(), Out);
2409 PrintVisibility(GV->getVisibility(), Out);
2410 PrintDLLStorageClass(GV->getDLLStorageClass(), Out);
2411 PrintThreadLocalModel(GV->getThreadLocalMode(), Out);
2413 Out << "unnamed_addr ";
2416 Out << "addrspace(" << AddressSpace << ") ";
2417 if (GV->isExternallyInitialized()) Out << "externally_initialized ";
2418 Out << (GV->isConstant() ? "constant " : "global ");
2419 TypePrinter.print(GV->getType()->getElementType(), Out);
2422 Out << ' ';
2427 Out << ", section \"";
2428 PrintEscapedString(GV->getSection(), Out);
2429 Out << '"';
2431 maybePrintComdat(Out, *GV);
2433 Out << ", align " << GV->getAlignment();
2440 Out << "; Materializable\n";
2442 WriteAsOperandInternal(Out, GA, &TypePrinter, &Machine, GA->getParent());
2443 Out << " = ";
2445 PrintLinkage(GA->getLinkage(), Out);
2446 PrintVisibility(GA->getVisibility(), Out);
2447 PrintDLLStorageClass(GA->getDLLStorageClass(), Out);
2448 PrintThreadLocalModel(GA->getThreadLocalMode(), Out);
2450 Out << "unnamed_addr ";
2452 Out << "alias ";
2454 TypePrinter.print(GA->getValueType(), Out);
2456 Out << ", ";
2461 TypePrinter.print(GA->getType(), Out);
2462 Out << " <<NULL ALIASEE>>";
2468 Out << '\n';
2472 C->print(Out);
2480 Out << '\n';
2494 Out << '%' << i << " = type ";
2498 TypePrinter.printStructBody(NumberedTypes[i], Out);
2499 Out << '\n';
2503 PrintLLVMName(Out, TypePrinter.NamedTypes[i]->getName(), LocalPrefix);
2504 Out << " = type ";
2508 TypePrinter.printStructBody(TypePrinter.NamedTypes[i], Out);
2509 Out << '\n';
2517 Out << '\n';
2519 if (AnnotationWriter) AnnotationWriter->emitFunctionAnnot(F, Out);
2522 Out << "; Materializable\n";
2544 Out << "; Function Attrs: " << AttrStr << '\n';
2548 Out << "declare ";
2550 Out << "define ";
2552 PrintLinkage(F->getLinkage(), Out);
2553 PrintVisibility(F->getVisibility(), Out);
2554 PrintDLLStorageClass(F->getDLLStorageClass(), Out);
2558 PrintCallingConv(F->getCallingConv(), Out);
2559 Out << " ";
2564 Out << Attrs.getAsString(AttributeSet::ReturnIndex) << ' ';
2565 TypePrinter.print(F->getReturnType(), Out);
2566 Out << ' ';
2567 WriteAsOperandInternal(Out, F, &TypePrinter, &Machine, F->getParent());
2568 Out << '(';
2577 Out << ", ";
2579 TypePrinter.print(FT->getParamType(I), Out);
2582 Out << ' ' << Attrs.getAsString(I + 1);
2590 Out << ", ";
2597 if (FT->getNumParams()) Out << ", ";
2598 Out << "..."; // Output varargs portion of signature!
2600 Out << ')';
2602 Out << " unnamed_addr";
2604 Out << " #" << Machine.getAttributeGroupSlot(Attrs.getFnAttributes());
2606 Out << " section \"";
2607 PrintEscapedString(F->getSection(), Out);
2608 Out << '"';
2610 maybePrintComdat(Out, *F);
2612 Out << " align " << F->getAlignment();
2614 Out << " gc \"" << F->getGC() << '"';
2616 Out << " prefix ";
2620 Out << " prologue ";
2624 Out << " personality ";
2633 Out << '\n';
2635 Out << " {";
2643 Out << "}\n";
2655 TypePrinter.print(Arg->getType(), Out);
2659 Out << ' ' << Attrs.getAsString(Idx);
2663 Out << ' ';
2664 PrintLLVMName(Out, Arg);
2672 Out << "\n";
2673 PrintLLVMName(Out, BB->getName(), LabelPrefix);
2674 Out << ':';
2676 Out << "\n; <label>:";
2679 Out << Slot;
2681 Out << "<badref>";
2685 Out.PadToColumn(50);
2686 Out << "; Error: Block without parent!";
2689 Out.PadToColumn(50);
2690 Out << ";";
2694 Out << " No predecessors!";
2696 Out << " preds = ";
2699 Out << ", ";
2705 Out << "\n";
2707 if (AnnotationWriter) AnnotationWriter->emitBasicBlockStartAnnot(BB, Out);
2714 if (AnnotationWriter) AnnotationWriter->emitBasicBlockEndAnnot(BB, Out);
2720 Out << '\n';
2726 Out << " ; (";
2728 Out << ", ";
2730 Out << ")";
2741 AnnotationWriter->printInfoComment(V, Out);
2746 if (AnnotationWriter) AnnotationWriter->emitInstructionAnnot(&I, Out);
2749 Out << " ";
2753 PrintLLVMName(Out, &I);
2754 Out << " = ";
2759 Out << "<badref> = ";
2761 Out << '%' << SlotNum << " = ";
2766 Out << "musttail ";
2768 Out << "tail ";
2770 Out << "notail ";
2774 Out << I.getOpcodeName();
2779 Out << " atomic";
2782 Out << " weak";
2789 Out << " volatile";
2792 WriteOptimizationInfo(Out, &I);
2796 Out << ' ' << getPredicateText(CI->getPredicate());
2800 writeAtomicRMWOperation(Out, RMWI->getOperation());
2808 Out << ' ';
2810 Out << ", ";
2812 Out << ", ";
2818 Out << ' ';
2820 Out << ", ";
2822 Out << " [";
2825 Out << "\n ";
2827 Out << ", ";
2830 Out << "\n ]";
2833 Out << ' ';
2835 Out << ", [";
2839 Out << ", ";
2842 Out << ']';
2844 Out << ' ';
2845 TypePrinter.print(I.getType(), Out);
2846 Out << ' ';
2849 if (op) Out << ", ";
2850 Out << "[ ";
2851 writeOperand(PN->getIncomingValue(op), false); Out << ", ";
2852 writeOperand(PN->getIncomingBlock(op), false); Out << " ]";
2855 Out << ' ';
2858 Out << ", " << *i;
2860 Out << ' ';
2861 writeOperand(I.getOperand(0), true); Out << ", ";
2864 Out << ", " << *i;
2866 Out << ' ';
2867 TypePrinter.print(I.getType(), Out);
2869 Out << '\n';
2872 Out << " cleanup";
2875 if (i != 0 || LPI->isCleanup()) Out << "\n";
2877 Out << " catch ";
2879 Out << " filter ";
2884 Out << " within ";
2886 Out << " [";
2890 Out << ", ";
2894 Out << "] unwind ";
2898 Out << "to caller";
2900 Out << " within ";
2902 Out << " [";
2906 Out << ", ";
2909 Out << ']';
2911 Out << " void";
2913 Out << " from ";
2916 Out << " to ";
2919 Out << " from ";
2922 Out << " unwind ";
2926 Out << "to caller";
2930 Out << " ";
2931 PrintCallingConv(CI->getCallingConv(), Out);
2940 Out << ' ' << PAL.getAsString(AttributeSet::ReturnIndex);
2946 Out << ' ';
2947 TypePrinter.print(FTy->isVarArg() ? FTy : RetTy, Out);
2948 Out << ' ';
2950 Out << '(';
2953 Out << ", ";
2962 Out << ", ...";
2964 Out << ')';
2966 Out << " #" << Machine.getAttributeGroupSlot(PAL.getFnAttributes());
2978 Out << " ";
2979 PrintCallingConv(II->getCallingConv(), Out);
2983 Out << ' ' << PAL.getAsString(AttributeSet::ReturnIndex);
2989 Out << ' ';
2990 TypePrinter.print(FTy->isVarArg() ? FTy : RetTy, Out);
2991 Out << ' ';
2993 Out << '(';
2996 Out << ", ";
3000 Out << ')';
3002 Out << " #" << Machine.getAttributeGroupSlot(PAL.getFnAttributes());
3006 Out << "\n to ";
3008 Out << " unwind ";
3012 Out << ' ';
3014 Out << "inalloca ";
3015 TypePrinter.print(AI->getAllocatedType(), Out);
3023 Out << ", ";
3027 Out << ", align " << AI->getAlignment();
3031 Out << ' ';
3034 Out << " to ";
3035 TypePrinter.print(I.getType(), Out);
3038 Out << ' ';
3041 Out << ", ";
3042 TypePrinter.print(I.getType(), Out);
3045 Out << ' ';
3046 TypePrinter.print(GEP->getSourceElementType(), Out);
3047 Out << ',';
3049 Out << ' ';
3050 TypePrinter.print(LI->getType(), Out);
3051 Out << ',';
3077 Out << ' ';
3078 TypePrinter.print(TheType, Out);
3081 Out << ' ';
3083 if (i) Out << ", ";
3093 Out << ", align " << LI->getAlignment();
3098 Out << ", align " << SI->getAlignment();
3128 Out << Separator;
3130 Out << "!";
3131 printMetadataIdentifier(MDNames[Kind], Out);
3133 Out << "!<unknown kind #" << Kind << ">";
3134 Out << ' ';
3135 WriteAsOperandInternal(Out, I.second, &TypePrinter, &Machine, TheModule);
3140 Out << '!' << Slot << " = ";
3142 Out << "\n";
3158 WriteMDNodeBodyInternal(Out, Node, &TypePrinter, &Machine, TheModule);
3171 Out << "attributes #" << I->second << " = { "
3178 Out << " ";
3180 Out << "uselistorder";
3183 Out << "_bb ";
3185 Out << ", ";
3188 Out << " ";
3191 Out << ", { ";
3194 Out << Order.Shuffle[0];
3196 Out << ", " << Order.Shuffle[I];
3197 Out << " }\n";
3207 Out << "\n; uselistorder directives\n";