comparison m68k.cpu @ 2591:563d05355a12

Cut down on code bloat in 68K core a little
author Michael Pavone <pavone@retrodev.com>
date Sun, 09 Feb 2025 14:15:22 -0800
parents e602dbf776d8
children b0a7b1f708cc
comparison
equal deleted inserted replaced
2590:e602dbf776d8 2591:563d05355a12
2775 #TODO: trap if not in supervisor mode 2775 #TODO: trap if not in supervisor mode
2776 aregs.R = other_sp 2776 aregs.R = other_sp
2777 m68k_prefetch 2777 m68k_prefetch
2778 2778
2779 0111RRR0IIIIIIII moveq 2779 0111RRR0IIIIIIII moveq
2780 nospecialize I
2780 local tmp 32 2781 local tmp 32
2781 sext 16 I tmp 2782 sext 16 I tmp
2782 sext 32 tmp dregs.R 2783 sext 32 tmp dregs.R
2783 cmp 0 dregs.R 2784 cmp 0 dregs.R
2784 update_flags NZV0C0 2785 update_flags NZV0C0
2801 cycles 2 2802 cycles 2
2802 m68k_prefetch 2803 m68k_prefetch
2803 2804
2804 2805
2805 01100001DDDDDDDD bsr 2806 01100001DDDDDDDD bsr
2807 nospecialize D
2806 #mid-instruction timing isn't quite right 2808 #mid-instruction timing isn't quite right
2807 #becuase I'm only emulating a 1-word prefetch buffer instead of 2 2809 #becuase I'm only emulating a 1-word prefetch buffer instead of 2
2808 local offset 32 2810 local offset 32
2809 sext 16 D offset 2811 sext 16 D offset
2810 sext 32 offset offset 2812 sext 32 offset offset
2924 cycles 4 2926 cycles 4
2925 end 2927 end
2926 m68k_prefetch 2928 m68k_prefetch
2927 2929
2928 0110CCCCDDDDDDDD bcc 2930 0110CCCCDDDDDDDD bcc
2931 nospecialize D
2929 #mid-instruction timing isn't quite right 2932 #mid-instruction timing isn't quite right
2930 #becuase I'm only emulating a 1-word prefetch buffer instead of 2 2933 #becuase I'm only emulating a 1-word prefetch buffer instead of 2
2931 local offset 32 2934 local offset 32
2932 m68k_check_cond C 2935 m68k_check_cond C
2933 if istrue 2936 if istrue