Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-05-06 | X86: Fix the Lldt instructions so they load the ldtr and not the tr. | Gabe Black | |
2011-03-01 | X86: Mark IO reads and writes as non-speculative. | Gabe Black | |
2011-02-07 | X86: Use all 64 bits of the lstar register in the SYSCALL_64 macroop. | Tim Harris | |
During SYSCALL_64, use dataSize=8 when handling new rip (ref http://www.intel.com/Assets/PDF/manual/253668.pdf 5.8.8 IA32_LSTAR is a 64-bit address) | |||
2011-02-07 | X86: Fix JMP_FAR_I to unpack a far pointer correctly. | Tim Harris | |
JMP_FAR_I was unpacking its far pointer operand using sll instead of srl like it should, and also putting the components in the wrong registers for use by other microcode. | |||
2011-02-07 | X86: Read the LDT/GDT at CPL0 when executing an iret. | Tim Harris | |
During iret access LDT/GDT at CPL0 rather than after transition to user mode (if I'm reading the Intel IA-64 architecture spec correctly, the contents of the descriptor table are read before the CPL is updated). | |||
2011-02-02 | X86: Replace the stupd microop with a store/update sequence. | Gabe Black | |
2010-09-29 | X86: Fix the RIP relative versions of the BT, BTC, BTR, and BTS instructions. | Gabe Black | |
2010-08-23 | X86: Mark serializing macroops and regular instructions as such. | Gabe Black | |
2010-07-21 | Fix x86 XCHG macro-op to use locked micro-ops for all memory accesses | Tushar Krishna | |
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-11-10 | X86: Fix bugs in movd implementation. | Vince Weaver | |
Unfortunately my implementation of the movd instruction had two bugs. In one case, when moving a 32-bit value into an xmm register, the lower half of the xmm register was not zero extended. The other case is that xmm was used instead of xmmlm as the source for a register move. My test case didn't notice this at first as it moved xmm0 to eax, which both have the same register number. | |||
2009-11-04 | X86: Fix problem with movhps instruction | Vince Weaver | |
This problem is like the one fixed with movhpd a few weeks ago. A +8 displacement is used to access memory when there should be none. This fix is needed for the perlbmk spec2k benchmark to run. | |||
2009-10-30 | X86: Add support for x86 psrldq and pslldq instructions | Vince Weaver | |
These are complicated instructions and the micro-code might be suboptimal. This has been tested with some small sample programs (attached) The psrldq instruction is needed by various spec2k programs. | |||
2009-10-30 | X86: Implement movd_Vo_Edp on X86 | Vince Weaver | |
This patch implements the movd_Vo_Edp series of instructions. It addresses various concerns by Gabe Black about which file the instruction belonged in, as well as supporting REX prefixed instructions properly. This instruction is needed for some of the spec2k benchmarks, most notably bzip2. | |||
2009-10-30 | X86: Implement the X86 sse2 haddpd instruction | Vince Weaver | |
This patch implements the haddpd instruction. It fixes the problem in the previous version (pointed out by Gabe Black) where an incorrect result would happen if you issue the instruction with the same argument twice, i.e. "haddpd %xmm0,%xmm0" This instruction is used by many spec2k benchmarks. | |||
2009-10-27 | X86: Replace "DISPLACEMENT" with disp in movhpd. | Gabe Black | |
2009-10-27 | Fix problem with the x86 sse movhpd instruction. | Vince Weaver | |
The movhpd instruction was writing to the wrong memory offset. | |||
2009-10-21 | Implement X86 sse2 movdqu and movdqa instructions | Vince Weaver | |
The movdqa instruction should enforce 16-byte alignment. This implementation does not do that. These instructions are needed for most of x86_64 spec2k to run. | |||
2009-09-16 | X86: Fix checking the NT bit during an IRET. | Gabe Black | |
2009-09-16 | X86: Fix setting the busy bit in the task descriptor in LTR. | Gabe Black | |
2009-08-20 | X86: Fix the decoding for and fill out FST and FSTP. | Gabe Black | |
2009-08-17 | X86: Implement MOVNTI. | Gabe Black | |
2009-08-17 | X86: Implement MOVQ2DQ. | Gabe Black | |
2009-08-17 | X86: Implement MOVDQ2Q. | Gabe Black | |
2009-08-17 | X86: Implement the media instructions that convert fp values to ints. | Gabe Black | |
2009-08-17 | X86: Implement the instructions that compare fp values and write a mask as a ↵ | Gabe Black | |
result. | |||
2009-08-17 | X86: Implement the instructions that compare fp values and write to rflags. | Gabe Black | |
2009-08-17 | X86: Implement MOVSS. | Gabe Black | |
2009-08-17 | X86: Implement LDMXCSR. | Gabe Black | |
2009-08-17 | X86: Implement STMXCSR. | Gabe Black | |
2009-08-17 | X86: Implement the shuffle media instructions. | Gabe Black | |
2009-08-17 | X86: Implement the mask move instructions. | Gabe Black | |
2009-08-17 | X86: Implement the instructions that move sign bits. | Gabe Black | |
2009-08-17 | X86: Implement the insert/extract instructions. | Gabe Black | |
2009-08-17 | X86: Implement the media average instructions. | Gabe Black | |
2009-08-17 | X86: Implement the multiply and add instructions. | Gabe Black | |
2009-08-17 | X86: Implement the media shifts that operate on 64 bits or less at a time. | Gabe Black | |
2009-08-17 | X86: Implement the sum of absolute differences instructions. | Gabe Black | |
2009-08-17 | X86: Implement the media integer subtract instructions. | Gabe Black | |
2009-08-17 | X86: Implement the integer media multiply instructions. | Gabe Black | |
2009-08-17 | X86: Implement the integer media max instructions. | Gabe Black | |
2009-08-17 | X86: Implement the integer media min instructions. | Gabe Black | |
2009-08-17 | X86: Implement the media integer addition instructions. | Gabe Black | |
2009-08-17 | X86: Implement the instructions that convert between forms of floating point. | Gabe Black | |
2009-08-17 | X86: Implement the instructions that compare fp values and write masks as ↵ | Gabe Black | |
the result. | |||
2009-08-17 | X86: Implement the MOVDDUP instruction. | Gabe Black | |
2009-08-17 | X86: Implement many of the media mov instructions. | Gabe Black | |