Lines Matching refs:stack
544 static bool Evaluate_DW_OP_entry_value(std::vector<Value> &stack, in Evaluate_DW_OP_entry_value() argument
750 stack.push_back(result); in Evaluate_DW_OP_entry_value()
879 std::vector<Value> stack; in Evaluate() local
894 stack.push_back(*initial_value_ptr); in Evaluate()
926 size_t count = stack.size(); in Evaluate()
932 stack[i].Dump(&new_value); in Evaluate()
943 stack.push_back(Scalar(opcodes.GetAddress(&offset))); in Evaluate()
948 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
950 stack.back().SetValueType(Value::ValueType::FileAddress); in Evaluate()
998 if (stack.empty()) { in Evaluate()
1003 Value::ValueType value_type = stack.back().GetValueType(); in Evaluate()
1006 void *src = (void *)stack.back().GetScalar().ULongLong(); in Evaluate()
1009 stack.back().GetScalar() = ptr; in Evaluate()
1010 stack.back().ClearContext(); in Evaluate()
1013 auto file_addr = stack.back().GetScalar().ULongLong( in Evaluate()
1023 stack.back().GetScalar() = *maybe_load_addr; in Evaluate()
1029 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
1035 stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS); in Evaluate()
1042 stack.back().GetScalar() = pointer_value; in Evaluate()
1043 stack.back().ClearContext(); in Evaluate()
1086 if (stack.empty()) { in Evaluate()
1100 Value::ValueType value_type = stack.back().GetValueType(); in Evaluate()
1103 void *src = (void *)stack.back().GetScalar().ULongLong(); in Evaluate()
1139 stack.back().GetScalar() = ptr; in Evaluate()
1140 stack.back().ClearContext(); in Evaluate()
1144 stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS); in Evaluate()
1165 stack.back().GetScalar() = DerefSizeExtractDataHelper( in Evaluate()
1167 stack.back().ClearContext(); in Evaluate()
1178 stack.back().GetScalar() = load_addr; in Evaluate()
1188 stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS); in Evaluate()
1194 stack.back().GetScalar() = in Evaluate()
1197 stack.back().ClearContext(); in Evaluate()
1275 stack.push_back(to_generic(opcodes.GetU8(&offset))); in Evaluate()
1278 stack.push_back(to_generic((int8_t)opcodes.GetU8(&offset))); in Evaluate()
1281 stack.push_back(to_generic(opcodes.GetU16(&offset))); in Evaluate()
1284 stack.push_back(to_generic((int16_t)opcodes.GetU16(&offset))); in Evaluate()
1287 stack.push_back(to_generic(opcodes.GetU32(&offset))); in Evaluate()
1290 stack.push_back(to_generic((int32_t)opcodes.GetU32(&offset))); in Evaluate()
1293 stack.push_back(to_generic(opcodes.GetU64(&offset))); in Evaluate()
1296 stack.push_back(to_generic((int64_t)opcodes.GetU64(&offset))); in Evaluate()
1301 stack.push_back(Scalar(opcodes.GetULEB128(&offset))); in Evaluate()
1304 stack.push_back(Scalar(opcodes.GetSLEB128(&offset))); in Evaluate()
1311 if (stack.empty()) { in Evaluate()
1316 stack.push_back(stack.back()); in Evaluate()
1323 if (stack.empty()) { in Evaluate()
1328 stack.pop_back(); in Evaluate()
1336 if (stack.size() < 2) { in Evaluate()
1342 stack.push_back(stack[stack.size() - 2]); in Evaluate()
1351 if (pick_idx < stack.size()) in Evaluate()
1352 stack.push_back(stack[stack.size() - 1 - pick_idx]); in Evaluate()
1367 if (stack.size() < 2) { in Evaluate()
1373 tmp = stack.back(); in Evaluate()
1374 stack.back() = stack[stack.size() - 2]; in Evaluate()
1375 stack[stack.size() - 2] = tmp; in Evaluate()
1386 if (stack.size() < 3) { in Evaluate()
1392 size_t last_idx = stack.size() - 1; in Evaluate()
1393 Value old_top = stack[last_idx]; in Evaluate()
1394 stack[last_idx] = stack[last_idx - 1]; in Evaluate()
1395 stack[last_idx - 1] = stack[last_idx - 2]; in Evaluate()
1396 stack[last_idx - 2] = old_top; in Evaluate()
1406 if (stack.empty()) { in Evaluate()
1411 } else if (!stack.back().ResolveValue(exe_ctx).AbsoluteValue()) { in Evaluate()
1424 if (stack.size() < 2) { in Evaluate()
1430 tmp = stack.back(); in Evaluate()
1431 stack.pop_back(); in Evaluate()
1432 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1433 stack.back().ResolveValue(exe_ctx) & tmp.ResolveValue(exe_ctx); in Evaluate()
1443 if (stack.size() < 2) { in Evaluate()
1449 tmp = stack.back(); in Evaluate()
1455 stack.pop_back(); in Evaluate()
1458 dividend = stack.back().ResolveValue(exe_ctx); in Evaluate()
1461 stack.back() = dividend / divisor; in Evaluate()
1462 if (!stack.back().ResolveValue(exe_ctx).IsValid()) { in Evaluate()
1476 if (stack.size() < 2) { in Evaluate()
1482 tmp = stack.back(); in Evaluate()
1483 stack.pop_back(); in Evaluate()
1484 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1485 stack.back().ResolveValue(exe_ctx) - tmp.ResolveValue(exe_ctx); in Evaluate()
1495 if (stack.size() < 2) { in Evaluate()
1501 tmp = stack.back(); in Evaluate()
1502 stack.pop_back(); in Evaluate()
1503 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1504 stack.back().ResolveValue(exe_ctx) % tmp.ResolveValue(exe_ctx); in Evaluate()
1513 if (stack.size() < 2) { in Evaluate()
1519 tmp = stack.back(); in Evaluate()
1520 stack.pop_back(); in Evaluate()
1521 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1522 stack.back().ResolveValue(exe_ctx) * tmp.ResolveValue(exe_ctx); in Evaluate()
1530 if (stack.empty()) { in Evaluate()
1536 if (!stack.back().ResolveValue(exe_ctx).UnaryNegate()) { in Evaluate()
1549 if (stack.empty()) { in Evaluate()
1555 if (!stack.back().ResolveValue(exe_ctx).OnesComplement()) { in Evaluate()
1568 if (stack.size() < 2) { in Evaluate()
1574 tmp = stack.back(); in Evaluate()
1575 stack.pop_back(); in Evaluate()
1576 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1577 stack.back().ResolveValue(exe_ctx) | tmp.ResolveValue(exe_ctx); in Evaluate()
1586 if (stack.size() < 2) { in Evaluate()
1592 tmp = stack.back(); in Evaluate()
1593 stack.pop_back(); in Evaluate()
1594 stack.back().GetScalar() += tmp.GetScalar(); in Evaluate()
1603 if (stack.empty()) { in Evaluate()
1611 stack.back().GetScalar() += uconst_value; in Evaluate()
1612 if (!stack.back().GetScalar().IsValid()) { in Evaluate()
1626 if (stack.size() < 2) { in Evaluate()
1632 tmp = stack.back(); in Evaluate()
1633 stack.pop_back(); in Evaluate()
1634 stack.back().ResolveValue(exe_ctx) <<= tmp.ResolveValue(exe_ctx); in Evaluate()
1644 if (stack.size() < 2) { in Evaluate()
1650 tmp = stack.back(); in Evaluate()
1651 stack.pop_back(); in Evaluate()
1652 if (!stack.back().ResolveValue(exe_ctx).ShiftRightLogical( in Evaluate()
1668 if (stack.size() < 2) { in Evaluate()
1674 tmp = stack.back(); in Evaluate()
1675 stack.pop_back(); in Evaluate()
1676 stack.back().ResolveValue(exe_ctx) >>= tmp.ResolveValue(exe_ctx); in Evaluate()
1685 if (stack.size() < 2) { in Evaluate()
1691 tmp = stack.back(); in Evaluate()
1692 stack.pop_back(); in Evaluate()
1693 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1694 stack.back().ResolveValue(exe_ctx) ^ tmp.ResolveValue(exe_ctx); in Evaluate()
1729 if (stack.empty()) { in Evaluate()
1735 tmp = stack.back(); in Evaluate()
1736 stack.pop_back(); in Evaluate()
1765 if (stack.size() < 2) { in Evaluate()
1771 tmp = stack.back(); in Evaluate()
1772 stack.pop_back(); in Evaluate()
1773 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1774 stack.back().ResolveValue(exe_ctx) == tmp.ResolveValue(exe_ctx); in Evaluate()
1786 if (stack.size() < 2) { in Evaluate()
1792 tmp = stack.back(); in Evaluate()
1793 stack.pop_back(); in Evaluate()
1794 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1795 stack.back().ResolveValue(exe_ctx) >= tmp.ResolveValue(exe_ctx); in Evaluate()
1807 if (stack.size() < 2) { in Evaluate()
1813 tmp = stack.back(); in Evaluate()
1814 stack.pop_back(); in Evaluate()
1815 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1816 stack.back().ResolveValue(exe_ctx) > tmp.ResolveValue(exe_ctx); in Evaluate()
1828 if (stack.size() < 2) { in Evaluate()
1834 tmp = stack.back(); in Evaluate()
1835 stack.pop_back(); in Evaluate()
1836 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1837 stack.back().ResolveValue(exe_ctx) <= tmp.ResolveValue(exe_ctx); in Evaluate()
1849 if (stack.size() < 2) { in Evaluate()
1855 tmp = stack.back(); in Evaluate()
1856 stack.pop_back(); in Evaluate()
1857 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1858 stack.back().ResolveValue(exe_ctx) < tmp.ResolveValue(exe_ctx); in Evaluate()
1870 if (stack.size() < 2) { in Evaluate()
1876 tmp = stack.back(); in Evaluate()
1877 stack.pop_back(); in Evaluate()
1878 stack.back().ResolveValue(exe_ctx) = in Evaluate()
1879 stack.back().ResolveValue(exe_ctx) != tmp.ResolveValue(exe_ctx); in Evaluate()
1920 stack.push_back(to_generic(op - DW_OP_lit0)); in Evaluate()
1962 stack.push_back(tmp); in Evaluate()
1974 stack.push_back(tmp); in Evaluate()
2023 stack.push_back(tmp); in Evaluate()
2024 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
2042 stack.push_back(tmp); in Evaluate()
2043 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
2055 stack.push_back(value); in Evaluate()
2056 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
2104 if (stack.empty()) { in Evaluate()
2120 Value curr_piece_source_value(stack.back()); in Evaluate()
2121 stack.pop_back(); in Evaluate()
2233 if (stack.size() < 1) { in Evaluate()
2244 log, dwarf_cu, dwarf4_location_description_kind, &stack.back()); in Evaluate()
2249 switch (stack.back().GetValueType()) { in Evaluate()
2253 if (!stack.back().GetScalar().ExtractBitfield(piece_bit_size, in Evaluate()
2260 (uint64_t)(stack.back().GetScalar().GetByteSize() * 8)); in Evaluate()
2300 stack.push_back(result); in Evaluate()
2320 stack.push_back(*object_address_ptr); in Evaluate()
2382 if (stack.empty()) { in Evaluate()
2388 stack.back().SetValueType(Value::ValueType::Scalar); in Evaluate()
2399 if (stack.size() < 1) { in Evaluate()
2460 Scalar &top = stack.back().ResolveValue(exe_ctx); in Evaluate()
2477 stack.push_back(Scalar(cfa)); in Evaluate()
2478 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
2499 if (stack.size() < 1) { in Evaluate()
2526 stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS); in Evaluate()
2537 stack.back().GetScalar() = tls_load_addr; in Evaluate()
2538 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
2557 stack.push_back(Scalar(value)); in Evaluate()
2562 stack.back().SetValueType(Value::ValueType::LoadAddress); in Evaluate()
2564 stack.back().SetValueType(Value::ValueType::FileAddress); in Evaluate()
2584 stack.push_back(Scalar(value)); in Evaluate()
2589 if (!Evaluate_DW_OP_entry_value(stack, exe_ctx, reg_ctx, opcodes, offset, in Evaluate()
2601 op, opcodes, offset, stack)) { in Evaluate()
2612 if (stack.empty()) { in Evaluate()
2625 log, dwarf_cu, dwarf4_location_description_kind, &stack.back()); in Evaluate()
2628 size_t count = stack.size(); in Evaluate()
2634 stack[i].Dump(&new_value); in Evaluate()
2638 result = stack.back(); in Evaluate()