Revision 46525e1f target-sparc/translate.c

b/target-sparc/translate.c
598 598
    }
599 599
}
600 600

  
601
static inline void gen_branch2(DisasContext *dc, long tb, target_ulong pc1, target_ulong pc2)
601
static inline void gen_branch2(DisasContext *dc, target_ulong pc1,
602
                               target_ulong pc2)
602 603
{
603 604
    int l1;
604 605

  
......
612 613
    gen_goto_tb(dc, 1, pc2, pc2 + 4);
613 614
}
614 615

  
615
static inline void gen_branch_a(DisasContext *dc, long tb, target_ulong pc1, target_ulong pc2)
616
static inline void gen_branch_a(DisasContext *dc, target_ulong pc1,
617
                                target_ulong pc2)
616 618
{
617 619
    int l1;
618 620

  
......
626 628
    gen_goto_tb(dc, 1, pc2 + 4, pc2 + 8);
627 629
}
628 630

  
629
static inline void gen_branch(DisasContext *dc, long tb, target_ulong pc, target_ulong npc)
631
static inline void gen_branch(DisasContext *dc, target_ulong pc,
632
                              target_ulong npc)
630 633
{
631 634
    gen_goto_tb(dc, 0, pc, npc);
632 635
}
633 636

  
634
static inline void gen_generic_branch(DisasContext *dc, target_ulong npc1, target_ulong npc2)
637
static inline void gen_generic_branch(target_ulong npc1, target_ulong npc2)
635 638
{
636 639
    int l1, l2;
637 640

  
......
651 654
static inline void flush_T2(DisasContext * dc)
652 655
{
653 656
    if (dc->npc == JUMP_PC) {
654
        gen_generic_branch(dc, dc->jump_pc[0], dc->jump_pc[1]);
657
        gen_generic_branch(dc->jump_pc[0], dc->jump_pc[1]);
655 658
        dc->npc = DYNAMIC_PC;
656 659
    }
657 660
}
......
659 662
static inline void save_npc(DisasContext * dc)
660 663
{
661 664
    if (dc->npc == JUMP_PC) {
662
        gen_generic_branch(dc, dc->jump_pc[0], dc->jump_pc[1]);
665
        gen_generic_branch(dc->jump_pc[0], dc->jump_pc[1]);
663 666
        dc->npc = DYNAMIC_PC;
664 667
    } else if (dc->npc != DYNAMIC_PC) {
665 668
        gen_movl_npc_im(dc->npc);
......
675 678
static inline void gen_mov_pc_npc(DisasContext * dc)
676 679
{
677 680
    if (dc->npc == JUMP_PC) {
678
        gen_generic_branch(dc, dc->jump_pc[0], dc->jump_pc[1]);
681
        gen_generic_branch(dc->jump_pc[0], dc->jump_pc[1]);
679 682
        gen_op_mov_pc_npc();
680 683
        dc->pc = DYNAMIC_PC;
681 684
    } else if (dc->npc == DYNAMIC_PC) {
......
861 864
        flush_T2(dc);
862 865
        gen_cond[cc][cond]();
863 866
	if (a) {
864
	    gen_branch_a(dc, (long)dc->tb, target, dc->npc);
867
	    gen_branch_a(dc, target, dc->npc);
865 868
            dc->is_br = 1;
866 869
	} else {
867 870
            dc->pc = dc->npc;
......
900 903
        flush_T2(dc);
901 904
        gen_fcond[cc][cond]();
902 905
	if (a) {
903
	    gen_branch_a(dc, (long)dc->tb, target, dc->npc);
906
	    gen_branch_a(dc, target, dc->npc);
904 907
            dc->is_br = 1;
905 908
	} else {
906 909
            dc->pc = dc->npc;
......
921 924
    flush_T2(dc);
922 925
    gen_cond_reg(cond);
923 926
    if (a) {
924
	gen_branch_a(dc, (long)dc->tb, target, dc->npc);
927
	gen_branch_a(dc, target, dc->npc);
925 928
	dc->is_br = 1;
926 929
    } else {
927 930
	dc->pc = dc->npc;
......
3123 3126
	gen_op_next_insn();
3124 3127
    } else if (dc->npc == JUMP_PC) {
3125 3128
        /* we can do a static jump */
3126
        gen_branch2(dc, (long)dc->tb, dc->jump_pc[0], dc->jump_pc[1]);
3129
        gen_branch2(dc, dc->jump_pc[0], dc->jump_pc[1]);
3127 3130
        dc->is_br = 1;
3128 3131
    } else {
3129 3132
	dc->pc = dc->npc;
......
3249 3252
        if (dc->pc != DYNAMIC_PC && 
3250 3253
            (dc->npc != DYNAMIC_PC && dc->npc != JUMP_PC)) {
3251 3254
            /* static PC and NPC: we can use direct chaining */
3252
            gen_branch(dc, (long)tb, dc->pc, dc->npc);
3255
            gen_branch(dc, dc->pc, dc->npc);
3253 3256
        } else {
3254 3257
            if (dc->pc != DYNAMIC_PC)
3255 3258
                gen_jmp_im(dc->pc);

Also available in: Unified diff