summaryrefslogtreecommitdiff
path: root/src/arch/x86/emulenv.cc
AgeCommit message (Collapse)Author
2009-08-03X86: Fix segment override prefixes on instructions that use rbp/rsp and a ↵Gabe Black
displacement.
2009-04-19X86: Actually handle 16 bit mode modrm.Gabe Black
2009-02-27X86: Respect segment override prefixes even when there's no ModRM byte.Gabe Black
2008-10-10misc: remove #include <cassert> from misc.hh since not everyone needs it.Nathan Binkert
2008-09-27gcc: Add extra parens to quell warnings.Nathan Binkert
Even though we're not incorrect about operator precedence, let's add some parens in some particularly confusing places to placate GCC 4.3 so that we don't have to turn the warning off. Agreed that this is a bit of a pain for those users who get the order of operations correct, but it is likely to prevent bugs in certain cases.
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-08-02X86: Fix special case with SIB index register and REX prefix.Gabe Black
--HG-- extra : convert_revision : b305708a722f2a08cb55c4548c5616fcbe6c5d68
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-06-20Forgot to check these in...Gabe Black
--HG-- extra : convert_revision : f489fda15740bae0a73bfb012f3bab5790b5c2b5