aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/lib.c
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2019-12-01 22:55:12 +0100
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2019-12-16 10:27:51 +0100
commit376c74980d759ea4f9e8c6c10ecf83ea6565394d (patch)
tree1998e5e5fbef9b54ba91d11e37b4b9b6b3e2c2bd /lib.c
parent47ed6c8134ea0b3459877f364969944426f7cdb5 (diff)
downloadsparse-dev-376c74980d759ea4f9e8c6c10ecf83ea6565394d.tar.gz
arch: move handle_arch_finalize() into target_init()
Before initaializing the builtin types some 'finalizations' are needed. target_ini() already does most of this. So, move the arch-specific content of handle_arch_finalize() into the corresponding target files and the generic part to target_init(). Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'lib.c')
-rw-r--r--lib.c35
1 files changed, 1 insertions, 34 deletions
diff --git a/lib.c b/lib.c
index 82354af7..366acd45 100644
--- a/lib.c
+++ b/lib.c
@@ -320,7 +320,7 @@ int preprocess_only;
enum standard standard = STANDARD_GNU89;
-static int arch_msize_long = 0;
+int arch_msize_long = 0;
int arch_m64 = ARCH_M64_DEFAULT;
int arch_big_endian = ARCH_BIG_ENDIAN;
int arch_fp_abi = FP_ABI_NATIVE;
@@ -714,38 +714,6 @@ static char **handle_switch_m(char *arg, char **next)
return next;
}
-static void handle_arch_msize_long_finalize(void)
-{
- if (arch_msize_long) {
- size_t_ctype = &ulong_ctype;
- ssize_t_ctype = &long_ctype;
- }
-}
-
-static void handle_arch_finalize(void)
-{
- handle_arch_msize_long_finalize();
-
- if (fpie > fpic)
- fpic = fpie;
- if (fshort_wchar)
- wchar_ctype = &ushort_ctype;
-
- switch (arch_mach) {
- case MACH_ARM64:
- if (arch_cmodel == CMODEL_UNKNOWN)
- arch_cmodel = CMODEL_SMALL;
- break;
- case MACH_RISCV32:
- case MACH_RISCV64:
- if (arch_cmodel == CMODEL_UNKNOWN)
- arch_cmodel = CMODEL_MEDLOW;
- if (fpic)
- arch_cmodel = CMODEL_PIC;
- break;
- }
-}
-
static char **handle_switch_o(char *arg, char **next)
{
if (!strcmp (arg, "o")) { // "-o foo"
@@ -1732,7 +1700,6 @@ struct symbol_list *sparse_initialize(int argc, char **argv, struct string_list
if (filelist) {
// Initialize type system
target_init();
- handle_arch_finalize();
init_ctype();
predefined_macros();