CVS: gcc/gcc-3.3/gcc/config/msp430 libgcc.S, 1.12, 1.13 msp430.h, 1.41, 1.42

Chris Liechti <[email protected]> Tue, 27 May 2008 18:43:41 -0700
Newsgroups gmane.comp.hardware.texas-instruments.msp430.gcc.cvs
Message-ID <[email protected]>
Update of /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv23290/gcc/config/msp430

Modified Files:
	libgcc.S msp430.h 
Log Message:
- remove the hack
- ensure that _do_clear_bss is linked when .comm symbols are output (these are linked into the .bss secion too and unless -fno-common is given it is the default type for unitialized globals)


Index: libgcc.S
===================================================================
RCS file: /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430/libgcc.S,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -w -d -r1.12 -r1.13
--- libgcc.S	26 May 2008 23:42:43 -0000	1.12
+++ libgcc.S	28 May 2008 01:43:39 -0000	1.13
@@ -633,17 +633,6 @@
 	mov.w   __data_load_start(r15), __data_start(r15)    ; data section is word-aligned, so word transfer is acceptable
 	jne     .L__copy_data_loop
 
-;-------- chris hack to keep bss init --------------
-	.extern __bss_start
-	.extern __bss_size
-__do_clear_bss:
-	mov     #__bss_size, r15
-.L__clear_bss_loop:
-	dec     r15
-	clr.b   __bss_start(r15)
-	jne     .L__clear_bss_loop
-;----------------------------------------------------
-
 	.endfunc
 #endif /* defined(L__do_copy_data) */
     

Index: msp430.h
===================================================================
RCS file: /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430/msp430.h,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -w -d -r1.41 -r1.42
--- msp430.h	26 May 2008 23:12:44 -0000	1.41
+++ msp430.h	28 May 2008 01:43:39 -0000	1.42
@@ -2072,7 +2072,7 @@
      char *p = NAME;					\
      if(*p == '*' || *p == '@' ) p++;			\
      if(*p >= '0' && *p <= '9' ) break;			\
-     fputs ("\t.comm ", (STREAM));			\
+     fputs ("\t.global\t__do_clear_bss\n\t.comm ", (STREAM));			\
      assemble_name ((STREAM), (NAME));			\
      fprintf ((STREAM), ",%d%s", (SIZE), (SIZE)>1?",2\n":"\n");\
 } while (0)


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/