[PTLsim-devel] compile error

Matt T. Yourst
Wed Sep 26 18:09:09 EDT 2007


On Wednesday 26 September 2007 06:03, Yusuf wrote:
> Hello,
> I am very new to PTLsim, I will use it for academic research and tried to
> compile it today. But I have taken the following error while compiling:
> ...
> seqcore.cpp:775: error: no matching function for call to 'inrange(Waddr&,
> W64&, W64&)'
> seqcore.cpp: In member function 'int SequentialCore::issueload(const
> TransOp&, SFR&, Waddr&, W64, W64, W64, PTEUpdate&)':
> seqcore.cpp:897: error: no matching function for call to 'inrange(Waddr&,
> W64&, W64&)'
>

Some versions of gcc are very strict about strong typing. Here's a simple fix 
(we'll add this to our next release):

Old version:

  if unlikely (inrange(addr, config.log_trigger_virt_addr_start, ...

New version:

  if unlikely (inrange(W64(addr), config.log_trigger_virt_addr_start ...
                       ^^^ I added this type cast

This should fix it. Repeat the same process if you have any more instances of 
this problem.

I think we did not fully test the last release on 32-bit systems with this 
compiler version, where Waddr is 32 bits but config.log_... is 64 bits. This 
is why the compiler complains.

- Matt

-------------------------------------------------------
 Matt T. Yourst                    yourst at peptidal.com
 Peptidal Research Inc., Co-Founder and Lead Architect
-------------------------------------------------------


More information about the PTLsim-devel mailing list