Experimental Physics and Industrial Control System
|
I suspect that the CPU-specific code in gcc for the ppc604 target is older than for the ppc32 target and can’t cope with newer constructs, we’ve had similar issues before. That’s why I really want to encourage you try the ppc32 targets, I don’t think they will
show these errors at all and switching will save you time investigating the problems.
- Andrew
On Jun 3, 2020, at 12:30 PM, Zimoch Dirk (PSI) via Core-talk < core-talk at aps.anl.gov> wrote:
3 files have problems implementing the pure virtual function epicsTimerNotify::expire():
fdmgr.cc line 152, epicsTime.cpp line 62 and epicsTimerTest.cpp line 319. What helps is -O1 or -no-expensive-optimizations.
As I expect problems with any code that implements expire() I have now added 'CXXFLAGS += -fno-expensive-optimizations' to the general options for that architecture, not only for the 3 failing files.
This does not yet solve the problem with typeCast.h.
More tests tomorrow.
-----Ursprüngliche Nachricht-----
Von: Michael Davidsaver <mdavidsaver at gmail.com>
Gesendet: Mittwoch, 3. Juni 2020 18:48
An: Zimoch Dirk (PSI) <dirk.zimoch at psi.ch>; 'core-talk at aps.anl.gov' <core-
talk at aps.anl.gov>
Betreff: Re: AW: EPICS 7 and VxWorks 6.9 for PPC604?
On 6/3/20 8:31 AM, Zimoch Dirk (PSI) wrote:
I will try the selective -fno-inline ...
If vxworks 6.7 had gcc 4.1 then the threshold for using
__attribute__((always_inline)) is now being crossed.
https://github.com/epics-
base/pvDataCPP/blob/0fa927afa7d92f490f92eb4906e27046080309e2/src/misc
/pv/templateMeta.h#L15-L16
-----Ursprüngliche Nachricht-----
Von: Zimoch Dirk (PSI)
Gesendet: Mittwoch, 3. Juni 2020 17:30
An: 'Michael Davidsaver' <mdavidsaver at gmail.com>; 'core-
talk at aps.anl.gov'
<core-talk at aps.anl.gov>
Betreff: AW: EPICS 7 and VxWorks 6.9 for PPC604?
It's gcc 4.3.3.
Using -O0 (as used to fix bug 1702298) in helps for fdmgr.cpp but not for
typeCast.h.
-----Ursprüngliche Nachricht-----
Von: Michael Davidsaver <mdavidsaver at gmail.com>
Gesendet: Mittwoch, 3. Juni 2020 17:13
An: Zimoch Dirk (PSI) <dirk.zimoch at psi.ch>; 'core-talk at aps.anl.gov' <core-
talk at aps.anl.gov>
Betreff: Re: EPICS 7 and VxWorks 6.9 for PPC604?
For those of us who aren't so familiar with vxworks, which GCC version(s)
are
involved.
You may remember https://bugs.launchpad.net/epics-base/+bug/1702298
On 6/3/20 8:04 AM, Zimoch Dirk (PSI) via Core-talk wrote:
Has anyone already compiled EPICS 7 for VxWorks 6.9 for PPC604?
I have problems:
With -O2 it fails here:
../fdmgr/fdmgr.cpp: In member function 'virtual
epicsTimerNotify::expireStatus timerForOldFdmgr::expire(const
epicsTime&)':
../fdmgr/fdmgr.cpp:152: error: unable to find a register to spill in class
'FLOAT_REGS'
../fdmgr/fdmgr.cpp:152: error: this is the insn:
(insn:HI 16 15 17 2 ../fdmgr/fdmgr.cpp:151 (set (reg:DF 126 [
D.11913.delay
])
(mem/s/j/c:DF (plus:SI (reg/f:SI 113 sfp)
(const_int 8 [0x8])) [0 D.11913.delay+0 S8 A64])) 336
{*movdf_hardfloat32} (expr_list:REG_EQUIV (mem/s/j/c:DF (plus:SI (reg/f:SI
113
sfp)
(const_int 8 [0x8])) [0 D.11913.delay+0 S8 A64])
(nil)))
../fdmgr/fdmgr.cpp:152: confused by earlier errors, bailing out
With -O1 (or lower) it comliles the above but then fails here:
../../src/misc/pv/typeCast.h: In function
'void<unnamed>::castVTyped(size_t,
void*, const void*) [with TO = std::basic_string<char, std::char_traits<char>,
std::allocator<char> >, FROM = float]':
../../src/misc/pv/typeCast.h:195: sorry, unimplemented: inlining failed in
call
to 'TO epics::pvData::castUnsafe(const FROM&) [with TO =
std::basic_string<char, std::char_traits<char>, std::allocator<char> >, FROM
=
float]': recursive inlining
../../src/misc/typeCast.cpp:38: sorry, unimplemented: called from here
At least the compiler is "sorry". I feel much better.
BTW: VxWorks 6.7 has no such problems.
Dirk
--
Complexity comes for free, simplicity you have to work for.
|
- Replies:
- Re: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- References:
- EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- Re: EPICS 7 and VxWorks 6.9 for PPC604? Michael Davidsaver via Core-talk
- AW: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- AW: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- Re: AW: EPICS 7 and VxWorks 6.9 for PPC604? Michael Davidsaver via Core-talk
- AW: AW: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- Navigate by Date:
- Prev:
AW: AW: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- Next:
Re: make runtests fails with "touch: missing file operand" Johnson, Andrew N. via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
AW: AW: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- Next:
Re: EPICS 7 and VxWorks 6.9 for PPC604? Zimoch Dirk (PSI) via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
|
ANJ, 04 Jun 2020 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
·
Search
·
EPICS V4
·
IRMIS
·
Talk
·
Bugs
·
Documents
·
Links
·
Licensing
·
|