Gabe Black
|
0c574987c8
|
ARM: Mark some ARM static inst functions as inline.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
ba7a7b0394
|
ARM: Move some predecoder stuff into a .cc file.
--HG--
rename : src/arch/arm/predecoder.hh => src/arch/arm/predecoder.cc
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
358fdc2a40
|
ARM: Decode to specialized conditional/unconditional versions of instructions.
This is to avoid condition code based dependences from effectively serializing
instructions when the instruction doesn't actually use them.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
596cbe19d4
|
ARM: Make sure undefined unconditional ARM instructions decode as such.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
6101e1b062
|
ARM: Implement a version of mcr and mrc that works in user mode.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
e91e6ff9a4
|
ARM: Hook the misc instructions into the thumb decoder.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
22d1a84509
|
ARM: Move some miscellaneous instructions out of the decoder to share with thumb.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
0e556e9dfb
|
ARM: Treat LDRD in ARM with an odd index as an undefined instruction.
|
2010-06-02 12:58:17 -05:00 |
|
Ali Saidi
|
3dc6a8070e
|
ARM: fix sizes of structs for ARM Linux
|
2010-06-02 12:58:17 -05:00 |
|
Ali Saidi
|
f703e9c975
|
ARM: Updated regressions for changes in SE mode stack
|
2010-06-02 12:58:17 -05:00 |
|
Ali Saidi
|
d3a519ef0c
|
ARM: Fixup native trace support and add some v7/recent stack code
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
5a6bf8301a
|
ARM: Detect a bad offset field for the VFP Ldm/Stm instructions in the decoder.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
563db6cb99
|
ARM: Make sure the upc is zeroed when vectoring to a fault.
|
2010-06-02 12:58:17 -05:00 |
|
Ali Saidi
|
5d67be7b1e
|
ARM: Implement the getrusage syscall.
|
2010-06-02 12:58:17 -05:00 |
|
Gabe Black
|
6e39288be0
|
ARM: Implement the bkpt instruction.
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
e9c8f68c0f
|
ARM: Make undefined instructions obey predication.
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
05bd3eb4ec
|
ARM: Implement support for the IT instruction and the ITSTATE bits of CPSR.
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
b93ceef538
|
ARM: Get rid of some of the old FP implementation.
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
c1e1de8d69
|
ARM: Some TLB bug fixes.
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
7de7ea3b22
|
ARM: Move Miscreg functions out of isa.hh
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
cb9936cfde
|
ARM: Implement the ARM TLB/Tablewalker. Needs performance improvements.
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
f246be4cbc
|
DMA: Make DmaPort generic enough to be used other places
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
1546d8208b
|
ARM: SE needs a definition for PageTable::serialize/unserialize
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
d2ba9243f5
|
ARM: Add BKPT instruction
--HG--
rename : src/arch/arm/isa/formats/unknown.isa => src/arch/arm/isa/formats/breakpoint.isa
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
b8ec214553
|
ARM: Implement ARM CPU interrupts
|
2010-06-02 12:58:16 -05:00 |
|
Ali Saidi
|
3aea20d143
|
ARM: Start over with translation from Alpha code as opposed to something that has cruft from 4 different ISAs.
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
237c0617a0
|
ARM: Implement conversion to/from half precision.
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
04e196f422
|
ARM: Clean up VFP
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
0fe0390f73
|
ARM: Clean up the implementation of the VFP instructions.
|
2010-06-02 12:58:16 -05:00 |
|
Gabe Black
|
c919ab5b4f
|
ARM: Fix double precision load/store multiple decrement.
When decrementing, the higher addressed half of a double word is at a 4 byte
smaller displacement.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
92bdf57be4
|
ARM: Even though writes to MVFR0/1 should be unpredictable, we need to make them to do nothing.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
4398075254
|
ARM: Make various bits of the FP control registers read only.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
2d08b8de91
|
ARM: Implement the version of VMRS that writes to the APSR.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
57c4d37c10
|
ARM: Ignore reads and writes to DCIMVAC.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
fd37095fa6
|
ARM: Make MPIDR return 0 and ignore writes.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
49b7088b91
|
ARM: Implement the VCMPE instruction.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
23ba9c7b96
|
ARM: Fix vcvtr so that it uses the rounding mode in the FPSCR.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
1fda944716
|
ARM: Fix saturation of VCVT from fp to integer.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
347ab6c704
|
ARM: Compensate for ARM's underflow coming from -before- rounding, but x86's after.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
fd82a47b96
|
ARM: Implement flush to zero for destinations as well.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
186273e5f3
|
ARM: Fix up nans to match ARM's expected behavior.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
98e2315f1c
|
ARM: Set the value of the MVFR0 and MVFR1 registers.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
8466999aef
|
ARM: Implement flush to zero mode for VFP, and clean up some corner cases.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
efbceff96a
|
ARM: Add barriers that make sure FP operations happen where they're supposed to.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
1b3b75ee68
|
ARM: Implement the version of VCVT float to int that rounds towards zero.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
aa05e5401c
|
ARM: Implement the floating/fixed point VCVT instructions.
|
2010-06-02 12:58:15 -05:00 |
|
Gabe Black
|
86a1093992
|
ARM: Add code to extract and record VFP exceptions.
|
2010-06-02 12:58:14 -05:00 |
|
Gabe Black
|
e478df35f5
|
ARM: Implement the VFP version of VCMP.
|
2010-06-02 12:58:14 -05:00 |
|
Gabe Black
|
c1f7bf7f0e
|
ARM: Add support for VFP vector mode.
|
2010-06-02 12:58:14 -05:00 |
|
Gabe Black
|
f245f4937b
|
ARM: Introduce new VFP base classes that are optionally microops.
|
2010-06-02 12:58:14 -05:00 |
|