1
0
mirror of https://github.com/wfjm/w11.git synced 2026-02-14 20:16:24 +00:00

- The div instruction gave wrong results in some corner cases when either

divisor or quotient were the largest negative integer (100000 or -32768).
  This is corrected now, for details see ECO-026-div.txt
- some minor updates and fixes to support scripts
- xtwi usage and XTWI_PATH setup explained in INSTALL.txt
This commit is contained in:
Walter F.J. Mueller
2014-08-10 14:32:48 +00:00
parent 46331caebb
commit 093d540121
91 changed files with 2174 additions and 1018 deletions

View File

@@ -1,6 +1,6 @@
// $Id: RlinkCommandList.cpp 495 2013-03-06 17:13:48Z mueller $
// $Id: RlinkCommandList.cpp 576 2014-08-02 12:24:28Z mueller $
//
// Copyright 2011-2013 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
// Copyright 2011-2014 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
//
// This program is free software; you may redistribute and/or modify it under
// the terms of the GNU General Public License as published by the Free
@@ -13,6 +13,7 @@
//
// Revision History:
// Date Rev Version Comment
// 2014-08-02 576 1.1 rename LastExpect->SetLastExpect
// 2013-05-06 495 1.0.3 add RlinkContext to Print() args
// 2013-02-03 481 1.0.2 use Rexception
// 2011-04-25 380 1.0.1 use boost/foreach
@@ -22,7 +23,7 @@
/*!
\file
\version $Id: RlinkCommandList.cpp 495 2013-03-06 17:13:48Z mueller $
\version $Id: RlinkCommandList.cpp 576 2014-08-02 12:24:28Z mueller $
\brief Implemenation of class RlinkCommandList.
*/
@@ -199,22 +200,24 @@ size_t RlinkCommandList::AddInit(uint16_t addr, uint16_t data)
void RlinkCommandList::LastVolatile()
{
if (fList.size() == 0)
size_t ncmd = fList.size();
if (ncmd == 0)
throw Rexception("RlinkCommandList::LastVolatile()",
"Bad state: list empty");
fList[fList.size()-1]->SetFlagBit(RlinkCommand::kFlagVol);
fList[ncmd-1]->SetFlagBit(RlinkCommand::kFlagVol);
return;
}
//------------------------------------------+-----------------------------------
//! FIXME_docs
void RlinkCommandList::LastExpect(RlinkCommandExpect* exp)
void RlinkCommandList::SetLastExpect(RlinkCommandExpect* pexp)
{
if (fList.size() == 0)
throw Rexception("RlinkCommandList::LastExpect()",
size_t ncmd = fList.size();
if (ncmd == 0)
throw Rexception("RlinkCommandList::SetLastExpect()",
"Bad state: list empty");
fList[fList.size()-1]->SetExpect(exp);
fList[ncmd-1]->SetExpect(pexp);
return;
}