summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-06-02ARM: Make MPIDR return 0 and ignore writes.Gabe Black
2010-06-02ARM: Implement the VCMPE instruction.Gabe Black
2010-06-02ARM: Fix vcvtr so that it uses the rounding mode in the FPSCR.Gabe Black
2010-06-02ARM: Fix saturation of VCVT from fp to integer.Gabe Black
2010-06-02ARM: Compensate for ARM's underflow coming from -before- rounding, but x86's ↵Gabe Black
after.
2010-06-02ARM: Implement flush to zero for destinations as well.Gabe Black
2010-06-02ARM: Fix up nans to match ARM's expected behavior.Gabe Black
2010-06-02ARM: Set the value of the MVFR0 and MVFR1 registers.Gabe Black
2010-06-02ARM: Implement flush to zero mode for VFP, and clean up some corner cases.Gabe Black
2010-06-02ARM: Add barriers that make sure FP operations happen where they're supposed to.Gabe Black
2010-06-02ARM: Implement the version of VCVT float to int that rounds towards zero.Gabe Black
2010-06-02ARM: Implement the floating/fixed point VCVT instructions.Gabe Black
2010-06-02ARM: Add code to extract and record VFP exceptions.Gabe Black
2010-06-02ARM: Implement the VFP version of VCMP.Gabe Black
2010-06-02ARM: Add support for VFP vector mode.Gabe Black
2010-06-02ARM: Introduce new VFP base classes that are optionally microops.Gabe Black
2010-06-02ARM: Implement VCVT between double and single width FP.Gabe Black
2010-06-02ARM: Implement vcvt between int and fp. Ignore rounding.Gabe Black
2010-06-02ARM: Consolidate the VFP register index computation code.Gabe Black
2010-06-02ARM: Implement the VFP negated multiplies.Gabe Black
2010-06-02ARM: Implement the VFP versions of VMLA and VMLS.Gabe Black
2010-06-02ARM: Implement the VFP version of vdiv and vsqrt.Gabe Black
2010-06-02ARM: Implement the VFP version of vsub.Gabe Black
2010-06-02ARM: Implement the VFP version of vadd.Gabe Black
2010-06-02ARM: Implement the VFP version of vabs.Gabe Black
2010-06-02ARM: Implement the VFP version of vneg.Gabe Black
2010-06-02ARM: Implement the VFP version of vmul.Gabe Black
2010-06-02ARM: Move the VFP data operation decode into a function.Gabe Black
2010-06-02ARM: Implement and update the DFSR and IFSR registers on faults.Gabe Black
2010-06-02ARM: Make integer division by zero return a fault.Gabe Black
2010-06-02ARM: Add in some missing SCTLR fields.Gabe Black
2010-06-02ARM: Decode ARM unconditional MRC and MCR instructions.Gabe Black
2010-06-02ARM: Move the CP15 decode block into a function.Gabe Black
2010-06-02ARM: Decode the unconditional version of ARM fp instructions.Gabe Black
2010-06-02ARM: Move the FP decode blocks into functions.Gabe Black
2010-06-02ARM: Warn/ignore when TLB maintenance operations are performed.Gabe Black
2010-06-02ARM: Handle accesses to TLBTR.Gabe Black
2010-06-02ARM: Handle accesses to the DACR.Gabe Black
2010-06-02ARM: Handle accesses to TTBR0 and TTBR1.Gabe Black
2010-06-02ARM: Convert the CP15 registers from MPU to MMU.Gabe Black
2010-06-02ARM: Add some support for wfi/wfe/yield/etcAli Saidi
2010-06-02ARM: Move PC mode bits around so they can be used for exectraceAli Saidi
2010-06-02ARM: Add a traceflag to print cpsrAli Saidi
2010-06-02ARM: Undef instruction on invalid user CP15 accessAli Saidi
2010-06-02ARM: Decode the VSTR instruction.Gabe Black
2010-06-02ARM: Implement the vstr instruction.Gabe Black
2010-06-02ARM: BXJ should be BX when there is no J supportAli Saidi
2010-06-02ARM: Make sure macroops aren't interrupted midinstruction.Gabe Black
Do this by setting the delayed commit flag for all but the last microop.
2010-06-02ARM: Fix the implementation of the VFP ldm and stm macroops.Gabe Black
There were four bugs in these instructions. First, the loaded value was being stored into a floating point register as floating point, changing the value as it was transfered. Second, the meaning of the "up" bit had been reversed. Third, the statically sized microop array wasn't bit enough for all possible inputs. It's now dynamically sized and should always be big enough. Fourth, the offset was stored as an unsigned 8 bit value. Negative offsets would look like moderately large positive offsets.
2010-06-02Simple CPU: Make the FloatRegs trace flag do something.Gabe Black