g+
g+ Communities
Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014 
<== Date ==> <== Thread ==>

Subject: Re: "Size of symbol changed" warnings building EPICS Base 3.14.12.2
From: Dirk Zimoch <dirk.zimoch@psi.ch>
To: "J. Lewis Muir" <jlmuir@imca-cat.org>
Cc: EPICS Tech Talk <tech-talk@aps.anl.gov>
Date: Wed, 07 Mar 2012 09:50:56 +0100
Hi Lewis,

Can it be that you did not do a "make clean" when you changed the optimization level?

I am speculating a bit now:

These two functions, epicsSingleton<localHostName>::reference::~reference(void) and epicsSingleton<localHostName>::reference::operator->(void) both contain 'assert' (see src/libCom/cxxTemplates/epicsSingleton.h).

'assert' is a macro:
#   define assert(exp) ((exp) ? (void)0 : \
        epicsAssert(__FILE__, __LINE__, #exp, epicsAssertAuthor))

Depending on the optimization level, '(void)0' may be eliminated and the code becomes shorter (by 4 bytes = 1 PPC instruction).

Try to 'make clean' in the epics base top directory and compile again.

Dirk


J. Lewis Muir wrote:
On 3/2/12 10:51 AM, J. Lewis Muir wrote:
When building EPICS Base 3.14.12.2 (+ Known Problems patches)
for vxWorks-ppc603, vxWorks-ppc604, and vxWorks-ppc604_long, I'm
getting warnings like this:

===
/opt/vxworks-tornado-2.0.2/host/x86-linux/bin/ldppc -r -o
callbackTest  -L../../../../lib/vxWorks-ppc603/
-L/opt/vxworks-tornado-2.0.2/host/x86-linux/powerpc-wrs-vxworks/lib
          callbackTest.o    -ldbIoc -ldbStaticIoc -lca -lCom
Warning: size of symbol
`_$_Q2t14epicsSingleton1Z13localHostName9reference' changed from
160 to 164 in cac.o
Warning: size of symbol
`__rf__Q2t14epicsSingleton1Z13localHostName9reference' changed
from 128 to 132 in cac.o
===

I happened to be compiling with -O0.  I tried compiling with -O2
and these "size of symbol changed" warnings went away.  Strange.

Lewis



Replies:
Re: "Size of symbol changed" warnings building EPICS Base 3.14.12.2 J. Lewis Muir
References:
"Size of symbol changed" warnings building EPICS Base 3.14.12.2 J. Lewis Muir
Re: "Size of symbol changed" warnings building EPICS Base 3.14.12.2 J. Lewis Muir

Navigate by Date:
Prev: cothread ca_nothing Shen, Guobao
Next: Re: References about EPICS Dirk Zimoch
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014 
Navigate by Thread:
Prev: Re: "Size of symbol changed" warnings building EPICS Base 3.14.12.2 J. Lewis Muir
Next: Re: "Size of symbol changed" warnings building EPICS Base 3.14.12.2 J. Lewis Muir
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICSv4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·