1
Fork 0
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:
Daniel Bertalan 2021-07-26 18:08:16 +02:00 committed by Andreas Kling
parent f94532ea4e
commit a59b9357e3
2 changed files with 6 additions and 0 deletions

View file

@ -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()

View file

@ -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;
}; };