diff options
author | Nick Clifton <nickc@cygnus.com> | 1999-06-18 01:14:34 +0000 |
---|---|---|
committer | Nick Clifton <nickc@gcc.gnu.org> | 1999-06-18 01:14:34 +0000 |
commit | 9ddab891df120133507c69572ce5d8c71dc15322 (patch) | |
tree | 2e9ba6342c0bdf61b7a3117a362bcc54761a7047 | |
parent | e4faf1eb91ef00a3f25dccec7bc7a20b922d4ead (diff) | |
download | gcc-9ddab891df120133507c69572ce5d8c71dc15322.zip gcc-9ddab891df120133507c69572ce5d8c71dc15322.tar.gz gcc-9ddab891df120133507c69572ce5d8c71dc15322.tar.bz2 |
Use .thumb_set pseudo op to mark aliases of thumb functions.
From-SVN: r27586
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/telf.h | 20 |
2 files changed, 25 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6b08f8b977..f5b0a48 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Jun 18 09:11:07 1999 Nick Clifton <nickc@cygnus.com> + + * config/arm/telf.h (ASM_OUTPUT_DEF_FROM_DECLS): New Marco: USe + .thumb_set pseudo op to mark aliases of thumb functions. + Wed Jun 16 18:19:13 1999 Nick Clifton <nickc@cygnus.com> * varasm.c (assemble_alias): Use ASM_OUTPUT_DEF_FROM_DECLS in diff --git a/gcc/config/arm/telf.h b/gcc/config/arm/telf.h index 69604a2..3e14a5f 100644 --- a/gcc/config/arm/telf.h +++ b/gcc/config/arm/telf.h @@ -140,6 +140,26 @@ extern int arm_structure_size_boundary; } \ while (0) +/* For aliases of functions we use .thumb_set instead. */ +#define ASM_OUTPUT_DEF_FROM_DECLS(FILE,DECL1,DECL2) \ + do \ + { \ + char * LABEL1 = XSTR (XEXP (DECL_RTL (decl), 0), 0); \ + char * LABEL2 = IDENTIFIER_POINTER (DECL2); \ + \ + if (TREE_CODE (DECL1) == FUNCTION_DECL) \ + { \ + fprintf (FILE, "\t.thumb_set "); \ + assemble_name (FILE, LABEL1); \ + fprintf (FILE, ","); \ + assemble_name (FILE, LABEL2); \ + fprintf (FILE, "\n"); \ + } \ + else \ + ASM_OUTPUT_DEF (FILE, LABEL1, LABEL2); \ + } \ + while (0) + /* A list of other sections which the compiler might be "in" at any given time. */ #undef EXTRA_SECTIONS |