From fe4e2296549d9b5288f1d37af048c433099f8cdf Mon Sep 17 00:00:00 2001 From: patacongo Date: Thu, 18 Jun 2009 22:26:31 +0000 Subject: Need .thumb_func for thumb functions git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1906 42af7a65-404d-4744-a932-0658087f49c3 --- misc/buildroot/toolchain/nxflat/arm/dyncall_skeleton.def | 4 ++-- misc/buildroot/toolchain/nxflat/ldnxflat.c | 1 - misc/buildroot/toolchain/nxflat/thumb2/dyncall_skeleton.def | 10 ++++++---- 3 files changed, 8 insertions(+), 7 deletions(-) (limited to 'misc/buildroot/toolchain') diff --git a/misc/buildroot/toolchain/nxflat/arm/dyncall_skeleton.def b/misc/buildroot/toolchain/nxflat/arm/dyncall_skeleton.def index 8f58267bc..08faf1624 100644 --- a/misc/buildroot/toolchain/nxflat/arm/dyncall_skeleton.def +++ b/misc/buildroot/toolchain/nxflat/arm/dyncall_skeleton.def @@ -153,7 +153,7 @@ static const char dyncall_format[] = "%s:\n" "\tstmdb\tsp!,{r4, lr}\n" "\tldr\tr4, =__dyninfo%04d\n" - "\tbl\t[r4]\n" + "\tblx\tr4\n" "\tldmia\tsp!,{r4, pc}\n" "\t.size\t%s, .-%s\n"; @@ -163,7 +163,7 @@ static const char nonreturning_dyncall_format[] = "\t.type\t%s, function\n\n" "%s:\n" "\tldr\tr4, =__dyninfo%04d\n" - "\tb\t[r4]\n" + "\tbx\tr4\n" "\t.size\t%s, .-%s\n"; /******************************************************************* diff --git a/misc/buildroot/toolchain/nxflat/ldnxflat.c b/misc/buildroot/toolchain/nxflat/ldnxflat.c index 83c0ca67e..65c8133ce 100644 --- a/misc/buildroot/toolchain/nxflat/ldnxflat.c +++ b/misc/buildroot/toolchain/nxflat/ldnxflat.c @@ -1724,7 +1724,6 @@ static void show_usage(void) fprintf(stderr, " Entry point to module [%s for executable]\n", default_exe_entry_name); fprintf(stderr, " NULL for shared library\n"); - fprintf(stderr, " -l Build a shared library binary [executable]\n"); fprintf(stderr, " -o \n"); fprintf(stderr, " Output to [.xflt]\n"); fprintf(stderr, " -s \n"); diff --git a/misc/buildroot/toolchain/nxflat/thumb2/dyncall_skeleton.def b/misc/buildroot/toolchain/nxflat/thumb2/dyncall_skeleton.def index 4bddcd7db..2f0980ee1 100644 --- a/misc/buildroot/toolchain/nxflat/thumb2/dyncall_skeleton.def +++ b/misc/buildroot/toolchain/nxflat/thumb2/dyncall_skeleton.def @@ -151,21 +151,23 @@ static const char dyncall_decl_prologue[] = static const char dyncall_format[] = "\n/* Dynamic call logic for imported symbol %s */\n\n" "\t.global\t%s\n" - "\t.type\t%s, function\n\n" + "\t.type\t%s, function\n" + "\t.thumb_func\n\n" "%s:\n" "\tstmdb\tsp!,{r4, lr}\n" "\tldr\tr4, =__dyninfo%04d\n" - "\tbl\t[r4]\n" + "\tblx\tr4\n" "\tldmia\tsp!,{r4, pc}\n" "\t.size\t%s, .-%s\n"; static const char nonreturning_dyncall_format[] = "\n/* Dynamic call logic for imported, non-returning symbol %s */\n\n" "\t.global\t%s\n" - "\t.type\t%s, function\n\n" + "\t.type\t%s, function\n" + "\t.thumb_func\n\n" "%s:\n" "\tldr\tr4, =__dyninfo%04d\n" - "\tb\t[r4]\n" + "\tbx\tr4\n" "\t.size\t%s, .-%s\n"; /******************************************************************* -- cgit v1.2.3