Lines Matching refs:WS

472     const auto &WS = static_cast<const MCSymbolWasm &>(S);  in executePostLayoutBinding()  local
473 if (WS.isDefined() && WS.isFunction() && !WS.isVariable()) { in executePostLayoutBinding()
1349 const auto &WS = static_cast<const MCSymbolWasm &>(S); in prepareImports() local
1353 if (WS.isFunction()) { in prepareImports()
1361 if (WS.isTag()) in prepareImports()
1362 registerTagType(WS); in prepareImports()
1364 if (WS.isTemporary()) in prepareImports()
1368 if (!WS.isDefined() && !WS.isComdat()) { in prepareImports()
1369 if (WS.isFunction()) { in prepareImports()
1371 Import.Module = WS.getImportModule(); in prepareImports()
1372 Import.Field = WS.getImportName(); in prepareImports()
1374 Import.SigIndex = getFunctionType(WS); in prepareImports()
1376 assert(WasmIndices.count(&WS) == 0); in prepareImports()
1377 WasmIndices[&WS] = NumFunctionImports++; in prepareImports()
1378 } else if (WS.isGlobal()) { in prepareImports()
1379 if (WS.isWeak()) in prepareImports()
1383 Import.Field = WS.getImportName(); in prepareImports()
1385 Import.Module = WS.getImportModule(); in prepareImports()
1386 Import.Global = WS.getGlobalType(); in prepareImports()
1388 assert(WasmIndices.count(&WS) == 0); in prepareImports()
1389 WasmIndices[&WS] = NumGlobalImports++; in prepareImports()
1390 } else if (WS.isTag()) { in prepareImports()
1391 if (WS.isWeak()) in prepareImports()
1395 Import.Module = WS.getImportModule(); in prepareImports()
1396 Import.Field = WS.getImportName(); in prepareImports()
1398 Import.SigIndex = getTagType(WS); in prepareImports()
1400 assert(WasmIndices.count(&WS) == 0); in prepareImports()
1401 WasmIndices[&WS] = NumTagImports++; in prepareImports()
1402 } else if (WS.isTable()) { in prepareImports()
1403 if (WS.isWeak()) in prepareImports()
1407 Import.Module = WS.getImportModule(); in prepareImports()
1408 Import.Field = WS.getImportName(); in prepareImports()
1410 Import.Table = WS.getTableType(); in prepareImports()
1412 assert(WasmIndices.count(&WS) == 0); in prepareImports()
1413 WasmIndices[&WS] = NumTableImports++; in prepareImports()
1420 const auto &WS = static_cast<const MCSymbolWasm &>(S); in prepareImports() local
1421 if (WS.isUsedInGOT()) { in prepareImports()
1423 if (WS.isFunction()) in prepareImports()
1427 Import.Field = WS.getName(); in prepareImports()
1431 assert(GOTIndices.count(&WS) == 0); in prepareImports()
1432 GOTIndices[&WS] = NumGlobalImports++; in prepareImports()
1569 const auto &WS = static_cast<const MCSymbolWasm &>(S); in writeOneObject() local
1572 << toString(WS.getType().value_or(wasm::WASM_SYMBOL_TYPE_DATA)) in writeOneObject()
1576 << " isWeak=" << WS.isWeak() << " isHidden=" << WS.isHidden() in writeOneObject()
1577 << " isVariable=" << WS.isVariable() << "\n"); in writeOneObject()
1579 if (WS.isVariable()) in writeOneObject()
1581 if (WS.isComdat() && !WS.isDefined()) in writeOneObject()
1584 if (WS.isFunction()) { in writeOneObject()
1586 if (WS.isDefined()) { in writeOneObject()
1587 if (WS.getOffset() != 0) in writeOneObject()
1594 Func.SigIndex = getFunctionType(WS); in writeOneObject()
1595 Func.Section = &WS.getSection(); in writeOneObject()
1596 assert(WasmIndices.count(&WS) == 0); in writeOneObject()
1597 WasmIndices[&WS] = Index; in writeOneObject()
1600 auto &Section = static_cast<MCSectionWasm &>(WS.getSection()); in writeOneObject()
1606 if (WS.hasExportName()) { in writeOneObject()
1608 Export.Name = WS.getExportName(); in writeOneObject()
1615 Index = WasmIndices.find(&WS)->second; in writeOneObject()
1620 } else if (WS.isData()) { in writeOneObject()
1621 if (!isInSymtab(WS)) in writeOneObject()
1624 if (!WS.isDefined()) { in writeOneObject()
1630 if (!WS.getSize()) in writeOneObject()
1632 WS.getName()); in writeOneObject()
1635 if (!WS.getSize()->evaluateAsAbsolute(Size, Layout)) in writeOneObject()
1638 auto &DataSection = static_cast<MCSectionWasm &>(WS.getSection()); in writeOneObject()
1641 WS.getName()); in writeOneObject()
1646 DataSection.getSegmentIndex(), Layout.getSymbolOffset(WS), in writeOneObject()
1648 assert(DataLocations.count(&WS) == 0); in writeOneObject()
1649 DataLocations[&WS] = Ref; in writeOneObject()
1652 } else if (WS.isGlobal()) { in writeOneObject()
1654 if (WS.isDefined()) { in writeOneObject()
1656 Global.Type = WS.getGlobalType(); in writeOneObject()
1678 assert(WasmIndices.count(&WS) == 0); in writeOneObject()
1679 WasmIndices[&WS] = Global.Index; in writeOneObject()
1684 << WasmIndices.find(&WS)->second << "\n"); in writeOneObject()
1686 } else if (WS.isTable()) { in writeOneObject()
1687 if (WS.isDefined()) { in writeOneObject()
1690 Table.Type = WS.getTableType(); in writeOneObject()
1691 assert(WasmIndices.count(&WS) == 0); in writeOneObject()
1692 WasmIndices[&WS] = Table.Index; in writeOneObject()
1696 << WasmIndices.find(&WS)->second << "\n"); in writeOneObject()
1697 } else if (WS.isTag()) { in writeOneObject()
1701 if (WS.isDefined()) { in writeOneObject()
1703 uint32_t SigIndex = getTagType(WS); in writeOneObject()
1704 assert(WasmIndices.count(&WS) == 0); in writeOneObject()
1705 WasmIndices[&WS] = Index; in writeOneObject()
1709 assert(WasmIndices.count(&WS) > 0); in writeOneObject()
1711 LLVM_DEBUG(dbgs() << " -> tag index: " << WasmIndices.find(&WS)->second in writeOneObject()
1715 assert(WS.isSection()); in writeOneObject()
1736 const auto &WS = static_cast<const MCSymbolWasm &>(S); in writeOneObject() local
1737 LLVM_DEBUG(dbgs() << WS.getName() << ": weak alias of '" << *Base in writeOneObject()
1743 assert(WasmIndices.count(&WS) == 0); in writeOneObject()
1744 WasmIndices[&WS] = WasmIndex; in writeOneObject()
1747 auto &DataSection = static_cast<MCSectionWasm &>(WS.getSection()); in writeOneObject()
1764 DataLocations[&WS] = Ref; in writeOneObject()
1774 const auto &WS = static_cast<const MCSymbolWasm &>(S); in writeOneObject() local
1775 if (!isInSymtab(WS)) { in writeOneObject()
1776 WS.setIndex(InvalidIndex); in writeOneObject()
1779 LLVM_DEBUG(dbgs() << "adding to symtab: " << WS << "\n"); in writeOneObject()
1782 if (WS.isWeak()) in writeOneObject()
1784 if (WS.isHidden()) in writeOneObject()
1786 if (!WS.isExternal() && WS.isDefined()) in writeOneObject()
1788 if (WS.isUndefined()) in writeOneObject()
1790 if (WS.isNoStrip()) { in writeOneObject()
1796 if (WS.hasImportName()) in writeOneObject()
1798 if (WS.hasExportName()) in writeOneObject()
1800 if (WS.isTLS()) in writeOneObject()
1804 Info.Name = WS.getName(); in writeOneObject()
1805 Info.Kind = WS.getType().value_or(wasm::WASM_SYMBOL_TYPE_DATA); in writeOneObject()
1807 if (!WS.isData()) { in writeOneObject()
1808 assert(WasmIndices.count(&WS) > 0); in writeOneObject()
1809 Info.ElementIndex = WasmIndices.find(&WS)->second; in writeOneObject()
1810 } else if (WS.isDefined()) { in writeOneObject()
1811 assert(DataLocations.count(&WS) > 0); in writeOneObject()
1812 Info.DataRef = DataLocations.find(&WS)->second; in writeOneObject()
1814 WS.setIndex(SymbolInfos.size()); in writeOneObject()
1851 const auto &WS = static_cast<const MCSectionWasm &>(S); in writeOneObject() local
1852 if (WS.getName().startswith(".fini_array")) in writeOneObject()
1854 if (!WS.getName().startswith(".init_array")) in writeOneObject()
1856 if (WS.getFragmentList().empty()) in writeOneObject()
1860 if (WS.getFragmentList().size() != 3) in writeOneObject()
1863 auto IT = WS.begin(); in writeOneObject()
1882 if (WS.getName().size() > PrefixLength) { in writeOneObject()
1883 if (WS.getName()[PrefixLength] != '.') in writeOneObject()
1886 if (WS.getName().substr(PrefixLength + 1).getAsInteger(10, Priority)) in writeOneObject()