EPICS Controls 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  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: "Size of symbol changed" warnings building EPICS Base 3.14.12.2
From: Dirk Zimoch <[email protected]>
To: "J. Lewis Muir" <[email protected]>
Cc: EPICS Tech Talk <[email protected]>
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  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
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  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·