ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/uae_cpu/gencpu.c
(Generate patch)

Comparing BasiliskII/src/uae_cpu/gencpu.c (file contents):
Revision 1.22 by gbeauche, 2005-06-22T08:51:04Z vs.
Revision 1.23 by gbeauche, 2007-06-15T08:09:01Z

# Line 2251 | Line 2251 | static void generate_one_opcode (int rp)
2251          return;
2252  
2253      if (opcode_next_clev[rp] != cpu_level) {
2254 +        if (table68k[opcode].flagdead == 0)
2255 +        /* force to the "ff" variant since the instruction doesn't set at all the condition codes */
2256 +        fprintf (stblfile, "{ CPUFUNC_FF(op_%lx_%d), 0, %ld }, /* %s */\n", opcode, opcode_last_postfix[rp],
2257 +                 opcode, lookuptab[i].name);
2258 +        else
2259          fprintf (stblfile, "{ CPUFUNC(op_%lx_%d), 0, %ld }, /* %s */\n", opcode, opcode_last_postfix[rp],
2260                   opcode, lookuptab[i].name);
2261          return;
# Line 2264 | Line 2269 | static void generate_one_opcode (int rp)
2269  
2270      fprintf (headerfile, "extern cpuop_func op_%lx_%d_nf;\n", opcode, postfix);
2271      fprintf (headerfile, "extern cpuop_func op_%lx_%d_ff;\n", opcode, postfix);
2267    printf ("void REGPARAM2 CPUFUNC(op_%lx_%d)(uae_u32 opcode) /* %s */\n{\n", opcode, postfix, lookuptab[i].name);
2268        printf ("\tcpuop_begin();\n");
2272          
2273          /* gb-- The "nf" variant for an instruction that doesn't set the condition
2274             codes at all is the same as the "ff" variant, so we don't need the "nf"
# Line 2274 | Line 2277 | static void generate_one_opcode (int rp)
2277          if (table68k[opcode].flagdead == 0)
2278          printf ("#ifndef NOFLAGS\n");
2279  
2280 +        printf ("void REGPARAM2 CPUFUNC(op_%lx_%d)(uae_u32 opcode) /* %s */\n{\n", opcode, postfix, lookuptab[i].name);
2281 +        printf ("\tcpuop_begin();\n");
2282 +
2283      switch (table68k[opcode].stype) {
2284       case 0: smsk = 7; break;
2285       case 1: smsk = 255; break;
# Line 2393 | Line 2399 | static void generate_one_opcode (int rp)
2399      gen_opcode (opcode);
2400      if (need_endlabel)
2401          printf ("%s: ;\n", endlabelstr);
2396        if (table68k[opcode].flagdead == 0)
2397        printf ("\n#endif\n");
2402          printf ("\tcpuop_end();\n");
2403      printf ("}\n");
2404 +        if (table68k[opcode].flagdead == 0)
2405 +        printf ("\n#endif\n");
2406      opcode_next_clev[rp] = next_cpu_level;
2407      opcode_last_postfix[rp] = postfix;
2408   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines