Home | History | Annotate | Download | only in DebugInfo

Lines Matching refs:prologue

19 void DWARFDebugLine::Prologue::dump(raw_ostream &OS) const {
20 OS << "Line table prologue:\n"
84 Prologue.dump(OS);
167 uint32_t *offset_ptr, Prologue *prologue) {
170 prologue->clear();
171 prologue->TotalLength = debug_line_data.getU32(offset_ptr);
172 prologue->Version = debug_line_data.getU16(offset_ptr);
173 if (prologue->Version != 2)
176 prologue->PrologueLength = debug_line_data.getU32(offset_ptr);
177 const uint32_t end_prologue_offset = prologue->PrologueLength + *offset_ptr;
178 prologue->MinInstLength = debug_line_data.getU8(offset_ptr);
179 prologue->DefaultIsStmt = debug_line_data.getU8(offset_ptr);
180 prologue->LineBase = debug_line_data.getU8(offset_ptr);
181 prologue->LineRange = debug_line_data.getU8(offset_ptr);
182 prologue->OpcodeBase = debug_line_data.getU8(offset_ptr);
184 prologue->StandardOpcodeLengths.reserve(prologue->OpcodeBase-1);
185 for (uint32_t i = 1; i < prologue->OpcodeBase; ++i) {
187 prologue->StandardOpcodeLengths.push_back(op_len);
193 prologue->IncludeDirectories.push_back(s);
206 prologue->FileNames.push_back(fileEntry);
213 fprintf(stderr, "warning: parsing line table prologue at 0x%8.8x should"
227 Prologue *prologue = &state.Prologue;
229 if (!parsePrologue(debug_line_data, offset_ptr, prologue)) {
235 const uint32_t end_offset = debug_line_offset + prologue->TotalLength +
236 sizeof(prologue->TotalLength);
294 // section of the statement program prologue. The index is LEB128(0)
301 // appear; the names in the prologue come before names defined by
310 prologue->FileNames.push_back(fileEntry);
320 } else if (opcode < prologue->OpcodeBase) {
332 // min_inst_length field of the prologue, and adds the
335 prologue->MinInstLength;
381 uint8_t adjust_opcode = 255 - prologue->OpcodeBase;
382 uint64_t addr_offset = (adjust_opcode / prologue->LineRange) *
383 prologue->MinInstLength;
421 // of such opcodes because they are specified in the prologue
424 assert(opcode - 1U < prologue->StandardOpcodeLengths.size());
425 uint8_t opcode_length = prologue->StandardOpcodeLengths[opcode - 1];
465 uint8_t adjust_opcode = opcode - prologue->OpcodeBase;
466 uint64_t addr_offset = (adjust_opcode / prologue->LineRange) *
467 prologue->MinInstLength;
468 int32_t line_offset = prologue->LineBase +
469 (adjust_opcode % prologue->LineRange);
608 if (FileIndex == 0 || FileIndex > Prologue.FileNames.size())
610 const FileNameEntry &Entry = Prologue.FileNames[FileIndex - 1];
621 IncludeDirIndex <= Prologue.IncludeDirectories.size()) {
622 const char *IncludeDir = Prologue.IncludeDirectories[IncludeDirIndex - 1];