Flag initialization is now based on actual simulator-selection.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1720 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
This commit is contained in:
adrian
2012-10-05 11:44:40 +00:00
parent 4ba6dfa5de
commit 32de9e174e
2 changed files with 13 additions and 8 deletions

View File

@ -2,11 +2,18 @@
namespace fail {
const address_t ADDR_INV = static_cast<address_t> (0);
const address_t ANY_ADDR = static_cast<address_t> (-1);
const unsigned ANY_INSTR = static_cast<unsigned> (-1);
const unsigned ANY_TRAP = static_cast<unsigned> (-1);
const unsigned ANY_INTERRUPT = static_cast<unsigned> (-1);
// Flag initialization depends on the current selected simulator
// (For now, the initialization values are all the same):
#if defined BUILD_BOCHS || defined BUILD_GEM5 || \
defined BUILD_OVP || defined BUILD_QEMU
const address_t ADDR_INV = static_cast<address_t> (0);
const address_t ANY_ADDR = static_cast<address_t> (-1);
const unsigned ANY_INSTR = static_cast<unsigned> (-1);
const unsigned ANY_TRAP = static_cast<unsigned> (-1);
const unsigned ANY_INTERRUPT = static_cast<unsigned> (-1);
const timer_id_t INVALID_TIMER = static_cast<timer_id_t> (0);
#else
#error SAL Config Target not defined
#endif
} // end-of-namespace: fail

View File

@ -26,9 +26,7 @@ typedef uint32_t regwidth_t; //!< type of register width [bits]
typedef register_data_t regdata_t; //!< type of register data
typedef timer_t timer_id_t; //!< type of timer IDs
// The following flags are defined in SALConfig.cc.
// FIXME: The flags should be initialized based on simulator-specific values!
// Note: The following flags are defined in SALConfig.cc.
//! invalid address flag (e.g. for memory address ptrs)
extern const address_t ADDR_INV;