Sergey Bugaev 
								
							 
						 
						
							
							
							
							
								
							
							
								450a2a0f9c 
								
							 
						 
						
							
							
								
								Build: Switch to CMake :^)  
							
							... 
							
							
							
							Closes https://github.com/SerenityOS/serenity/issues/2080  
							
						 
						
							2020-05-14 20:15:18 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								57f68ac5d7 
								
							 
						 
						
							
							
								
								LibX86: Rename build0FSlash() to build_0f_slash()  
							
							... 
							
							
							
							As spotted by @heavyk this was missed in 57b2b96 
							
						 
						
							2020-05-07 12:22:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a75af443d4 
								
							 
						 
						
							
							
								
								LibX86: Simplify "register index to string" functions a bit  
							
							
							
						 
						
							2020-05-04 13:49:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								57b2b96a67 
								
							 
						 
						
							
							
								
								LibX86: Remove accidental camelCase in some names  
							
							
							
						 
						
							2020-05-04 13:49:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								fec52fa94b 
								
							 
						 
						
							
							
								
								LibX86: Disassemble BSWAP  
							
							
							
						 
						
							2020-04-30 22:15:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								3cdf4cd204 
								
							 
						 
						
							
							
								
								LibX86: Use MakeUnsigned<T> from AK instead of making a custom one  
							
							
							
						 
						
							2020-04-15 16:58:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								e880e4c2d2 
								
							 
						 
						
							
							
								
								LibX86: Add a way for Instruction::to_string() to symbolicate addresses  
							
							... 
							
							
							
							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-12 14:20:04 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								34d07e35bd 
								
							 
						 
						
							
							
								
								LibX86: Decode RDRAND instruction  
							
							... 
							
							
							
							I was looking at Kernel::get_good_random_bytes() and wondering where
the RDRAND instruction was. :^) 
							
						 
						
							2020-04-11 23:37:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								8daddcfa0a 
								
							 
						 
						
							
							
								
								LibX86: Fix duplicate '+' in SIB byte disassembly  
							
							... 
							
							
							
							For SIB bytes with base but no index, we were emitting two '+' chars
which looked very off. 
							
						 
						
							2020-04-11 23:11:10 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								4eceea7c62 
								
							 
						 
						
							
							
								
								LibX86: When there are multiple REPZ/REPNZ prefixes, the last one wins  
							
							
							
						 
						
							2020-04-11 14:05:10 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								1924112d7d 
								
							 
						 
						
							
							
								
								LibX86: Tolerate invalid segment register indices when disassembling  
							
							... 
							
							
							
							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 14:00:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								d7d7a32d47 
								
							 
						 
						
							
							
								
								LibX86: Disassemble unknown opcodes as "db %#02x"  
							
							
							
						 
						
							2020-04-11 13:57:28 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								95df0847c5 
								
							 
						 
						
							
							
								
								LibX86: Decode PADDB, PADDW and PADDD  
							
							
							
						 
						
							2020-04-11 13:57:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								16455e91db 
								
							 
						 
						
							
							
								
								LibX86: Don't choke on invalid LOCK prefixes for now  
							
							... 
							
							
							
							This might be interesting information later, but I'm not sure how to
encode it at the moment. 
							
						 
						
							2020-04-11 13:53:12 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								f115416db3 
								
							 
						 
						
							
							
								
								LibX86: Fix backwards arguments to ENTER imm16,imm8  
							
							
							
						 
						
							2020-04-11 13:51:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								cf7d042e0f 
								
							 
						 
						
							
							
								
								LibX86: Add 8-bit CMPXCHG and allow LOCK CMPXCHG  
							
							
							
						 
						
							2020-04-11 13:46:30 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2ce38d4699 
								
							 
						 
						
							
							
								
								LibX86: Support decoding basic MMX instructions like MOVQ  
							
							
							
						 
						
							2020-04-11 13:42:18 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								e5cde0082a 
								
							 
						 
						
							
							
								
								LibX86: Run the instruction decoder in 32-bit mode by default  
							
							... 
							
							
							
							Let's assume a 32-bit execution environment unless otherwise specified. 
							
						 
						
							2020-04-11 13:24:55 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								8f503da93f 
								
							 
						 
						
							
							
								
								LibX86: Remove some unnecessary stuff from Disassembler.h  
							
							
							
						 
						
							2020-04-11 13:23:52 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								32d83fdee4 
								
							 
						 
						
							
							
								
								LibX86: Add an X86 instruction decoder library + basic disassembler  
							
							... 
							
							
							
							This will be very useful for developer tools like ProfileView, and also
for future tools like debuggers and such. :^) 
							
						 
						
							2020-04-11 13:16:17 +02:00