Lines Matching refs:lh
1658 struct line_head lh;
1700 lh.total_length = read_4_bytes (abfd, line_ptr, line_end);
1703 if (lh.total_length == 0xffffffff)
1705 lh.total_length = read_8_bytes (abfd, line_ptr, line_end);
1709 else if (lh.total_length == 0 && unit->addr_size == 8)
1712 lh.total_length = read_4_bytes (abfd, line_ptr, line_end);
1717 if (lh.total_length > stash->dwarf_line_size)
1721 (long) lh.total_length, (long) stash->dwarf_line_size);
1726 line_end = line_ptr + lh.total_length;
1728 lh.version = read_2_bytes (abfd, line_ptr, line_end);
1729 if (lh.version < 2 || lh.version > 4)
1732 (_("Dwarf Error: Unhandled .debug_line version %d."), lh.version);
1738 if (line_ptr + offset_size + (lh.version >=4 ? 6 : 5) >= line_end)
1747 lh.prologue_length = read_4_bytes (abfd, line_ptr, line_end);
1749 lh.prologue_length = read_8_bytes (abfd, line_ptr, line_end);
1752 lh.minimum_instruction_length = read_1_byte (abfd, line_ptr, line_end);
1755 if (lh.version >= 4)
1757 lh.maximum_ops_per_insn = read_1_byte (abfd, line_ptr, line_end);
1761 lh.maximum_ops_per_insn = 1;
1763 if (lh.maximum_ops_per_insn == 0)
1771 lh.default_is_stmt = read_1_byte (abfd, line_ptr, line_end);
1774 lh.line_base = read_1_signed_byte (abfd, line_ptr, line_end);
1777 lh.line_range = read_1_byte (abfd, line_ptr, line_end);
1780 lh.opcode_base = read_1_byte (abfd, line_ptr, line_end);
1783 if (line_ptr + (lh.opcode_base - 1) >= line_end)
1790 amt = lh.opcode_base * sizeof (unsigned char);
1791 lh.standard_opcode_lengths = (unsigned char *) bfd_alloc (abfd, amt);
1793 lh.standard_opcode_lengths[0] = 1;
1795 for (i = 1; i < lh.opcode_base; ++i)
1797 lh.standard_opcode_lengths[i] = read_1_byte (abfd, line_ptr, line_end);
1865 int is_stmt = lh.default_is_stmt;
1881 if (op_code >= lh.opcode_base)
1884 adj_opcode = op_code - lh.opcode_base;
1885 if (lh.line_range == 0)
1887 if (lh.maximum_ops_per_insn == 1)
1888 address += (adj_opcode / lh.line_range
1889 * lh.minimum_instruction_length);
1892 address += ((op_index + adj_opcode / lh.line_range)
1893 / lh.maximum_ops_per_insn
1894 * lh.minimum_instruction_length);
1895 op_index = ((op_index + adj_opcode / lh.line_range)
1896 % lh.maximum_ops_per_insn);
1898 line += lh.line_base + (adj_opcode % lh.line_range);
1992 if (lh.maximum_ops_per_insn == 1)
1993 address += (lh.minimum_instruction_length
2000 address = ((op_index + adjust) / lh.maximum_ops_per_insn
2001 * lh.minimum_instruction_length);
2002 op_index = (op_index + adjust) % lh.maximum_ops_per_insn;
2033 if (lh.maximum_ops_per_insn == 1)
2034 address += (lh.minimum_instruction_length
2035 * ((255 - lh.opcode_base) / lh.line_range));
2038 bfd_vma adjust = ((255 - lh.opcode_base) / lh.line_range);
2039 address += (lh.minimum_instruction_length
2041 / lh.maximum_ops_per_insn));
2042 op_index = (op_index + adjust) % lh.maximum_ops_per_insn;
2052 for (i = 0; i < lh.standard_opcode_lengths[op_code]; i++)