diff options
author | Bob Wilson <bob.wilson@acm.org> | 2003-07-10 00:22:51 +0000 |
---|---|---|
committer | Bob Wilson <bwilson@gcc.gnu.org> | 2003-07-10 00:22:51 +0000 |
commit | a7bda3d5315977ba1b1cdeb387bfe66dd91a9090 (patch) | |
tree | 926a2180322f5f3f497cdedac44b58f27c1751d0 | |
parent | a1188b984f53780cbeeb965ae7933555b54488d7 (diff) | |
download | gcc-a7bda3d5315977ba1b1cdeb387bfe66dd91a9090.zip gcc-a7bda3d5315977ba1b1cdeb387bfe66dd91a9090.tar.gz gcc-a7bda3d5315977ba1b1cdeb387bfe66dd91a9090.tar.bz2 |
* config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
From-SVN: r69165
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/xtensa/xtensa.h | 10 |
2 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 683a24e..69d1beb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-07-09 Bob Wilson <bob.wilson@acm.org> + + * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define. + 2003-07-09 Aldy Hernandez <aldyh@redhat.com> PR/11144 diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h index 5f5e112..558084b 100644 --- a/gcc/config/xtensa/xtensa.h +++ b/gcc/config/xtensa/xtensa.h @@ -1482,3 +1482,13 @@ typedef struct xtensa_args { /* Exception handling TODO!! */ #define DWARF_UNWIND_INFO 0 +/* Xtensa constant pool breaks the devices in crtstuff.c to control + section in where code resides. We have to write it as asm code. Use + a MOVI and let the assembler relax it -- for the .init and .fini + sections, the assembler knows to put the literal in the right + place. */ +#define CRT_CALL_STATIC_FUNCTION(SECTION_OP, FUNC) \ + asm (SECTION_OP "\n\ + movi\ta8, " USER_LABEL_PREFIX #FUNC "\n\ + callx8\ta8\n" \ + TEXT_SECTION_ASM_OP); |