--- dyngen.c 11 Jul 2003 15:16:56 -0000 1.26 +++ dyngen.c 7 Aug 2003 21:19:55 -0000 @@ -687,7 +687,11 @@ if (val >= start_offset && val < start_offset + copy_size) { n = strtol(p, NULL, 10); +#if ( __GNUC__ == 3) && defined(__powerpc__) + fprintf(outfile, " label_offsets[%d] = %d + (gen_code_ptr - gen_code_buf);\n", n, val - start_offset + 4); +#else fprintf(outfile, " label_offsets[%d] = %d + (gen_code_ptr - gen_code_buf);\n", n, val - start_offset); +#endif } } } --- exec.h 26 Jul 2003 12:06:08 -0000 1.13 +++ exec.h 7 Aug 2003 21:19:55 -0000 @@ -210,6 +210,7 @@ label ## n:\ T0 = (long)(tbparam) + (n);\ EIP = eip;\ + EXIT_TB();\ } while (0) #else