citra-emu
/
citra
Archived
1
0
Fork 0

Merge pull request #505 from lioncash/cl

vfp: Clean up vertical alignment for instructions
This commit is contained in:
bunnei 2015-01-23 15:53:51 -05:00
commit 006c0c88a4
1 changed files with 125 additions and 131 deletions

View File

@ -2974,13 +2974,12 @@ VPUSH_INST:
{ {
if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) { if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) {
CHECK_VFP_ENABLED; CHECK_VFP_ENABLED;
int i;
vpush_inst *inst_cream = (vpush_inst *)inst_base->component; vpush_inst *inst_cream = (vpush_inst *)inst_base->component;
addr = cpu->Reg[R13] - inst_cream->imm32; addr = cpu->Reg[R13] - inst_cream->imm32;
for (i = 0; i < inst_cream->regs; i++) for (int i = 0; i < inst_cream->regs; i++)
{ {
if (inst_cream->single) if (inst_cream->single)
{ {
@ -3032,8 +3031,8 @@ int DYNCOM_TRANS(vpush)(cpu_t *cpu, uint32_t instr, BasicBlock *bb, addr_t pc){
//else //else
// bb = arch_check_mm(cpu, bb, Addr, regs * 8, 0, cpu->dyncom_engine->bb_trap); // bb = arch_check_mm(cpu, bb, Addr, regs * 8, 0, cpu->dyncom_engine->bb_trap);
//Value* phys_addr; //Value* phys_addr;
int i;
for (i = 0; i < regs; i++) for (int i = 0; i < regs; i++)
{ {
if (single) if (single)
{ {
@ -3106,13 +3105,11 @@ VSTM_INST: /* encoding 1 */
if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) { if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) {
CHECK_VFP_ENABLED; CHECK_VFP_ENABLED;
int i;
vstm_inst *inst_cream = (vstm_inst *)inst_base->component; vstm_inst *inst_cream = (vstm_inst *)inst_base->component;
addr = (inst_cream->add ? cpu->Reg[inst_cream->n] : cpu->Reg[inst_cream->n] - inst_cream->imm32); addr = (inst_cream->add ? cpu->Reg[inst_cream->n] : cpu->Reg[inst_cream->n] - inst_cream->imm32);
for (i = 0; i < inst_cream->regs; i++) for (int i = 0; i < inst_cream->regs; i++)
{ {
if (inst_cream->single) if (inst_cream->single)
{ {
@ -3256,14 +3253,13 @@ VPOP_INST:
if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) { if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) {
CHECK_VFP_ENABLED; CHECK_VFP_ENABLED;
int i;
unsigned int value1, value2; unsigned int value1, value2;
vpop_inst *inst_cream = (vpop_inst *)inst_base->component; vpop_inst *inst_cream = (vpop_inst *)inst_base->component;
addr = cpu->Reg[R13]; addr = cpu->Reg[R13];
for (i = 0; i < inst_cream->regs; i++) for (int i = 0; i < inst_cream->regs; i++)
{ {
if (inst_cream->single) if (inst_cream->single)
{ {
@ -3533,13 +3529,11 @@ VLDM_INST:
if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) { if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) {
CHECK_VFP_ENABLED; CHECK_VFP_ENABLED;
int i;
vldm_inst *inst_cream = (vldm_inst *)inst_base->component; vldm_inst *inst_cream = (vldm_inst *)inst_base->component;
addr = (inst_cream->add ? cpu->Reg[inst_cream->n] : cpu->Reg[inst_cream->n] - inst_cream->imm32); addr = (inst_cream->add ? cpu->Reg[inst_cream->n] : cpu->Reg[inst_cream->n] - inst_cream->imm32);
for (i = 0; i < inst_cream->regs; i++) for (int i = 0; i < inst_cream->regs; i++)
{ {
if (inst_cream->single) if (inst_cream->single)
{ {