summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2007-10-23X86: Fix X86_FS compilation.Gabe Black
--HG-- extra : convert_revision : 5f014337e33a9e1ebe4df4063335315539fff69e
2007-10-22X86: Use the cda microop where appropriate. The ENTER instruction still ↵Gabe Black
needs these. --HG-- extra : convert_revision : c5a1a6d66c454f252d3b798c38a6798e7dd486f0
2007-10-22X86: Implement the cda microop which checks if an address is legal to write to.Gabe Black
--HG-- extra : convert_revision : afe20649180dd59ad0702b98f7293be6c9226359
2007-10-22CPU: Add functions to the "ExecContext"s that translate a given address.Gabe Black
--HG-- extra : convert_revision : 7d898c6b6b13094fd05326eaa0b095a3ab132397
2007-10-21X86: Start using the stupd microop, and update statistics accordingly.Gabe Black
--HG-- extra : convert_revision : 4aa9daa4e19acfb3e6840ce5d83cf199e30c2f19
2007-10-21X86: Implement the stupd microop ("store with update", not "stupid") and use ↵Gabe Black
it in ENTER. --HG-- extra : convert_revision : 9151f701162d31ef26298497467c42b7b0ed85d5
2007-10-19X86: Implement the PUSHF, POPF, SAHF, and LAHF instructions.Gabe Black
--HG-- extra : convert_revision : 37c63b1133022fa3432888592f8c84785fb95091
2007-10-19X86: Impelement the HLT instruction and fix the "halt" microop.Gabe Black
--HG-- extra : convert_revision : 932e5bb5bf3644f8468dba92177fb87cc54b891a
2007-10-19X86: Implement a "halt" microop.Gabe Black
--HG-- extra : convert_revision : 53a846a157e4dce42343b81901df1207738f62cd
2007-10-19X86: Implement the ENTER instruction. This could probably be optimized by ↵Gabe Black
cleaning up the indexing in the main loop. --HG-- extra : convert_revision : ad2d560f2a6f36176b22b8510c58cd6fe5a2c9c2
2007-10-18Merge with head.Gabe Black
--HG-- extra : convert_revision : 7a1c612e7f64fc6b35749547d744e919e034e66f
2007-10-18X86: Replace "group10" placeholder with the corresponding instructions in ↵Gabe Black
the decoder. --HG-- extra : convert_revision : ffa8f7c4f8d1e381eefd29247ebd705863d385ad
2007-10-18X86: Implement the string IO instructions, ins and outs.Gabe Black
--HG-- extra : convert_revision : b021e70390d289b22a8e693cd8a99d6e7bd7d2b4
2007-10-18X86: Implement the undocumented SALC instruction which sets AL to 0xFF if ↵Gabe Black
CF=1 and 0x00 otherwise. --HG-- extra : convert_revision : 845d43c544e296d7595f54054906055a9f21ad9f
2007-10-18X86: Implement the XLAT instruction.Gabe Black
--HG-- extra : convert_revision : 22d7d9e79e722293b4dc1e66d8610301dc04c5fa
2007-10-18X86: Implement the BOUND instruction.Gabe Black
--HG-- extra : convert_revision : 7bcfa5b4a47d342bee267cc593a1bd4b4f31abe0
2007-10-18X86: Make the "fault" microop predicated.Gabe Black
--HG-- extra : convert_revision : 48dae1f3c680636833c137fe6b95b37ae84e188c
2007-10-18X86: Make "Inst" the default format instead of WarnUnimpl for one byte opcodes.Gabe Black
--HG-- extra : convert_revision : 591e67fc21f5b72977c5876e39f488494fda77c2
2007-10-18X86: Implement the in/out instructions. These will still need support from ↵Gabe Black
the TLB and memory system. --HG-- extra : convert_revision : a9503248ea9efca7e5247e4f2830967f428b8215
2007-10-18X86: Implement the LOOP instructions.Gabe Black
--HG-- extra : convert_revision : 3ccd0565c83b6d9c9b63f9f7ac2b67839a2c714f
2007-10-18X86: Attach the CMC instruction to the decoder.Gabe Black
--HG-- extra : convert_revision : 909661062017c7640c343e80431eaf365e8fcf53
2007-10-18X86: Implemented the jrcx instruction.Gabe Black
--HG-- extra : convert_revision : d738015ff33449e55d8f1624c8467c1bba193e16
2007-10-18X86: Make wrip sign extend its second operand.Gabe Black
--HG-- extra : convert_revision : 2531af8b442ea5aaefccd7a7999c7720489edc36
2007-10-18CPU: Use the ThreadContext cpu id instead of the params cpu id in all cases.Ali Saidi
--HG-- extra : convert_revision : 6d025764682181b1f67df3b1d8d1d59099136df7
2007-10-16Make the process objects use the Params structs in their constructors, and ↵Gabe Black
use a limit to check if access are on the stack. --HG-- extra : convert_revision : af40a7acf424c4c4f62d0d76db1001a714ae0474
2007-10-12Merge with headGabe Black
--HG-- extra : convert_revision : 490f9909469751a6cdaf6669e4cd4589ce3a4093
2007-10-12Loader: Identify sections based on virtual addresses, and set the ↵Gabe Black
LoadAddrMask correctly for x86. --HG-- extra : convert_revision : efa6cf42f7e69074c645dfcac335a3edf0941389
2007-10-12X86: Added some new versions of MOV and a new argument type tag.Gabe Black
--HG-- extra : convert_revision : e21b2062d68baa983c7c631b3e1fe3149de56427
2007-10-12X86: Implemented LODS.Gabe Black
--HG-- extra : convert_revision : 4bd8f15bbc25f5dce16ea0504ad6dd21805fa56a
2007-10-12X86: Implement MSR reads and writes and the wrsmr and rdmsr instructions.Gabe Black
There are no priviledge checks, so these instructions will all work in all modes. --HG-- extra : convert_revision : ff893eb569313d8aecbfffb47bcbd1c2d65cd393
2007-10-09X86: Get rid of BasicOperate format which wasn't used and referred to ↵Gabe Black
SparcStaticInst --HG-- extra : convert_revision : 5d2eac9a4b3f0fe5e3c3554d91acf8fee368c9dc
2007-10-09X86: Get rid of stray Sparc DPRINTFGabe Black
--HG-- extra : convert_revision : d98b2d95448cab4e689d01ceedaa6ad46f9ffc09
2007-10-09ELF Loader: Use physical addresses instead of virtual ones.Gabe Black
This works in SE mode because the virtual and physical addresses specified for segments are the same. In Alpha, the LoadAddrMask is still necessary because the virtual and physical addresses are the same and apparently rely on the super page mechanism. All of the regressions pass. --HG-- extra : convert_revision : 45e49dec5002d64e541bc466c61a0f304af29ea5
2007-10-07X86: Make x86 initialize more state.Gabe Black
--HG-- extra : convert_revision : a55866efd339ae795da4072c070918bf419b07fa
2007-10-07X86: Work on the x86 tlb.Gabe Black
--HG-- extra : convert_revision : a08a5cb049a6030ba9fd56a89383d56026238dbf
2007-10-07X86: Make faults maintain an error code which gets pushed on the stack.Gabe Black
--HG-- extra : convert_revision : 7576f8cfaec9ddfb65e6ba7a6f64a5f453a42069
2007-10-07X86: Significantly filled out misc regs.Gabe Black
--HG-- extra : convert_revision : 4c53be6568134d65e57f5411df986fd9a89e82c9
2007-10-07X86: Make sure there are fewer spurious differences between instructions for ↵Gabe Black
caching purposes. --HG-- extra : convert_revision : 7e6be1c42f28f92d9e8b47169e683827bb3f4aaf
2007-10-07BitUnion: Fix some types in the bitunion classes.Gabe Black
--HG-- extra : convert_revision : 1c003f9fc9ef3a57c9199d692d172e747581f383
2007-10-07X86: Make initCPU and startupCPU do something basic.Gabe Black
--HG-- extra : convert_revision : 1a04f4402f4f31e4e5cd482c7983d853fe117df5
2007-10-07X86: Make the Interrupts class complain less.Gabe Black
--HG-- extra : convert_revision : 81d9544e85c90139704ffe4a117983df4bfa3bcd
2007-10-07X86: Adjust the config scripts for x86 fs.Gabe Black
--HG-- extra : convert_revision : 36ed22b50066f54be0e51c3419babc07dd218e10
2007-10-07X86: Make an x86 system object.Gabe Black
--HG-- extra : convert_revision : 590a4c29cb9b943a2d8c3a97c5fdfbabb658ac45
2007-10-07X86: Make an x86 platform object.Gabe Black
--HG-- extra : convert_revision : 7d64d3e78960f3bb937579f5d10937bed5f197be
2007-10-07X86: X86 FS compile fix.Gabe Black
--HG-- extra : convert_revision : bedd4cbab570d4ae84af9e8ead8f61db5c3c01dc
2007-10-04Merge with head.Gabe Black
--HG-- extra : convert_revision : aa1969b60044f8ed88e689bdd25eeded2b1105ec
2007-10-04X86: Fix the PageShift constant in isa_traits.hh (I thought I alread did this?)Gabe Black
--HG-- extra : convert_revision : bdc51a66e4fdf4b0a51b5c774ca7372a00a57269
2007-10-04SPARC: Make software trap 3 flush the register windows like the ABI specifies.Gabe Black
--HG-- extra : convert_revision : 8ff43617b56dcca5783d6cc490f87140fc20a36d
2007-10-02Merge with head.Gabe Black
--HG-- extra : convert_revision : 1aa0e4569a7c10e6a395c2c951ac29275b5bcf59
2007-10-02X86: Distinguish between the rep and repe prefixes.Gabe Black
STOS and MOVS only accept the rep prefix which always loops until rcx becomes 0. The other string instructions accept repe (same encoding as rep) and repne which also check the condition code flags each iteration. --HG-- extra : convert_revision : 544149f640302070810fb53e53bfeb0e87160ffc