mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 17:02:45 +00:00 
			
		
		
		
	LibX86: Fix backwards arguments to ENTER imm16,imm8
This commit is contained in:
		
							parent
							
								
									cf7d042e0f
								
							
						
					
					
						commit
						f115416db3
					
				
					 1 changed files with 9 additions and 8 deletions
				
			
		|  | @ -134,7 +134,7 @@ enum InstructionFormat { | ||||||
| 
 | 
 | ||||||
|     OP_reg32, |     OP_reg32, | ||||||
|     OP_imm32, |     OP_imm32, | ||||||
|     OP_imm8_imm16, |     OP_imm16_imm8, | ||||||
| 
 | 
 | ||||||
|     OP_NEAR_imm, |     OP_NEAR_imm, | ||||||
| }; | }; | ||||||
|  | @ -231,9 +231,9 @@ static void build(InstructionDescriptor* table, u8 op, const char* mnemonic, Ins | ||||||
|     case OP_relimm32: |     case OP_relimm32: | ||||||
|         d.imm1_bytes = 4; |         d.imm1_bytes = 4; | ||||||
|         break; |         break; | ||||||
|     case OP_imm8_imm16: |     case OP_imm16_imm8: | ||||||
|         d.imm1_bytes = 1; |         d.imm1_bytes = 2; | ||||||
|         d.imm2_bytes = 2; |         d.imm2_bytes = 1; | ||||||
|         break; |         break; | ||||||
|     case OP_imm16_imm16: |     case OP_imm16_imm16: | ||||||
|         d.imm1_bytes = 2; |         d.imm1_bytes = 2; | ||||||
|  | @ -554,7 +554,7 @@ void build_opcode_tables_if_needed() | ||||||
|     build(0xC5, "LDS", OP_reg16_mem16, OP_reg32_mem32); |     build(0xC5, "LDS", OP_reg16_mem16, OP_reg32_mem32); | ||||||
|     build(0xC6, "MOV", OP_RM8_imm8); |     build(0xC6, "MOV", OP_RM8_imm8); | ||||||
|     build(0xC7, "MOV", OP_RM16_imm16, OP_RM32_imm32); |     build(0xC7, "MOV", OP_RM16_imm16, OP_RM32_imm32); | ||||||
|     build(0xC8, "ENTER", OP_imm8_imm16, OP_imm8_imm16); |     build(0xC8, "ENTER", OP_imm16_imm8); | ||||||
|     build(0xC9, "LEAVE", OP, OP); |     build(0xC9, "LEAVE", OP, OP); | ||||||
|     build(0xCA, "RETF", OP_imm16); |     build(0xCA, "RETF", OP_imm16); | ||||||
|     build(0xCB, "RETF", OP); |     build(0xCB, "RETF", OP); | ||||||
|  | @ -1293,6 +1293,7 @@ String Instruction::to_string_internal(u32 origin, bool x32) const | ||||||
|     auto append_rm16 = [&] { builder.append(m_modrm.to_string_o16()); }; |     auto append_rm16 = [&] { builder.append(m_modrm.to_string_o16()); }; | ||||||
|     auto append_rm32 = [&] { builder.append(m_modrm.to_string_o32()); }; |     auto append_rm32 = [&] { builder.append(m_modrm.to_string_o32()); }; | ||||||
|     auto append_imm8 = [&] { builder.appendf("%#02x", imm8()); }; |     auto append_imm8 = [&] { builder.appendf("%#02x", imm8()); }; | ||||||
|  |     auto append_imm8_2 = [&] { builder.appendf("%#02x", imm8_2()); }; | ||||||
|     auto append_imm16 = [&] { builder.appendf("%#04x", imm16()); }; |     auto append_imm16 = [&] { builder.appendf("%#04x", imm16()); }; | ||||||
|     auto append_imm16_1 = [&] { builder.appendf("%#04x", imm16_1()); }; |     auto append_imm16_1 = [&] { builder.appendf("%#04x", imm16_1()); }; | ||||||
|     auto append_imm16_2 = [&] { builder.appendf("%#04x", imm16_2()); }; |     auto append_imm16_2 = [&] { builder.appendf("%#04x", imm16_2()); }; | ||||||
|  | @ -1441,10 +1442,10 @@ String Instruction::to_string_internal(u32 origin, bool x32) const | ||||||
|     case OP_reg32: |     case OP_reg32: | ||||||
|         append_reg32(); |         append_reg32(); | ||||||
|         break; |         break; | ||||||
|     case OP_imm8_imm16: |     case OP_imm16_imm8: | ||||||
|         append_imm8(); |         append_imm16_1(); | ||||||
|         append(", "); |         append(", "); | ||||||
|         append_imm16(); |         append_imm8_2(); | ||||||
|         break; |         break; | ||||||
|     case OP_moff8_AL: |     case OP_moff8_AL: | ||||||
|         append_moff(); |         append_moff(); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling