hasting2    02/10/30 17:45:38

  Modified:    live/gcc3/gcc/config/i386 i386.c
  Log:
  Mach-O support for virtual thunks.
  Submitted by: stuart
  Reviewed by: mrs
  
  Revision  Changes    Path
  1.34      +13 -0     src/live/gcc3/gcc/config/i386/i386.c
  
  Index: i386.c
  ===================================================================
  RCS file: /cvs/Darwin/src/live/gcc3/gcc/config/i386/i386.c,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- i386.c    2002/10/24 23:45:16     1.33
  +++ i386.c    2002/10/31 01:45:37     1.34
  @@ -14030,7 +14030,19 @@
        }
   
         if (flag_pic)
  +#ifdef TARGET_MACHO
        {
  +       char *ip = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (function));
  +       char *stub = machopic_stub_name (ip);
  +
  +       if (ix86_regparm > 2)
  +         abort ();
  +       asm_fprintf (file, "\tjmp\t");
  +       ASM_OUTPUT_LABELREF (file, stub);
  +       asm_fprintf (file, "\n");
  +     }
  +#else /* TARGET_MACHO */
  +     {
          xops[0] = pic_offset_table_rtx;
          xops[1] = gen_label_rtx ();
          xops[2] = gen_rtx_SYMBOL_REF (Pmode, GOT_SYMBOL_NAME);
  @@ -14049,6 +14061,7 @@
          asm_fprintf (file, "\tpop{l\t%%ebx|\t%%ebx}\n");
          asm_fprintf (file, "\tjmp\t{*%%ecx|%%ecx}\n");
        }
  +#endif /* TARGET_MACHO */
         else
        {
          fprintf (file, "\tjmp\t");
  
  
  


Reply via email to