mirror of
https://github.com/RGBCube/serenity
synced 2025-07-10 05:37:35 +00:00
LibDebug: Keep track of 'prologue end'
This LineProgram instruction is emitted by Clang. Although we currently have no use for it (it's mostly a debugger feature), we need to handle this opcode, as otherwise CrashReporter wouldn't work.
This commit is contained in:
parent
f94532ea4e
commit
a59b9357e3
2 changed files with 6 additions and 0 deletions
|
@ -246,6 +246,10 @@ void LineProgram::handle_standard_opcode(u8 opcode)
|
||||||
m_basic_block = true;
|
m_basic_block = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case StandardOpcodes::SetProlougeEnd: {
|
||||||
|
m_prologue_end = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
dbgln("Unhandled LineProgram opcode {}", opcode);
|
dbgln("Unhandled LineProgram opcode {}", opcode);
|
||||||
VERIFY_NOT_REACHED();
|
VERIFY_NOT_REACHED();
|
||||||
|
@ -268,6 +272,7 @@ void LineProgram::handle_special_opcode(u8 opcode)
|
||||||
append_to_line_info();
|
append_to_line_info();
|
||||||
|
|
||||||
m_basic_block = false;
|
m_basic_block = false;
|
||||||
|
m_prologue_end = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void LineProgram::run_program()
|
void LineProgram::run_program()
|
||||||
|
|
|
@ -181,6 +181,7 @@ private:
|
||||||
size_t m_file_index { 0 };
|
size_t m_file_index { 0 };
|
||||||
bool m_is_statement { false };
|
bool m_is_statement { false };
|
||||||
bool m_basic_block { false };
|
bool m_basic_block { false };
|
||||||
|
bool m_prologue_end { false };
|
||||||
|
|
||||||
Vector<LineInfo> m_lines;
|
Vector<LineInfo> m_lines;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue