]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/5l, cmd/6l, cmd/8l: fix function symbol generation from gcc compiled source code
authorShenghou Ma <minux.ma@gmail.com>
Tue, 18 Dec 2012 15:17:39 +0000 (23:17 +0800)
committerShenghou Ma <minux.ma@gmail.com>
Tue, 18 Dec 2012 15:17:39 +0000 (23:17 +0800)
For CL 6853059.

R=jsing, rsc
CC=golang-dev
https://golang.org/cl/6938076

src/cmd/5l/asm.c
src/cmd/6l/asm.c
src/cmd/8l/asm.c

index cfcd3a07dbb3fafd092344ee7955974dfe8c0492..a937650480c2f6233e4705a751c915a91d597df7 100644 (file)
@@ -450,7 +450,7 @@ adddynsym(Sym *s)
 
                /* type */
                t = STB_GLOBAL << 4;
-               if(s->dynexport && s->type == STEXT)
+               if(s->dynexport && (s->type&SMASK) == STEXT)
                        t |= STT_FUNC;
                else
                        t |= STT_OBJECT;
index 4ea8962cc3070b05898565d50bc143c8dc0c6ed5..89ea86109f53634ccdabe5d19f512cd073d886a0 100644 (file)
@@ -455,7 +455,7 @@ adddynsym(Sym *s)
                adduint32(d, addstring(lookup(".dynstr", 0), name));
                /* type */
                t = STB_GLOBAL << 4;
-               if(s->dynexport && s->type == STEXT)
+               if(s->dynexport && (s->type&SMASK) == STEXT)
                        t |= STT_FUNC;
                else
                        t |= STT_OBJECT;
index b53a8b1aa754e75566babb7c6773c1672918aeff..3d3248f937dcd4f87784fc20b23dd9e675c0e396 100644 (file)
@@ -447,7 +447,7 @@ adddynsym(Sym *s)
        
                /* type */
                t = STB_GLOBAL << 4;
-               if(s->dynexport && s->type == STEXT)
+               if(s->dynexport && (s->type&SMASK) == STEXT)
                        t |= STT_FUNC;
                else
                        t |= STT_OBJECT;