Age | Commit message (Collapse) | Author | |
---|---|---|---|
2017-12-14 | x86: Use operand size 4 when it would be 2 for cmpxchg8b. | Gabe Black | |
This means the instruction is treated as cmpxchg8b when the effective operand size is 16 bits. Change-Id: I4d9bb295f96097e1746a9bbccb2c579d14738fab Reviewed-on: https://gem5-review.googlesource.com/6603 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Gabe Black <gabeblack@google.com> | |||
2013-01-15 | x86: implements emms instruction | Nilay Vaish | |
2012-12-30 | x86: implement x87 fp instruction fnstsw | Nilay Vaish | |
This patch implements the fnstsw instruction. The code was originally written by Vince Weaver. Gabe had made some comments about the code, but those were never addressed. This patch addresses those comments. | |||
2010-05-23 | copyright: Change HP copyright on x86 code to be more friendly | Nathan Binkert | |
2009-12-19 | X86: Add a common named flag for signed media operations. | Gabe Black | |
2009-12-19 | X86: Create a common flag with a name to indicate high multiplies. | Gabe Black | |
2009-12-19 | X86: Create a common flag with a name to indicate scalar media instructions. | Gabe Black | |
2009-08-20 | X86: Add microassembler symbols for floating point stack register operands. | Gabe Black | |
2009-08-17 | X86: Add microcode assembler symbols for mmx registers. | Gabe Black | |
2009-08-05 | X86: Let microops force folding an index into the high byte of a register. | Gabe Black | |
2009-07-16 | X86: Take limitted advantage of the compilers type checking for microop ↵ | Gabe Black | |
operands. | |||
2009-02-25 | X86: Add segmentation checks for ldt related descriptors and selectors. | Gabe Black | |
2009-02-25 | X86: Rename oszForPseudoDesc maxOsz to reflect its more general use. | Gabe Black | |
2009-02-25 | X86: Make the microcode assembler recognize r8-r15. | Gabe Black | |
2009-02-25 | X86: Add a check to chks to verify a task state segment descriptor. | Gabe Black | |
2009-02-25 | X86: Add a check to chks which raises #GP(selector) if selector is NULL or ↵ | Gabe Black | |
not in the GDT. | |||
2009-02-01 | X86: Distinguish between hardware and software interrupts/exceptions | Gabe Black | |
2009-02-01 | X86: Fix the upper bound on some ranges that were setting up the micro code ↵ | Gabe Black | |
assembler. | |||
2008-10-12 | X86: Add wrval/rdval microops for reading significant miscregs. | Gabe Black | |
2008-10-12 | X86: Implement local labels for the ROM that actually refer into the ROM. | Gabe Black | |
2008-10-12 | X86: Add a check type for interrupt gates. | Gabe Black | |
2008-10-12 | X86: Let the microassembler know about the microcode only H segment. | Gabe Black | |
2008-10-12 | X86: Create a handy way to access labels from the ROM in microcode. | Gabe Black | |
2008-10-12 | X86: Make X86's microcode ROM actually do something. | Gabe Black | |
2008-06-12 | X86: Change what the microop chks does. | Gabe Black | |
Instead of computing the segment descriptor address, this now checks if a selector value/descriptor are legal for a particular purpose. | |||
2008-06-12 | X86: Add microops and supporting code to manipulate the whole rflags register. | Gabe Black | |
2008-01-12 | X86: Redo the bit test instructions. | Gabe Black | |
--HG-- extra : convert_revision : 433c2a9f3675ed02f3be5ce759a440f2686d2ccd | |||
2007-12-01 | X86: Reorganize segmentation and implement segment selector movs. | Gabe Black | |
--HG-- extra : convert_revision : 553c3ffeda1f5312cf02493f602e7d4ba2fe66e8 | |||
2007-12-01 | X86: Implement the lgdt instruction. | Gabe Black | |
--HG-- extra : convert_revision : d1698a82df3c57cc9bbf8d5d190f271bfc7cb2e4 | |||
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: Various fixes to indexing segmentation related registers | Gabe Black | |
--HG-- extra : convert_revision : 3d45da3a3fb38327582cfdfb72cfc4ce1b1d31af | |||
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-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: Fix x87 floating point stack register indexing. | Gabe Black | |
--HG-- extra : convert_revision : b515ec20cbfc50b38aa7da6cf4d465acf9054c08 | |||
2007-09-19 | X86: Put in the foundation for x87 stack based fp registers. | Gabe Black | |
--HG-- extra : convert_revision : 940f92efd4a9dc59106e991cc6d9836861ab69de | |||
2007-09-04 | X86: Add floating point micro registers. | Gabe Black | |
--HG-- extra : convert_revision : 442a5f8b9216638e4e6898f89eacb8695719e20f | |||
2007-08-29 | X86: Implement the movlpd instruction. | Gabe Black | |
--HG-- extra : convert_revision : dddb20fe48c0ae9de7cd0ba1a1467ecb690056c1 | |||
2007-08-26 | X86: Make cpuid actually consider the eax parameter and return different values. | Gabe Black | |
--HG-- extra : convert_revision : 527c1cacdd20ab162859bba7f9a6bed33afa2d4f | |||
2007-08-07 | X86: Implemented and hooked in SCAS (scan string) | Gabe Black | |
Fixed the asz assembler symbol. Adjusted the condion checks to have appropriate options. Implemented the SCAS microcode. Attached SCAS into the decoder. --HG-- extra : convert_revision : 17bf9ddae6bc2069e43b076f8f83c4e54fb7966c | |||
2007-08-04 | X86: 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-17 | Add symbols for each of the flags a microop could set and each condition it ↵ | Gabe Black | |
could check. --HG-- extra : convert_revision : 1f542b8aadfd5146539cadef631b49d77f578472 | |||
2007-07-14 | Pull some hard coded base classes out of the isa description. | Gabe Black | |
--HG-- rename : src/arch/x86/isa/base.isa => src/arch/x86/isa/outputblock.isa extra : convert_revision : 7954e7d5eea3b5966c9e273a08bcd169a39f380c | |||
2007-06-21 | Make symbols for regular registers. | Gabe Black | |
--HG-- extra : convert_revision : 28a6df1efe4298877dc2b20179caeb25dfdc4622 | |||
2007-06-21 | Define symbols for the x86 specialization of the microassembler. | Gabe Black | |
--HG-- extra : convert_revision : 1fd66ba519d211fec18641b6df94b7640c56080c | |||
2007-06-20 | Comment out some unnecessary debug output. | Gabe Black | |
--HG-- extra : convert_revision : 9df17841d970a7995d8ed1d51ee66e2c5457e5e3 | |||
2007-06-08 | Adjust a few more comments. | Gabe Black | |
--HG-- extra : convert_revision : 9b79ce72acf8932ce26e1744a149f2fd2435ea96 | |||
2007-06-08 | Clean up where files are included, and get rid of some cruft. | Gabe Black | |
src/arch/x86/isa/main.isa: Clean up where files are included. --HG-- extra : convert_revision : 0528359432bf0fb9198b63de9611176bc78e07c7 | |||
2007-06-08 | Big changes to use the new microcode assembler. | Gabe Black | |
--HG-- extra : convert_revision : 7d1a43c5791a2e7e30533746da3dd7036a5b8799 | |||
2007-06-04 | Reworking x86's microcode system. This is a work in progress, and X86 ↵ | Gabe Black | |
doesn't compile. src/arch/x86/isa/decoder/one_byte_opcodes.isa: src/arch/x86/isa/macroop.isa: src/arch/x86/isa/main.isa: src/arch/x86/isa/microasm.isa: src/arch/x86/isa/microops/base.isa: src/arch/x86/isa/microops/microops.isa: src/arch/x86/isa/operands.isa: src/arch/x86/isa/microops/regop.isa: src/arch/x86/isa/microops/specop.isa: Reworking x86's microcode system --HG-- extra : convert_revision : cab66be59ed758b192226af17eddd5a86aa190f3 | |||
2007-04-10 | Reworked x86 a bit | Gabe Black | |
--HG-- extra : convert_revision : def1a30e54b59c718c451a631a1be6f8e787e843 |