Date: Wed, 27 Nov 2024 22:11:34 +0000
Here's a paper describing the beginnings of a new header file called
<debug> which would standardise debugging across all C++ compilers:
http://www.virjacode.com/papers/stddebug.htm
So far it has stuff for vtables, constructors, destructors. I can
think of other stuff to put in it like:
* is_immediate_jump : Checks the machine code pointed to by a function
pointer to see if the first instruction is a jump, and if so, returns
the address of the jump destination.
* size_of_function : Returns the size in bytes of the machine code of
a function (not sure if the object file containing the function's
machine code always has the function's total size in bytes)
* is_executable_memory : Returns true if code can be executed at the
specified address
* is_readonly_memory : Return true if the specified span<byte> points
to memory which is either partially or fully readonly.
<debug> which would standardise debugging across all C++ compilers:
http://www.virjacode.com/papers/stddebug.htm
So far it has stuff for vtables, constructors, destructors. I can
think of other stuff to put in it like:
* is_immediate_jump : Checks the machine code pointed to by a function
pointer to see if the first instruction is a jump, and if so, returns
the address of the jump destination.
* size_of_function : Returns the size in bytes of the machine code of
a function (not sure if the object file containing the function's
machine code always has the function's total size in bytes)
* is_executable_memory : Returns true if code can be executed at the
specified address
* is_readonly_memory : Return true if the specified span<byte> points
to memory which is either partially or fully readonly.
Received on 2024-11-27 22:11:48