summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/insts/data_transfer/stack_operations.py
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: Implement LEAVEGabe Black
--HG-- extra : convert_revision : c642d5018ece82c644e1cfa389b2d3dbd6ab5ffd
2007-07-29X86: Fix popa and push with the stack pointer.Gabe Black
POPA used st instead of ld, and it didn't skip rsp. push rsp needs to store the -original- value of the stack pointer. --HG-- extra : convert_revision : 376370c99b6ab60fb2bc4cd4f0a6dce71153ad06
2007-07-23Implement pusha, popa, three operand imul, hook them into the decoder, and ↵Gabe Black
clean up the decoder a little. --HG-- extra : convert_revision : c1b8f0f433f629e4104e2b04addcdaabf57595e3
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-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-19Get rid of the commented out versions of macroops which have been ↵Gabe Black
reimplemented. The comments are basically functioning like a todo list. --HG-- extra : convert_revision : cb07e3813f6cf882b4a5c77c498ffbca26adf586
2007-06-19Get rid of the immediate and displacement components of the EmulEnv struct ↵Gabe Black
and use them directly out of the instruction. The extra copies are conceptually realistic but are just innefficient as implemented. Also don't use the zeroeth microcode register for general storage since it's now the zero register, and implement a load and a store microops. --HG-- extra : convert_revision : 0686296ca8b72940d961ecc6051063bfda1e932d
2007-06-14Implement a handful more instructions and differentiate macroops based on ↵Gabe Black
the operand types they expect. --HG-- extra : convert_revision : f9c8e694a8c0eb33b988657dca03ab495b65bee8
2007-06-14Make POP special case its dataSize to default to 64 bits in 64 bit mode.Gabe Black
--HG-- extra : convert_revision : 5c6251d962d9997676ffc795bb92eeb588caed39
2007-06-13Partially implement "POP"Gabe Black
--HG-- extra : convert_revision : ba454579a6a82ce4924102a633e5758fb2a30b2d
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