This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: About tool chain in http://kegel.com/crosstool/


Hi,

Dan Kegel <dank@kegel.com> wrote:
> Oddly enough, the error message is clear and informative;
> .size and .type directives are missing in the definition
> of the function movstr_i4_even.  A patch to add them was
> http://gcc.gnu.org/ml/gcc-patches/2002-11/msg01641.html

I've noticed one more problem about this issue.  In the testcase given
by ZhouChang, libdemo.so exports __movstr_i4_even which is a function
in libgcc.a. This itself is not a problem but it means that some functions
in libgcc.a which should not be exported from shared objects might be
exported from shared libs. An easy workaround is to add a .hidden
directive to the patch as following:

--- ORIG/gccbib/gcc/config/sh/lib1funcs.asm	Fri Sep 20 10:29:21 2002
+++ LOCAL/gccbib/gcc/config/sh/lib1funcs.asm	Tue Nov 26 15:56:55 2002
@@ -38,9 +38,14 @@ Boston, MA 02111-1307, USA.  */
    amylaar@cygnus.com  */
 
 #ifdef __ELF__
-#define LOCAL(X) .L_##X
-#else
-#define LOCAL(X) L_##X
+#define LOCAL(X)	.L_##X
+#define FUNC(X)		.type X,@function; .hidden X
                                                 ^^^^^^^^^^^

Regards,
	kaz

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]