Age | Commit message (Collapse) | Author | |
---|---|---|---|
2008-06-12 | X86: Implement and hook up STI and CLI instructions. | Gabe Black | |
2008-06-12 | X86: Implement a partial, sort of correct version of the protected mode ↵ | Gabe Black | |
variant of iret. | |||
2008-06-12 | X86: Change how segment loading is performed. | Gabe Black | |
2008-06-12 | X86: Make pushes and pops use the stack size instead of the data size. | Gabe Black | |
2008-06-12 | X86: Add microops and supporting code to manipulate the whole rflags register. | Gabe Black | |
2008-06-12 | X86: Redo BSF. | Gabe Black | |
2008-06-12 | X86: Make string instructions work when rcx=0. | Gabe Black | |
2008-06-12 | X86: Bypass unaligned access support for register addressed MSRs. | Gabe Black | |
2008-06-12 | X86: Fix the implementation of BSF. | Gabe Black | |
2008-06-12 | X86: Bit scan forward/reverse were accidentally transposed. | Gabe Black | |
2008-06-12 | X86: Fix a byte register indexing issue in the sign extending move from ↵ | Gabe Black | |
memory microcode. | |||
2008-06-12 | X86: Add in some support for the tsc register. | Gabe Black | |
2008-02-26 | X86: Implement the INVLPG instruction and the TIA microop. | Gabe Black | |
--HG-- extra : convert_revision : 31db1ee082f6c3ca5443cba1eb335e408661ead2 | |||
2008-01-23 | X86: Optomize the bit scanning instruction microassembly a little. More can ↵ | Gabe Black | |
be done. --HG-- extra : convert_revision : 3cf6e972f0e41e3529a633ecbb31289e1bd17f0f | |||
2008-01-22 | X86: Implement and attach the BSR and BSF instructions. | Gabe Black | |
--HG-- extra : convert_revision : be7e11980092e5d1baff0e05d4ec910305966908 | |||
2008-01-21 | X86: Fill out group17 in the decoder. | Gabe Black | |
--HG-- extra : convert_revision : 66ab9c0fc3086f66e3d6d82d47964ecf406c3a8a | |||
2008-01-12 | X86: Redo the bit test instructions. | Gabe Black | |
--HG-- extra : convert_revision : 433c2a9f3675ed02f3be5ce759a440f2686d2ccd | |||
2008-01-12 | X86: Fix the wrmsr instruction. | Gabe Black | |
--HG-- extra : convert_revision : 12bc7e71226ebafb8eedadf6a3db82929e15e722 | |||
2008-01-12 | X86: Fix the general IO instructions dataSize. | Gabe Black | |
--HG-- extra : convert_revision : 9774a52cb6a8e7632d1b1dc0706e5791cc18d238 | |||
2007-12-03 | X86: Please excuse my dear Aunt Sally. (precedence bug) | Gabe Black | |
--HG-- extra : convert_revision : 9ad4f31e7a962c3177896bcbfb93e2e54720d117 | |||
2007-12-02 | X86: Make sure the memory index is calculated using the address size for bit ↵ | Gabe Black | |
test instructions. --HG-- extra : convert_revision : 9634675857dae53b5e79e49267c864a0265afde1 | |||
2007-12-02 | X86: Fix a copy/paste mistake where the bit test instructions were using an ↵ | Gabe Black | |
immediate where they should use a register. --HG-- extra : convert_revision : b0ee80e4c7fdb58a1eb85b3bcc82a0cdaa93330a | |||
2007-12-02 | X86: Make the 0xA0-0xA3 versions of mov use the right sized immediates. | Gabe Black | |
--HG-- extra : convert_revision : a702403de29772618abb5bd5c5555279d91bdd59 | |||
2007-12-01 | X86: Fix a copy paste error in the bts microcode. | Gabe Black | |
--HG-- extra : convert_revision : c4ac007d35ac13211f9816f1104c84f2b447ddba | |||
2007-12-01 | X86: Implement mov from control register. | Gabe Black | |
--HG-- extra : convert_revision : c8280f0686a3ae6d5c405327540ad15a3a5531f9 | |||
2007-12-01 | X86: First crack at far returns. This is grossly approximate. | Gabe Black | |
--HG-- extra : convert_revision : 23da0338af1f7663ae5ddf2289fb45dd32f37c42 | |||
2007-12-01 | X86: Reorganize segmentation and implement segment selector movs. | Gabe Black | |
--HG-- extra : convert_revision : 553c3ffeda1f5312cf02493f602e7d4ba2fe66e8 | |||
2007-12-01 | X86: Implement the LIDT instruction. | Gabe Black | |
--HG-- extra : convert_revision : 380515e985318311632e00b13000585afb052e3b | |||
2007-12-01 | X86: Implement the lgdt instruction. | Gabe Black | |
--HG-- extra : convert_revision : d1698a82df3c57cc9bbf8d5d190f271bfc7cb2e4 | |||
2007-11-12 | X86: Fix a stupid typo where WRMSR and RDMSR were switched, and add a debug ↵ | Gabe Black | |
statement. --HG-- extra : convert_revision : f1eb17291f4c01f3c0fa8f99650bc1edf09d21de | |||
2007-11-12 | X86: Implement the wrcr microop which writes a control register, and some ↵ | Gabe Black | |
control register work. --HG-- extra : convert_revision : 3e9daef9cdd0665c033420e5b4f981649e9908ab | |||
2007-11-12 | X86: Implement some bit testing instructions. | Gabe Black | |
--HG-- extra : convert_revision : 54585e276e44322be9c56af0b2eabfe8d4b3e430 | |||
2007-11-12 | X86: Change the meaning of the sext and zext width operand, and make sext ↵ | Gabe Black | |
set zext if the sign bit is 0. --HG-- extra : convert_revision : 08bd7b4ff183038c016612d04ac73b20a255d141 | |||
2007-10-22 | X86: Use the cda microop where appropriate. The ENTER instruction still ↵ | Gabe Black | |
needs these. --HG-- extra : convert_revision : c5a1a6d66c454f252d3b798c38a6798e7dd486f0 | |||
2007-10-21 | X86: Start using the stupd microop, and update statistics accordingly. | Gabe Black | |
--HG-- extra : convert_revision : 4aa9daa4e19acfb3e6840ce5d83cf199e30c2f19 | |||
2007-10-21 | X86: Implement the stupd microop ("store with update", not "stupid") and use ↵ | Gabe Black | |
it in ENTER. --HG-- extra : convert_revision : 9151f701162d31ef26298497467c42b7b0ed85d5 | |||
2007-10-19 | X86: Implement the PUSHF, POPF, SAHF, and LAHF instructions. | Gabe Black | |
--HG-- extra : convert_revision : 37c63b1133022fa3432888592f8c84785fb95091 | |||
2007-10-19 | X86: Impelement the HLT instruction and fix the "halt" microop. | Gabe Black | |
--HG-- extra : convert_revision : 932e5bb5bf3644f8468dba92177fb87cc54b891a | |||
2007-10-19 | X86: 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-18 | X86: Implement the string IO instructions, ins and outs. | Gabe Black | |
--HG-- extra : convert_revision : b021e70390d289b22a8e693cd8a99d6e7bd7d2b4 | |||
2007-10-18 | X86: 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-18 | X86: Implement the XLAT instruction. | Gabe Black | |
--HG-- extra : convert_revision : 22d7d9e79e722293b4dc1e66d8610301dc04c5fa | |||
2007-10-18 | X86: Implement the BOUND instruction. | Gabe Black | |
--HG-- extra : convert_revision : 7bcfa5b4a47d342bee267cc593a1bd4b4f31abe0 | |||
2007-10-18 | X86: 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-18 | X86: Implement the LOOP instructions. | Gabe Black | |
--HG-- extra : convert_revision : 3ccd0565c83b6d9c9b63f9f7ac2b67839a2c714f | |||
2007-10-18 | X86: Implemented the jrcx instruction. | Gabe Black | |
--HG-- extra : convert_revision : d738015ff33449e55d8f1624c8467c1bba193e16 | |||
2007-10-12 | X86: Added some new versions of MOV and a new argument type tag. | Gabe Black | |
--HG-- extra : convert_revision : e21b2062d68baa983c7c631b3e1fe3149de56427 | |||
2007-10-12 | X86: Implemented LODS. | Gabe Black | |
--HG-- extra : convert_revision : 4bd8f15bbc25f5dce16ea0504ad6dd21805fa56a | |||
2007-10-12 | X86: 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-02 | X86: 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 |