Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-05-14 | Build: Switch to CMake :^) | Sergey Bugaev | |
Closes https://github.com/SerenityOS/serenity/issues/2080 | |||
2020-05-07 | LibX86: Rename build0FSlash() to build_0f_slash() | Linus Groh | |
As spotted by @heavyk this was missed in 57b2b96. | |||
2020-05-04 | LibX86: Simplify "register index to string" functions a bit | Andreas Kling | |
2020-05-04 | LibX86: Remove accidental camelCase in some names | Andreas Kling | |
2020-04-30 | LibX86: Disassemble BSWAP | Andreas Kling | |
2020-04-15 | LibX86: Use MakeUnsigned<T> from AK instead of making a custom one | Andreas Kling | |
2020-04-12 | LibX86: Add a way for Instruction::to_string() to symbolicate addresses | Andreas Kling | |
This patch adds a pure virtual X86::SymbolProvider that can be passed to Instruction::to_string(). If the instruction contains what appears to be a program address, stringification will try to symbolicate that address via the SymbolProvider. This makes it possible (and very flexible) to add symbolication to clients of the disassembler. :^) | |||
2020-04-11 | LibX86: Decode RDRAND instruction | Andreas Kling | |
I was looking at Kernel::get_good_random_bytes() and wondering where the RDRAND instruction was. :^) | |||
2020-04-11 | LibX86: Fix duplicate '+' in SIB byte disassembly | Andreas Kling | |
For SIB bytes with base but no index, we were emitting two '+' chars which looked very off. | |||
2020-04-11 | LibX86: When there are multiple REPZ/REPNZ prefixes, the last one wins | Andreas Kling | |
2020-04-11 | LibX86: Tolerate invalid segment register indices when disassembling | Andreas Kling | |
While #6 and #7 are not valid segment register, they can still be encoded in otherwise-valid instructions, so let's tolerate it. | |||
2020-04-11 | LibX86: Disassemble unknown opcodes as "db %#02x" | Andreas Kling | |
2020-04-11 | LibX86: Decode PADDB, PADDW and PADDD | Andreas Kling | |
2020-04-11 | LibX86: Don't choke on invalid LOCK prefixes for now | Andreas Kling | |
This might be interesting information later, but I'm not sure how to encode it at the moment. | |||
2020-04-11 | LibX86: Fix backwards arguments to ENTER imm16,imm8 | Andreas Kling | |
2020-04-11 | LibX86: Add 8-bit CMPXCHG and allow LOCK CMPXCHG | Andreas Kling | |
2020-04-11 | LibX86: Support decoding basic MMX instructions like MOVQ | Andreas Kling | |
2020-04-11 | LibX86: Run the instruction decoder in 32-bit mode by default | Andreas Kling | |
Let's assume a 32-bit execution environment unless otherwise specified. | |||
2020-04-11 | LibX86: Remove some unnecessary stuff from Disassembler.h | Andreas Kling | |
2020-04-11 | LibX86: Add an X86 instruction decoder library + basic disassembler | Andreas Kling | |
This will be very useful for developer tools like ProfileView, and also for future tools like debuggers and such. :^) |