Subversion Repositories Kolibri OS

Rev

Rev 9617 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9617 Rev 9619
Line 26... Line 26...
26
	int version;
26
	int version;
27
	int entry_point;
27
	int entry_point;
28
	int image_size;
28
	int image_size;
29
	int memory_size;
29
	int memory_size;
30
	int stack;
30
	int stack;
31
	int params;
-
 
32
	int argv;
31
	int argv;
-
 
32
	int path;
33
} IMAGE_MEOS_FILE_HEADER,*PIMAGE_MEOS_FILE_HEADER;
33
} IMAGE_MEOS_FILE_HEADER,*PIMAGE_MEOS_FILE_HEADER;
34
typedef struct _meos_section_info{
34
typedef struct _meos_section_info{
35
	int sh_addr;
35
	int sh_addr;
36
	void* data;
36
	void* data;
37
	int data_size;
37
	int data_size;
Line 291... Line 291...
291
    int i;
291
    int i;
292
    FILE* f;
292
    FILE* f;
293
    //printf("%d\n",s1->nb_sections);
293
    //printf("%d\n",s1->nb_sections);
294
	memset(&me,0,sizeof(me));
294
	memset(&me,0,sizeof(me));
295
	me.s1=s1;
295
	me.s1=s1;
-
 
296
	tcc_add_runtime(s1);
296
#ifdef TCC_TARGET_KX
297
#ifdef TCC_TARGET_KX
297
	kx_init(&me);
298
	kx_init(&me);
298
#endif
299
#endif
299
	tcc_add_runtime(s1);
-
 
300
	relocate_common_syms();
300
	relocate_common_syms();
301
	assign_addresses(&me);
301
	assign_addresses(&me);
Line 302... Line 302...
302
    
302
    
303
	if (s1->do_debug)
303
	if (s1->do_debug)
Line 304... Line 304...
304
		tcc_output_dbgme(filename, &me);
304
		tcc_output_dbgme(filename, &me);
305
 
305
 
306
	if (!tcc_find_symbol_me(&me, "start",  &me.header.entry_point) |
306
	if (!tcc_find_symbol_me(&me, "start",  &me.header.entry_point) |
307
	    !tcc_find_symbol_me(&me, "__argv", &me.header.params) |
307
	    !tcc_find_symbol_me(&me, "__argv", &me.header.argv) |
308
	    !tcc_find_symbol_me(&me, "__path", &me.header.argv)) {
308
	    !tcc_find_symbol_me(&me, "__path", &me.header.path)) {
Line 309... Line 309...
309
	    exit(1);
309
	    exit(1);
310
	}
310
	}