bunnei
45bc24774f
arm_dynarmic: Implement GetVFPSystemReg/SetVFPSystemReg.
9 years ago
bunnei
acdc361fc0
arm: ResetContext shouldn't be part of ARM_Interface.
9 years ago
bunnei
5a7c1e9b5d
arm_dynarmic/arm_dyncom: Remove unnecessary "virtual" keyword.
9 years ago
bunnei
5cf4dd301d
dyncom: Use VFP_FPSCR/VFP_FPEXC.
9 years ago
bunnei
f1072aa569
dynarmic: Implement ARM CPU interface.
9 years ago
wwylele
913472e010
ARM: add ClearInstructionCache function
10 years ago
MerryMage
abe5d64fd6
dyncom: Read-after-write in SMLA
In the case when RD === RN, RD was updated before AddOverflow was called
to check for an overflow, resulting in an incorrect state of the Q flag.
9 years ago
MerryMage
0da5e44c89
Dyncom: Correct implementation of STM for R15
10 years ago
MerryMage
a7711eaf4f
dyncom: Fix translation of thumb REVSH
10 years ago
archshift
b1f3ae6056
Make arm_dyncom_trans* into a fully fledged compilation unit
10 years ago
archshift
3b371f5816
arm_dyncom_interpreter: slightly change AllocBuffer to be intuitive
10 years ago
archshift
090a9166fc
arm_dyncom_interpreter: Add specialized GetAddressingOpLoadStoreT func
This allows us to get the addressing operation for STRT, LDRT, STRBT,
and LDRBT. We do this so that translation functions don't need to
see the addressing ops directly.
10 years ago
archshift
39e3e9c2d9
arm_dyncom_interpreter: rename operation functions to fit style guide
10 years ago
archshift
31b8dc0ca4
arm_dyncom_interpreter: Rename anonymous enum to TransExtData
10 years ago
archshift
5bf480bf56
arm_dyncom_interpreter.cpp: #include translation info from inc files
10 years ago
archshift
d05fcfa487
Revert "Split huge interpreter source file into translation info and interpreter (+ some tiny misc style fixes)"
10 years ago
archshift
65d5333ef6
arm_dyncom_interpreter: rename operation functions to fit style guide
10 years ago
archshift
db6bb1477e
arm_dyncom_interpreter.cpp: Split by translation and interpreter logic
To facilitate the split, some small changes were made to names of
various structures and functions.
10 years ago
Jannik Vogel
7d2670f08e
Remove `exceptions` parameter from `normaliseround` VFP functions
10 years ago
Jannik Vogel
053fb90466
Fix exception propagation for VFP single precision
10 years ago
Jannik Vogel
afa5e151e8
Fix exception propagation for VFP double precision
10 years ago
Jannik Vogel
128981cf3c
Fix read-after-write in SMUAD, SMLAD, SMUSD, SMLSD
10 years ago
Jannik Vogel
f39adfffe7
Set fpscr for new threads
10 years ago
Jannik Vogel
cc6731695e
Fix ftoi behaviour
10 years ago
Jannik Vogel
e686f222a9
Respect fpscr in ftoiz
10 years ago
Jannik Vogel
c571e1237c
Disable VFP3 instructions
10 years ago
Lioncash
e4ccba3ffa
dyncom: Reset the context into user mode correctly
The other mode was system mode.
10 years ago
Yuri Kunde Schlesner
2396b01d5d
Common: Remove section measurement from profiler ( #1731 )
This has been entirely superseded by MicroProfile. The rest of the code
can go when a simpler frametime/FPS meter is added to the GUI.
10 years ago
mailwl
c4f53f4f6b
Fix BLX LR opcode interpretation
10 years ago
mailwl
1b840ce43c
Update cpsr (T)humb bit while creating thread
10 years ago
mailwl
f1fb108e03
Fix thumb ADR instruction alignment
10 years ago
MerryMage
9f9c987924
Common: Remove Common::make_unique, use std::make_unique
10 years ago
MerryMage
c1d2977e0a
DynCom: Optimize single stepping
10 years ago
Lioncash
438bbb84e7
armstate: Correct FIQ register banking
FIQ has seven banked registers (R8 to R14), not two.
10 years ago
rob turner
0d435fe4d8
ARM_Disasm::DisassembleMemHalf: actually use width in determining opcode name
10 years ago
Lioncash
49e3979ae6
arm_dyncom_dec: Fix decoding of VMLS
Previously, all VMLS variants would misdecode as CDP
(which isn't necessarily wrong in itself, however
VMLS has it's own label of execution)
10 years ago
Lioncash
39609e9d6e
dyncom: Handle modifying the APSR via an MRC instruction
10 years ago
Lioncash
0908f894ca
dyncom: Remove PC dispatch from several instructions
These instructions aren't capable of using the PC as a destination
10 years ago
Lioncash
2f0474efa5
dyncom: Handle unprivileged load/store variants correctly
LDRT/LDRBT/STRBT/STRT should simulate the load or store
as if the host CPU is in user mode.
STRT is also allowed to use the PC as an operand
10 years ago
Lioncash
8813673601
dyncom: Remove static keyword from header functions
10 years ago
Lioncash
0f083bdf0f
arm_interface: Make GetNumInstructions const
10 years ago
Lioncash
dd441a3dd6
arm_interface: directly initialize class members
10 years ago
Lioncash
93cd3dccc5
dyncom: const correctness changes
10 years ago
Lioncash
af06eaf78d
armstate: Zero out the registers on creation
std::array isn't always guaranteed to explicitly zero out it's contents
without an initializer list.
10 years ago
polaris-
6621f16576
Remove unnecessary new lines, changed Deinit to Shutdown
10 years ago
Emmanuel Gil Peyrot
b0c7762520
CitraQt, SkyEye, Loader, VideoCore: Remove newlines in LOG_* calls.
The LOG_* function itself already appends one.
10 years ago
polaris-
8205925b08
Use BreakpointAddress struct instead of passing address directly
10 years ago
polaris-
1d319e5b46
Implement gdbstub
10 years ago
polaris-
021fab70ac
Implement gdbstub
10 years ago
Lioncash
08147474cb
general: Silence some warnings when using clang
10 years ago