Revision 0d1a29f9 target-i386/exec.h

b/target-i386/exec.h
20 20
#include "config.h"
21 21
#include "dyngen-exec.h"
22 22

  
23
/* at least 4 register variables are defines */
23
/* at least 4 register variables are defined */
24 24
register struct CPUX86State *env asm(AREG0);
25 25
register uint32_t T0 asm(AREG1);
26 26
register uint32_t T1 asm(AREG2);
......
546 546
        (eflags & update_mask);
547 547
}
548 548

  
549
static inline void env_to_regs(void)
550
{
551
#ifdef reg_EAX
552
    EAX = env->regs[R_EAX];
553
#endif
554
#ifdef reg_ECX
555
    ECX = env->regs[R_ECX];
556
#endif
557
#ifdef reg_EDX
558
    EDX = env->regs[R_EDX];
559
#endif
560
#ifdef reg_EBX
561
    EBX = env->regs[R_EBX];
562
#endif
563
#ifdef reg_ESP
564
    ESP = env->regs[R_ESP];
565
#endif
566
#ifdef reg_EBP
567
    EBP = env->regs[R_EBP];
568
#endif
569
#ifdef reg_ESI
570
    ESI = env->regs[R_ESI];
571
#endif
572
#ifdef reg_EDI
573
    EDI = env->regs[R_EDI];
574
#endif
575
}
576

  
577
static inline void regs_to_env(void)
578
{
579
#ifdef reg_EAX
580
    env->regs[R_EAX] = EAX;
581
#endif
582
#ifdef reg_ECX
583
    env->regs[R_ECX] = ECX;
584
#endif
585
#ifdef reg_EDX
586
    env->regs[R_EDX] = EDX;
587
#endif
588
#ifdef reg_EBX
589
    env->regs[R_EBX] = EBX;
590
#endif
591
#ifdef reg_ESP
592
    env->regs[R_ESP] = ESP;
593
#endif
594
#ifdef reg_EBP
595
    env->regs[R_EBP] = EBP;
596
#endif
597
#ifdef reg_ESI
598
    env->regs[R_ESI] = ESI;
599
#endif
600
#ifdef reg_EDI
601
    env->regs[R_EDI] = EDI;
602
#endif
603
}

Also available in: Unified diff