723 |
|
switch(size) |
724 |
|
{ |
725 |
|
case sz_byte: |
726 |
< |
printf("\t%s = sparc_v8_flag_add_8(M68K_FLAGS_ADDR, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
726 |
> |
printf("\t%s = sparc_v8_flag_add_8(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
727 |
|
break; |
728 |
|
case sz_word: |
729 |
< |
printf("\t%s = sparc_v8_flag_add_16(M68K_FLAGS_ADDR, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
729 |
> |
printf("\t%s = sparc_v8_flag_add_16(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
730 |
|
break; |
731 |
|
case sz_long: |
732 |
< |
printf("\t%s = sparc_v8_flag_add_32(M68K_FLAGS_ADDR, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
732 |
> |
printf("\t%s = sparc_v8_flag_add_32(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
733 |
|
break; |
734 |
|
} |
735 |
|
return; |
736 |
+ |
|
737 |
+ |
case flag_sub: |
738 |
+ |
start_brace(); |
739 |
+ |
printf("\tuae_u32 %s;\n", value); |
740 |
+ |
switch(size) |
741 |
+ |
{ |
742 |
+ |
case sz_byte: |
743 |
+ |
printf("\t%s = sparc_v8_flag_sub_8(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
744 |
+ |
break; |
745 |
+ |
case sz_word: |
746 |
+ |
printf("\t%s = sparc_v8_flag_sub_16(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
747 |
+ |
break; |
748 |
+ |
case sz_long: |
749 |
+ |
printf("\t%s = sparc_v8_flag_sub_32(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", value, src, dst); |
750 |
+ |
break; |
751 |
+ |
} |
752 |
+ |
return; |
753 |
+ |
|
754 |
+ |
case flag_cmp: |
755 |
+ |
switch(size) |
756 |
+ |
{ |
757 |
+ |
case sz_byte: |
758 |
+ |
// printf("\tsparc_v8_flag_cmp_8(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", src, dst); |
759 |
+ |
break; |
760 |
+ |
case sz_word: |
761 |
+ |
// printf("\tsparc_v8_flag_cmp_16(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", src, dst); |
762 |
+ |
break; |
763 |
+ |
case sz_long: |
764 |
+ |
#if 1 |
765 |
+ |
printf("\tsparc_v8_flag_cmp_32(®flags, (uae_u32)(%s), (uae_u32)(%s));\n", src, dst); |
766 |
+ |
return; |
767 |
+ |
#endif |
768 |
+ |
break; |
769 |
+ |
} |
770 |
+ |
// return; |
771 |
+ |
break; |
772 |
|
} |
773 |
|
#elif defined(SPARC_V9_ASSEMBLY) |
774 |
|
switch(type) |
2514 |
|
} |
2515 |
|
fprintf (stblfile, "{ op_%lx_%d, 0, %ld }, /* %s */\n", opcode, postfix, opcode, lookuptab[i].name); |
2516 |
|
fprintf (headerfile, "extern cpuop_func op_%lx_%d;\n", opcode, postfix); |
2517 |
< |
printf ("unsigned long REGPARAM2 op_%lx_%d(uae_u32 opcode) /* %s */\n{\n", opcode, postfix, lookuptab[i].name); |
2517 |
> |
printf ("void REGPARAM2 op_%lx_%d(uae_u32 opcode) /* %s */\n{\n", opcode, postfix, lookuptab[i].name); |
2518 |
|
|
2519 |
|
switch (table68k[opcode].stype) { |
2520 |
|
case 0: smsk = 7; break; |
2628 |
|
gen_opcode (opcode); |
2629 |
|
if (need_endlabel) |
2630 |
|
printf ("%s: ;\n", endlabelstr); |
2595 |
– |
printf ("return %d;\n", insn_n_cycles); |
2631 |
|
printf ("}\n"); |
2632 |
|
opcode_next_clev[rp] = next_cpu_level; |
2633 |
|
opcode_last_postfix[rp] = postfix; |