diff options
author | Stephane Carrez <Stephane.Carrez@worldnet.fr> | 2002-04-09 20:53:50 +0200 |
---|---|---|
committer | Stephane Carrez <ciceron@gcc.gnu.org> | 2002-04-09 20:53:50 +0200 |
commit | e8766a39731cfa919099d8d1111f7a1203349d9f (patch) | |
tree | 468b707c00ad38e1c6a81e9a3044b71bb0b027e3 | |
parent | 42aacdfbb8e0f82db83a16facd6662836b648733 (diff) | |
download | gcc-e8766a39731cfa919099d8d1111f7a1203349d9f.zip gcc-e8766a39731cfa919099d8d1111f7a1203349d9f.tar.gz gcc-e8766a39731cfa919099d8d1111f7a1203349d9f.tar.bz2 |
larith.asm (__map_data_section): Fix condition and optimize for size.
* config/m68hc11/larith.asm (__map_data_section): Fix condition
and optimize for size.
(__do_global_ctors): Fix pointer comparison.
(__do_global_dtors): Likewise.
From-SVN: r52086
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config/m68hc11/larith.asm | 19 |
2 files changed, 20 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c8dbbaf..cecfe5c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2002-04-09 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/m68hc11/larith.asm (__map_data_section): Fix condition + and optimize for size. + (__do_global_ctors): Fix pointer comparison. + (__do_global_dtors): Likewise. + 2002-04-09 David S. Miller <davem@redhat.com> * config/sparc/sparc.c (sparc_extra_constraint_check): New diff --git a/gcc/config/m68hc11/larith.asm b/gcc/config/m68hc11/larith.asm index 94e1596..2a0727b 100644 --- a/gcc/config/m68hc11/larith.asm +++ b/gcc/config/m68hc11/larith.asm @@ -1083,23 +1083,30 @@ A_low_B_low: .sect .install2,"ax",@progbits .globl __map_data_section .globl __data_image +#ifdef mc68hc12 .globl __data_section_size +#endif __map_data_section: - ldd #__data_section_size - beq Done +#ifdef mc68hc12 ldx #__data_image ldy #__data_section_start + ldd #__data_section_size + beq Done Loop: -#ifdef mc68hc12 movb 1,x+,1,y+ dbne d,Loop #else + ldx #__data_image + ldy #__data_section_start + bra Start_map +Loop: ldaa 0,x staa 0,y inx iny +Start_map: cpx #__data_image_end - blt Loop + blo Loop #endif Done: @@ -1139,7 +1146,7 @@ __do_global_ctors: ldx #__CTOR_END__-2 ctors_loop: cpx #__CTOR_LIST__ - blt ctors_done + blo ctors_done pshx ldx 0,x jsr 0,x @@ -1165,7 +1172,7 @@ __do_global_dtors: ldx #__DTOR_LIST__ dtors_loop: cpx #__DTOR_END__ - bge dtors_done + bhs dtors_done pshx ldx 0,x jsr 0,x |