/[gcl]/gcl/h/mingw.h
ViewVC logotype

Diff of /gcl/h/mingw.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.30 by mjthomas, Sun Aug 29 00:28:26 2004 UTC revision 1.31 by mjthomas, Sat Sep 18 01:58:08 2004 UTC
# Line 137  extern DBEGIN_TY _dbegin; Line 137  extern DBEGIN_TY _dbegin;
137    
138  #define TO_NUMBER(ptr,type) (*((type *)(void *)(ptr)))  #define TO_NUMBER(ptr,type) (*((type *)(void *)(ptr)))
139    
 #define SEEK_TO_END_OFILE(fp) do { struct filehdr fileheader; int i; \  
         fseek(fp,0,0) ; \  
         fread(&fileheader, sizeof(fileheader), 1, fp); \  
         fseek(fp,    fileheader.f_symptr+fileheader.f_nsyms*SYMESZ, 0); \  
         fread(&i, sizeof(i), 1, fp); \  
         fseek(fp, i - sizeof(i), 1); \  
         while ((i = fgetc(fp)) == 0) \  
                 ; \  
         ungetc(i, fp); \  
     } while (0)  
                   
140  #define FCLOSE_SETBUF_OK  #define FCLOSE_SETBUF_OK
141  #define IEEEFLOAT  #define IEEEFLOAT
142  #define I386  #define I386
# Line 163  extern DBEGIN_TY _dbegin; Line 152  extern DBEGIN_TY _dbegin;
152  /* include some low level routines for maxima */  /* include some low level routines for maxima */
153  #define CMAC  #define CMAC
154    
 #define RELOC_FILE "rel_pecoff.c"  
   
155  /*  FIONREAD not supported */  /*  FIONREAD not supported */
156  #undef  LISTEN_FOR_INPUT  #undef  LISTEN_FOR_INPUT
157    
# Line 172  extern DBEGIN_TY _dbegin; Line 159  extern DBEGIN_TY _dbegin;
159  #define ADJUST_RELOC_START(j) \  #define ADJUST_RELOC_START(j) \
160          the_start = memory->cfd.cfd_start + \          the_start = memory->cfd.cfd_start + \
161            (j == DATA_NSCN ? textsize : 0);            (j == DATA_NSCN ? textsize : 0);
162    
163    #define SEEK_TO_END_OFILE(fp) do {  IMAGE_FILE_HEADER fileheader; int i; \
164            fseek ( fp, 0, 0 ) ; \
165            fread ( &fileheader, sizeof ( IMAGE_FILE_HEADER ), 1, fp ); \
166            fseek ( fp, fileheader.PointerToSymbolTable + fileheader.NumberOfSymbols * sizeof ( IMAGE_SYMBOL ) , 0); \
167            fread ( &i, sizeof ( i ), 1, fp ); \
168            fseek ( fp, i - sizeof ( i ), 1 ); \
169            while ( ( i = fgetc(fp) ) == 0 ) \
170                    ; \
171            ungetc ( i, fp ); \
172        } while (0)
173                    
174  #define IF_ALLOCATE_ERR \  #define IF_ALLOCATE_ERR \
175          if (core_end != sbrk(0))\          if (core_end != sbrk(0))\
# Line 202  extern char *GCLExeName ( void ); Line 200  extern char *GCLExeName ( void );
200     (a_)=GCLExeName();\     (a_)=GCLExeName();\
201  } while(0)  } while(0)
202    
 /* Needed if optimiser moves object initialisation code around. */  
 #define FIND_INIT \  
 { if (*ptr==0 && (NTYPE(sym) == TEXT_NSCN) && sym->n_value ) \  
   { char tem [9]; \  
     char *str=SYM_NAME(sym); \  
   if (str[1]=='i'    && str[2]=='n'  && str[3]=='i' && str[4]== 't' \  
       && str[5]=='_' && str[0]== '_' )  \  
         *ptr=  sym->n_value ; \  
    else {/* printf("The first data symbol was not the init");*/}  \  
  }}  
   
203  #define INSTALL_SEGMENTATION_CATCHER \  #define INSTALL_SEGMENTATION_CATCHER \
204           (void) signal(SIGSEGV,segmentation_catcher)           (void) signal(SIGSEGV,segmentation_catcher)
205    

Legend:
Removed from v.1.30  
changed lines
  Added in v.1.31

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26