summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/insts/control_transfer
AgeCommit message (Collapse)Author
2007-09-19X86: Put in stubs for x87, 64 bit and 128 bit SIMD instruction microcode.Gabe Black
--HG-- rename : src/arch/x86/isa/insts/sse/__init__.py => src/arch/x86/isa/insts/simd128/__init__.py extra : convert_revision : efb4405aebaa4a04f33572e7d078ceca45872d9c
2007-08-04X86: Start implementing segmentation support.Gabe Black
Make instructions observe segment prefixes, default segment rules, segment base addresses. Also fix some microcode and add sib and riprel "keywords" to the x86 specialization of the microassembler. --HG-- extra : convert_revision : be5a3b33d33f243ed6e1ad63faea8495e46d0ac9
2007-07-30X86: Force jumps to use 64 bit operand size.Gabe Black
--HG-- extra : convert_revision : 1c3685e7f4d07d5b4ded6c78b794964f51a358a9
2007-07-21Implemented and hooked in xchg, rotate with carry, and ret instructionsGabe Black
--HG-- extra : convert_revision : a8e67b0ab4072308f01e0df7f7ee05b31f605a35
2007-07-20Fixed the distinction between far and near versions of jmp, call and ret. ↵Gabe Black
Implemented some shifts, rotates, and pushes. --HG-- extra : convert_revision : fcb06189ff213e82da16ac43231feb308cb3a285
2007-07-20Implement the rest of the conditional jump instructions and hook them into ↵Gabe Black
the decoder. --HG-- extra : convert_revision : 8d1d6abce29371def560e1c3f31dabb4de01366f
2007-07-20Define and fill out a lot of different instructions and instruction ↵Gabe Black
versions. Added two of the shift microops. --HG-- extra : convert_revision : 0b76953dbb1dc3366242d4d209cccebde86bbe4e
2007-07-20Implement jnbe.Gabe Black
--HG-- extra : convert_revision : cdbf1ff5ed3a63787cbd2187a8a3455a41cc5085
2007-07-20Appended _NEAR to the near version of call and return.Gabe Black
--HG-- extra : convert_revision : 70adb38d59ff7b5d103e58a9f0773dfb911fec6d
2007-07-19x86 fixesGabe Black
Make the emulation environment consider the rex prefix. Implement and hook in forms of j, jmp, cmp, syscall, movzx Added a format for an instruction to carry a call to the SE mode syscalls system Made memory instructions which refer to the rip do so directly Made the operand size overridable in the microassembly Made the "ext" field of register operations 16 bits to hold a sparse encoding of flags to set or conditions to predicate on Added an explicit "rax" operand for the syscall format Implemented syscall returns. --HG-- extra : convert_revision : ae84bd8c6a1d400906e17e8b8c4185f2ebd4c5f2
2007-07-18Implement near returns.Gabe Black
--HG-- extra : convert_revision : 3d6e8a976d31cb016a4b78200716b0ece155137a
2007-07-18Fix a comment to refer to the right type of instruction.Gabe Black
--HG-- extra : convert_revision : dd441d8fbaed1ed8b2b66e3ad0275009bd4dcef4
2007-07-17Implemented jnz.Gabe Black
--HG-- extra : convert_revision : ea169ad68acbb3383443586b783b831b3a9eecf9
2007-07-17Implement the jz instruction.Gabe Black
--HG-- extra : convert_revision : 7c0bd7ce244f724ac03bbb5fdf770c7a3eba78b4
2007-06-21Make symbols for regular registers.Gabe Black
--HG-- extra : convert_revision : 28a6df1efe4298877dc2b20179caeb25dfdc4622
2007-06-21Use the new symbols to clean up the assembler.Gabe Black
--HG-- extra : convert_revision : 005464e875ede1e37dfe0e0482c29fd793ca52be
2007-06-19Make instructions that are illegal in 64 bit mode not do the wrong thing in ↵Gabe Black
64 bit mode. Also add in more versions of PUSH and POP, and a version of near CALL. --HG-- extra : convert_revision : 7d8266cdfa54ac25610466b3533d3e9e5433297b
2007-06-08Move the microcode assembly to a python package instead of isa_parser files. ↵Gabe Black
Also, the code is now a single string which runs through the microcode assembler rather than docstrings associated with classes named after each architectural level instruction. --HG-- extra : convert_revision : 20e6d6ac625dde8f1885acc445882096df562778