mirror of
https://github.com/mirror/tinycc.git
synced 2026-08-18 11:03:27 +08:00
LIBTCCAPI tcc_relocate(s) : REMOVED 2nd argument
removed second argument for tcc_relocate(s). previous
'TCC_RELOCATE_AUTO' is now default and only behavior.
Rationale:
In the past, the option to compile into memory provided by the
user was introduced because only one TCCState could exist at a time.
This is no longer a limitation. As such it is also possible now to
keep any number of compiled code snippets around together with their
state in order to run them as needed.
- Also
- LIBTCCAPI tcc_get_error_func/opaque() removed
- tccrun/SELINUX: switch rx/rw mappings such that rx comes first
(risc64-link.c:relocate_plt() does not like got < plt)
- tcc_relocate_ex(): free local symbols and obsolete sections
to reduce memory after tcc_relocate()
This commit is contained in:
6
tccpe.c
6
tccpe.c
@@ -1349,7 +1349,7 @@ static int pe_check_symbols(struct pe_info *pe)
|
||||
sprintf(buffer, "IAT.%s", name);
|
||||
is->iat_index = put_elf_sym(
|
||||
symtab_section, 0, sizeof(DWORD),
|
||||
ELFW(ST_INFO)(STB_GLOBAL, STT_OBJECT),
|
||||
ELFW(ST_INFO)(STB_LOCAL, STT_OBJECT),
|
||||
0, SHN_UNDEF, buffer);
|
||||
|
||||
offset = text_section->data_offset;
|
||||
@@ -1970,7 +1970,7 @@ static void pe_add_runtime(TCCState *s1, struct pe_info *pe)
|
||||
|
||||
/* grab the startup code from libtcc1.a */
|
||||
#ifdef TCC_IS_NATIVE
|
||||
if (TCC_OUTPUT_MEMORY != s1->output_type || s1->runtime_main)
|
||||
if (TCC_OUTPUT_MEMORY != s1->output_type || s1->run_main)
|
||||
#endif
|
||||
set_global_sym(s1, start_symbol, NULL, 0);
|
||||
|
||||
@@ -2078,7 +2078,7 @@ ST_FUNC int pe_output_file(TCCState *s1, const char *filename)
|
||||
#ifdef TCC_IS_NATIVE
|
||||
pe.thunk = data_section;
|
||||
pe_build_imports(&pe);
|
||||
s1->runtime_main = pe.start_symbol;
|
||||
s1->run_main = pe.start_symbol;
|
||||
#ifdef TCC_TARGET_X86_64
|
||||
s1->uw_pdata = find_section(s1, ".pdata");
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user