reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/lldb/source/Expression/DWARFExpression.cpp
 1039     stack.push_back(*initial_value_ptr);
 1056       size_t count = stack.size();
 1062         stack[i].Dump(&new_value);
 1073       stack.push_back(Scalar(opcodes.GetAddress(&offset)));
 1074       stack.back().SetValueType(Value::eValueTypeFileAddress);
 1078         stack.back().ConvertToLoadAddress(module_sp.get(),
 1126       if (stack.empty()) {
 1131       Value::ValueType value_type = stack.back().GetValueType();
 1134         void *src = (void *)stack.back().GetScalar().ULongLong();
 1137         stack.back().GetScalar() = ptr;
 1138         stack.back().ClearContext();
 1141         auto file_addr = stack.back().GetScalar().ULongLong(
 1163         stack.back().GetScalar() = load_Addr;
 1164         stack.back().SetValueType(Value::eValueTypeLoadAddress);
 1171                 stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS);
 1176               stack.back().GetScalar() = pointer_value;
 1177               stack.back().ClearContext();
 1219       if (stack.empty()) {
 1226       Value::ValueType value_type = stack.back().GetValueType();
 1229         void *src = (void *)stack.back().GetScalar().ULongLong();
 1265         stack.back().GetScalar() = ptr;
 1266         stack.back().ClearContext();
 1272                 stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS);
 1282                 stack.back().GetScalar() = addr_data.GetU8(&addr_data_offset);
 1285                 stack.back().GetScalar() = addr_data.GetU16(&addr_data_offset);
 1288                 stack.back().GetScalar() = addr_data.GetU32(&addr_data_offset);
 1291                 stack.back().GetScalar() = addr_data.GetU64(&addr_data_offset);
 1294                 stack.back().GetScalar() =
 1297               stack.back().ClearContext();
 1371       stack.push_back(Scalar((uint8_t)opcodes.GetU8(&offset)));
 1374       stack.push_back(Scalar((int8_t)opcodes.GetU8(&offset)));
 1377       stack.push_back(Scalar((uint16_t)opcodes.GetU16(&offset)));
 1380       stack.push_back(Scalar((int16_t)opcodes.GetU16(&offset)));
 1383       stack.push_back(Scalar((uint32_t)opcodes.GetU32(&offset)));
 1386       stack.push_back(Scalar((int32_t)opcodes.GetU32(&offset)));
 1389       stack.push_back(Scalar((uint64_t)opcodes.GetU64(&offset)));
 1392       stack.push_back(Scalar((int64_t)opcodes.GetU64(&offset)));
 1395       stack.push_back(Scalar(opcodes.GetULEB128(&offset)));
 1398       stack.push_back(Scalar(opcodes.GetSLEB128(&offset)));
 1405       if (stack.empty()) {
 1410         stack.push_back(stack.back());
 1410         stack.push_back(stack.back());
 1417       if (stack.empty()) {
 1422         stack.pop_back();
 1430       if (stack.size() < 2) {
 1436         stack.push_back(stack[stack.size() - 2]);
 1436         stack.push_back(stack[stack.size() - 2]);
 1436         stack.push_back(stack[stack.size() - 2]);
 1445       if (pick_idx < stack.size())
 1446         stack.push_back(stack[stack.size() - 1 - pick_idx]);
 1446         stack.push_back(stack[stack.size() - 1 - pick_idx]);
 1446         stack.push_back(stack[stack.size() - 1 - pick_idx]);
 1461       if (stack.size() < 2) {
 1467         tmp = stack.back();
 1468         stack.back() = stack[stack.size() - 2];
 1468         stack.back() = stack[stack.size() - 2];
 1468         stack.back() = stack[stack.size() - 2];
 1469         stack[stack.size() - 2] = tmp;
 1469         stack[stack.size() - 2] = tmp;
 1480       if (stack.size() < 3) {
 1486         size_t last_idx = stack.size() - 1;
 1487         Value old_top = stack[last_idx];
 1488         stack[last_idx] = stack[last_idx - 1];
 1488         stack[last_idx] = stack[last_idx - 1];
 1489         stack[last_idx - 1] = stack[last_idx - 2];
 1489         stack[last_idx - 1] = stack[last_idx - 2];
 1490         stack[last_idx - 2] = old_top;
 1500       if (stack.empty()) {
 1505       } else if (!stack.back().ResolveValue(exe_ctx).AbsoluteValue()) {
 1518       if (stack.size() < 2) {
 1524         tmp = stack.back();
 1525         stack.pop_back();
 1526         stack.back().ResolveValue(exe_ctx) =
 1527             stack.back().ResolveValue(exe_ctx) & tmp.ResolveValue(exe_ctx);
 1537       if (stack.size() < 2) {
 1543         tmp = stack.back();
 1549           stack.pop_back();
 1550           stack.back() =
 1551               stack.back().ResolveValue(exe_ctx) / tmp.ResolveValue(exe_ctx);
 1552           if (!stack.back().ResolveValue(exe_ctx).IsValid()) {
 1566       if (stack.size() < 2) {
 1572         tmp = stack.back();
 1573         stack.pop_back();
 1574         stack.back().ResolveValue(exe_ctx) =
 1575             stack.back().ResolveValue(exe_ctx) - tmp.ResolveValue(exe_ctx);
 1585       if (stack.size() < 2) {
 1591         tmp = stack.back();
 1592         stack.pop_back();
 1593         stack.back().ResolveValue(exe_ctx) =
 1594             stack.back().ResolveValue(exe_ctx) % tmp.ResolveValue(exe_ctx);
 1603       if (stack.size() < 2) {
 1609         tmp = stack.back();
 1610         stack.pop_back();
 1611         stack.back().ResolveValue(exe_ctx) =
 1612             stack.back().ResolveValue(exe_ctx) * tmp.ResolveValue(exe_ctx);
 1620       if (stack.empty()) {
 1626         if (!stack.back().ResolveValue(exe_ctx).UnaryNegate()) {
 1639       if (stack.empty()) {
 1645         if (!stack.back().ResolveValue(exe_ctx).OnesComplement()) {
 1658       if (stack.size() < 2) {
 1664         tmp = stack.back();
 1665         stack.pop_back();
 1666         stack.back().ResolveValue(exe_ctx) =
 1667             stack.back().ResolveValue(exe_ctx) | tmp.ResolveValue(exe_ctx);
 1676       if (stack.size() < 2) {
 1682         tmp = stack.back();
 1683         stack.pop_back();
 1684         stack.back().GetScalar() += tmp.GetScalar();
 1693       if (stack.empty()) {
 1701         stack.back().GetScalar() += uconst_value;
 1702         if (!stack.back().GetScalar().IsValid()) {
 1716       if (stack.size() < 2) {
 1722         tmp = stack.back();
 1723         stack.pop_back();
 1724         stack.back().ResolveValue(exe_ctx) <<= tmp.ResolveValue(exe_ctx);
 1734       if (stack.size() < 2) {
 1740         tmp = stack.back();
 1741         stack.pop_back();
 1742         if (!stack.back().ResolveValue(exe_ctx).ShiftRightLogical(
 1758       if (stack.size() < 2) {
 1764         tmp = stack.back();
 1765         stack.pop_back();
 1766         stack.back().ResolveValue(exe_ctx) >>= tmp.ResolveValue(exe_ctx);
 1775       if (stack.size() < 2) {
 1781         tmp = stack.back();
 1782         stack.pop_back();
 1783         stack.back().ResolveValue(exe_ctx) =
 1784             stack.back().ResolveValue(exe_ctx) ^ tmp.ResolveValue(exe_ctx);
 1814       if (stack.empty()) {
 1820         tmp = stack.back();
 1821         stack.pop_back();
 1845       if (stack.size() < 2) {
 1851         tmp = stack.back();
 1852         stack.pop_back();
 1853         stack.back().ResolveValue(exe_ctx) =
 1854             stack.back().ResolveValue(exe_ctx) == tmp.ResolveValue(exe_ctx);
 1866       if (stack.size() < 2) {
 1872         tmp = stack.back();
 1873         stack.pop_back();
 1874         stack.back().ResolveValue(exe_ctx) =
 1875             stack.back().ResolveValue(exe_ctx) >= tmp.ResolveValue(exe_ctx);
 1887       if (stack.size() < 2) {
 1893         tmp = stack.back();
 1894         stack.pop_back();
 1895         stack.back().ResolveValue(exe_ctx) =
 1896             stack.back().ResolveValue(exe_ctx) > tmp.ResolveValue(exe_ctx);
 1908       if (stack.size() < 2) {
 1914         tmp = stack.back();
 1915         stack.pop_back();
 1916         stack.back().ResolveValue(exe_ctx) =
 1917             stack.back().ResolveValue(exe_ctx) <= tmp.ResolveValue(exe_ctx);
 1929       if (stack.size() < 2) {
 1935         tmp = stack.back();
 1936         stack.pop_back();
 1937         stack.back().ResolveValue(exe_ctx) =
 1938             stack.back().ResolveValue(exe_ctx) < tmp.ResolveValue(exe_ctx);
 1950       if (stack.size() < 2) {
 1956         tmp = stack.back();
 1957         stack.pop_back();
 1958         stack.back().ResolveValue(exe_ctx) =
 1959             stack.back().ResolveValue(exe_ctx) != tmp.ResolveValue(exe_ctx);
 2000       stack.push_back(Scalar((uint64_t)(op - DW_OP_lit0)));
 2041         stack.push_back(tmp);
 2052         stack.push_back(tmp);
 2101         stack.push_back(tmp);
 2102         stack.back().SetValueType(Value::eValueTypeLoadAddress);
 2120         stack.push_back(tmp);
 2121         stack.back().SetValueType(Value::eValueTypeLoadAddress);
 2133             stack.push_back(value);
 2134             stack.back().SetValueType(Value::eValueTypeLoadAddress);
 2178         if (stack.empty()) {
 2188           Value curr_piece_source_value(stack.back());
 2189           stack.pop_back();
 2303       if (stack.size() < 1) {
 2311         switch (stack.back().GetValueType()) {
 2313           if (!stack.back().GetScalar().ExtractBitfield(piece_bit_size,
 2320                   (uint64_t)(stack.back().GetScalar().GetByteSize() * 8));
 2358         stack.push_back(*object_address_ptr);
 2419       stack.back().SetValueType(Value::eValueTypeScalar);
 2430       if (stack.size() < 1) {
 2494       Scalar &top = stack.back().ResolveValue(exe_ctx);
 2511           stack.push_back(Scalar(cfa));
 2512           stack.back().SetValueType(Value::eValueTypeLoadAddress);
 2533       if (stack.size() < 1) {
 2560           stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS);
 2571       stack.back().GetScalar() = tls_load_addr;
 2572       stack.back().SetValueType(Value::eValueTypeLoadAddress);
 2591       stack.push_back(Scalar(value));
 2592       stack.back().SetValueType(Value::eValueTypeFileAddress);
 2611       stack.push_back(Scalar(value));
 2615       if (!Evaluate_DW_OP_entry_value(stack, exe_ctx, reg_ctx, opcodes, offset,
 2631   if (stack.empty()) {
 2643       size_t count = stack.size();
 2649         stack[i].Dump(&new_value);
 2653     result = stack.back();