diff --git a/doc/class-diagram.dia b/doc/class-diagram.dia index c3b1a9d3..0f237c0b 100644 --- a/doc/class-diagram.dia +++ b/doc/class-diagram.dia @@ -65,19 +65,19 @@ - + - + - + - + #SimulatorController# @@ -282,6 +282,29 @@ + + + #m_CPUs# + + + #vector<ConcreteCPU*># + + + ## + + + ## + + + + + + + + + + + @@ -1796,6 +1819,198 @@ + + + #addCPU# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #cpu# + + + #ConcreteCPU*# + + + ## + + + ## + + + + + + + + + + #getCPU# + + + ## + + + #ConcreteCPU&# + + + + + + ## + + + + + + + + + + + + + + + + + #id# + + + #size_t# + + + ## + + + ## + + + + + + + + + + #dereference# + + + ## + + + #BaseListener*# + + + + + + ## + + + + + + + + + + + + + + + + + #idx# + + + #index_t# + + + ## + + + ## + + + + + + + + + + #toggle# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #pfl# + + + #ExperimentFlow*# + + + ## + + + ## + + + + + + + @@ -1804,19 +2019,19 @@ - + - + - + - + - + #BochsController# @@ -2046,132 +2261,6 @@ - - - #save# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #path# - - - #const string&# - - - ## - - - ## - - - - - - - - - - #restore# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #path# - - - #const string&# - - - ## - - - ## - - - - - - - - - - #reboot# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - #rebootDone# @@ -2202,136 +2291,6 @@ - - - #onBreakpoint# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #instrPtr# - - - #address_t# - - - ## - - - ## - - - - - - - - #address_space# - - - #address_t# - - - ## - - - ## - - - - - - - - - - #dbgEnableInstrPtrOutput# - - - ## - - - #void# - - - - - - ##ifdef DEBUG# - - - - - - - - - - - - - - - - - #regularity# - - - #unsigned# - - - ## - - - ## - - - - - - - - #dest# - - - #std::ostream*# - - - #&cout# - - - ## - - - - - - - #restoreDone# @@ -2733,19 +2692,19 @@ - + - + - - - - + + + + @@ -2753,7 +2712,7 @@ - + @@ -2768,162 +2727,11 @@ ## - - + + - - - - - - - - - - - - - - - - - #OVPController# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - @@ -3660,7 +3468,7 @@ - + @@ -4230,7 +4038,7 @@ - + ## @@ -4295,11 +4103,11 @@ - - + + - + @@ -4577,7 +4385,7 @@ - + @@ -4748,30 +4556,30 @@ - + - + - + - + - + - + - #FaultCoverageExperiment# + #MyConcreteExperiment# ## - ## + #example# @@ -4789,8 +4597,159 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #TracingPlugin# + + + ## + + + #optional# + + + + + + + + + + + + + + + + + + + @@ -4863,16 +4822,16 @@ - + - - - + + + @@ -4895,162 +4854,11 @@ ## - + - - - - - - - - - - - - - - - - - - #MemAccessTracingCoExperiment# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - + ## @@ -5088,17 +4896,17 @@ - + - + - - + + @@ -5119,11 +4927,11 @@ - - + + - + @@ -5414,7 +5222,7 @@ - + @@ -5555,7 +5363,7 @@ - + ## @@ -5603,8 +5411,8 @@ - - + + @@ -5622,34 +5430,34 @@ - - + + - + - + - + - + - + - + - #FaultCoverageCampaign# + #MyConcreteCampaign# ## - ## + #example# @@ -5667,7 +5475,7 @@ - + @@ -5736,21 +5544,21 @@ - + - + - - - + + + @@ -5773,11 +5581,11 @@ ## - - + + - + @@ -6169,30 +5977,30 @@ - + - + - + - + - #FaultCoverageExperimentData# + #MyConcreteExperimentData# ## - ## + #example# @@ -6210,7 +6018,7 @@ - + @@ -6279,78 +6087,7 @@ - - - #ExperimentController::getExperimentData# - - - - - - - - - - - - ## - - - ## - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + ## @@ -6388,19 +6125,90 @@ - + - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + + + + + + + + + + ## + + + ## + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + @@ -6417,11 +6225,11 @@ - - + + - + @@ -6634,7 +6442,7 @@ - + ## @@ -6705,11 +6513,11 @@ - - + + - + ## @@ -6774,11 +6582,11 @@ - - + + - + @@ -7039,7 +6847,7 @@ - + ## @@ -7087,8 +6895,8 @@ - - + + @@ -7106,23 +6914,23 @@ - - + + - + - + - + - - + + @@ -7150,11 +6958,11 @@ - - + + - + @@ -7288,7 +7096,7 @@ - + ## @@ -7336,8 +7144,8 @@ - - + + @@ -7355,11 +7163,11 @@ - - + + - + @@ -7875,7 +7683,7 @@ - + ## @@ -7923,8 +7731,8 @@ - - + + @@ -7942,19 +7750,19 @@ - - + + - + - + - + - + @@ -8056,30 +7864,30 @@ - + - + - + - + - + - + - #FaultCoverageExperimentDataStorage# + #MyConcreteExperimentDataStorage# ## - ## + #example# @@ -8097,7 +7905,7 @@ - + @@ -8166,7 +7974,7 @@ - + ## @@ -8204,19 +8012,19 @@ - + - + - - - - + + + + @@ -8233,11 +8041,11 @@ - - + + - + ## @@ -8278,7 +8086,7 @@ - + @@ -8286,8 +8094,8 @@ - - + + @@ -8304,25 +8112,25 @@ - - + + - + - + - + - - - - + + + + @@ -8345,11 +8153,11 @@ ## - - + + - + ## @@ -8387,18 +8195,18 @@ - + - + - - - + + + @@ -8416,11 +8224,11 @@ - - + + - + @@ -8653,7 +8461,7 @@ ## - + @@ -8976,15 +8784,15 @@ - + - + - + - + @@ -9455,471 +9263,12 @@ - - - - - - - - - - - - - - - - - - #RegisterManager# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Subsets# - - - #std::vector< UniformRegisterSet ># - - - ## - - - ## - - - - - - - - - - - - - - - - #count# - - - ## - - - #size_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #subsetCount# - - - ## - - - #size_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #getSet# - - - ## - - - #UniformRegisterSet&# - - - - - - ## - - - - - - - - - - - - - - - - - #i# - - - #size_t# - - - ## - - - ## - - - - - - - - - - #getSetOfType# - - - ## - - - #UniformRegisterSet&# - - - - - - ## - - - - - - - - - - - - - - - - - #t# - - - #RegisterType# - - - ## - - - ## - - - - - - - - - - #add# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #reg# - - - #UniformRegisterSet&# - - - ## - - - ## - - - - - - - - - - #clear# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - - #getInstructionPointer# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #getStackPointer# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #getBasePointer# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - - - - - + - + @@ -9928,7 +9277,7 @@ - + #UniformRegisterSet# @@ -10176,7 +9525,7 @@ - #add# + #m_add# ## @@ -10185,7 +9534,7 @@ #void# - + ## @@ -10205,7 +9554,7 @@ - #reg# + #preg# #Register*# @@ -10224,13 +9573,13 @@ - #clear# + #begin# ## - #void# + #iterator# @@ -10252,13 +9601,73 @@ + + + #end# + + + ## + + + #iterator# + + + + + + ## + + + + + + + + + + + + + + + + + + #first# + + + ## + + + #Register*# + + + + + + ## + + + + + + + + + + + + + + + - + ## @@ -10296,17 +9705,17 @@ - + - + - - + + @@ -10325,11 +9734,11 @@ - - + + - + ## @@ -10367,99 +9776,28 @@ - + - + - - - - + + + + - + - - - - - - - - - - - - - - - - ## - - - - - - - - - - ## - - - ## - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -10467,11 +9805,11 @@ - - + + - + ## @@ -10509,19 +9847,19 @@ - + - + - - + + - + @@ -10538,534 +9876,19 @@ - - + + - + - + - + - - - - - - - - - - #BochsRegister# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_pData# - - - #void*# - - - ## - - - ## - - - - - - - - - - - - - - - - #getData# - - - ## - - - #regdata_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setData# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #data# - - - #regdata_t# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #BxGPReg# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #BxPCReg# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - + @@ -11167,21 +9990,21 @@ - + - + - + - - - - + + + + @@ -11204,52 +10027,11 @@ ## - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - + @@ -11537,7 +10319,7 @@ - + @@ -11750,7 +10532,7 @@ - + @@ -11860,7 +10642,7 @@ - + @@ -11872,8 +10654,8 @@ - - + + @@ -11897,11 +10679,11 @@ ## - - + + - + @@ -11913,8 +10695,8 @@ - - + + @@ -11938,11 +10720,11 @@ ## - - + + - + @@ -12631,15 +11413,15 @@ - + - + - + - + @@ -13079,7 +11861,7 @@ - + ## @@ -13117,21 +11899,21 @@ - + - + - - + + - - + + @@ -13150,61 +11932,475 @@ - - + + - - - ## - - - - - - - - - - - - ## - - - ## - - - - - - - - - ## - - - ## - - - - - - - + - + - + + + + + + + + + + + + + #TroubleListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_WatchNumbers# + + + #vector<unsigned># + + + ## + + + ## + + + + + + + + + + + + + + #m_Data# + + + #TroubleEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + #addWatchNumber# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #troubleNumber# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #removeWatchNumber# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #troubleNum# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #getWatchNumbers# + + + ## + + + #std::vector<unsigned># + + + + + + ## + + + + + + + + + + + + + + + + + + #isMatching# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #troubleNum# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #setTriggerNumber# + + + ## + + + ## + + + + + + ## + + + + + + + + + + + + + + + + + #troubleNum# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #getTriggerNumber# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + @@ -13214,35 +12410,1894 @@ + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #MemReadListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #MemWriteListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #GuestListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Data# + + + #GuestEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + #getData# + + + ## + + + #char# + + + + + + ## + + + + + + + + + + + + + + + + + + #setData# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #data# + + + #char# + + + ## + + + ## + + + + + + + + + + #getPort# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + #setPort# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #port# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #JumpListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Data# + + + #JumpEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + #getOpcode# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + #isRegisterTriggered# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + #setOpcode# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #oc# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #setFlagTriggered# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #flagTriggered# + + + #bool# + + + ## + + + ## + + + + + + + + + + #isFlagTriggered# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + - + - + - + - + - + - #BochsRegisterManager# + #TimerListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Timeout# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + + + + + #m_Data# + + + #TimerEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + #getId# + + + ## + + + #timer_id_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setId# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #id# + + + #timer_id_t# + + + ## + + + ## + + + + + + + + + + #getTimeout# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #BPListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_CR3# + + + #address_t# + + + ## + + + ## + + + + + + + + + + + + + + #m_Data# + + + #BPEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + #getCR3# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setCR3# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #iptr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + #aspaceIsMatching# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #address_space# + + + #address_t# + + + #ANY_ADDR# + + + ## + + + + + + + + + + #isMatching# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #addr# + + + #address_t# + + + #0# + + + ## + + + + + + + + #address_space# + + + #address_t# + + + #ANY_ADDR# + + + ## + + + + + + + + + + #getTriggerInstructionPointer# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setTriggerInstructionPointer# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #iptr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #BaseEvent# ## @@ -13329,10 +14384,144 @@ + + + + + + + + + + + + + + + + + + + + + + + + #BPEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_TriggerInstrPtr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + + + - #getInstructionPointer# + #getTriggerInstructionPointer# ## @@ -13353,8 +14542,3905 @@ + + + + + + + + #setTriggerInstructionPointer# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #iptr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #MemAccessEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_TriggerAddr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + + + + + #m_TriggerWidth# + + + #size_t# + + + ## + + + ## + + + + + + + + + + + + + + #m_TriggerIP# + + + #address_t# + + + ## + + + ## + + + + + + + + + + + + + + #m_AccessType# + + + #access_type_t# + + + ## + + + ## + + + + + + + + + + + + + + + + #getTriggerAddress# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setTriggerAddress# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #addr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + #getTriggerWidth# + + + ## + + + #size_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setTriggerWidth# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #width# + + + #size_t# + + + ## + + + ## + + + + + + + + + + #getTriggerInstructionPointer# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setTriggerInstructionPointer# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #addr# + + + #address_t# + + + ## + + + ## + + + + + + + + + + #getTriggerAccessType# + + + ## + + + #accessType_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setTriggerAccessType# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #type# + + + #accessType_t# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #TroubleEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_TriggerNumber# + + + #int# + + + ## + + + ## + + + + + + + + + + + + + + + + #setTriggerNumber# + + + ## + + + ## + + + + + + ## + + + + + + + + + + + + + + + + + #troubleNum# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #getTriggerNumber# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #InterruptEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_IsNMI# + + + #bool# + + + ## + + + ## + + + + + + + + + + + + + + + + #isNMI# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + #setNMI# + + + ## + + + ## + + + + + + ## + + + + + + + + + + + + + + + + + #enabled# + + + #bool# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #GuestEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Data# + + + #char# + + + ## + + + ## + + + + + + + + + + + + + + #m_Port# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + + + + + + + #getData# + + + ## + + + #char# + + + + + + ## + + + + + + + + + + + + + + + + + + #setData# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #data# + + + #char# + + + ## + + + ## + + + + + + + + + + #getPort# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + #setPort# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #port# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #IOPortListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Data# + + + #IOPortEvent# + + + ## + + + ## + + + + + + + + + + + + + + #m_Port# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + + + + + #m_Out# + + + #bool# + + + ## + + + ## + + + + + + + + + + + + + + + + #getData# + + + ## + + + #unsigned char# + + + + + + ## + + + + + + + + + + + + + + + + + + #setData# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #data# + + + #unsigned char# + + + ## + + + ## + + + + + + + + + + #getPort# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + #setPort# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #port# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #isMatching# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #p# + + + #unsigned# + + + ## + + + ## + + + + + + + + #out# + + + #bool# + + + ## + + + ## + + + + + + + + + + #isOutListener# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + #setOut# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #out# + + + #bool# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #IOPortEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Data# + + + #unsigned char# + + + ## + + + ## + + + + + + + + + + + + + + + + #getData# + + + ## + + + #unsigned char# + + + + + + ## + + + + + + + + + + + + + + + + + + #setData# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #data# + + + #unsigned char# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #JumpListener# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_OpcodeTrigger# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + + + + + #m_FlagTriggered# + + + #bool# + + + ## + + + ## + + + + + + + + + + + + + + + + #getTriggerOpcode# + + + ## + + + #unsigned# + + + + + + ## + + + + + + + + + + + + + + + + + + #isRegisterTriggered# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + #setTriggerOpcode# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #oc# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #setFlagTriggered# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #flagTriggered# + + + #bool# + + + ## + + + ## + + + + + + + + + + #isFlagTriggered# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #GenericTimerEvent# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Id# + + + #timer_id_t# + + + ## + + + ## + + + + + + + + + + + + + + + + #getId# + + + ## + + + #timer_id_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #setId# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #id# + + + #timer_id_t# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #Gem5Controller# + + + ## + + + #To-do!# + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + ## + + + + + + + + + + + + ## + + + ## + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #CPUArchitecture# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Registers# + + + #vector<Register*># + + + ## + + + ## + + + + + + + + + + + + + + #m_RegisterSubsets# + + + #vector<UniformRegisterSet*># + + + ## + + + ## + + + + + + + + + + + + + + + + #m_addRegister# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #reg# + + + #Register*# + + + ## + + + ## + + + + + + + + + + #begin# + + + ## + + + #iterator# + + + + + + ## + + + + + + + + + + + + + + + + + + #end# + + + ## + + + #iterator# + + + + + + ## + + + + + + + + + + + + + + + + + + #registerCount# + + + ## + + + #size_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #registerSubsetCount# + + + ## + + + #size_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #getRegister# + + + ## + + + #Register*# + + + + + + ## + + + + + + + + + + + + + + + + + #i# + + + #size_t# + + + ## + + + ## + + + + + + + + + + #getRegisterSet# + + + ## + + + #UniformRegisterSet&# + + + + + + ## + + + + + + + + + + + + + + + + + #i# + + + #size_t# + + + ## + + + ## + + + + + + + + + + #getRegisterSetOfType# + + + ## + + + #UniformRegisterSet*# + + + + + + ## + + + + + + + + + + + + + + + + + #t# + + + #RegisterType# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #CPUState# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_SuppressedInterrupts;# + + + #vector<unsigned># + + + ## + + + ## + + + + + + + + + + + + + + + + #getRegisterContent# + + + ## + + + #regdata_t# + + + + + + ## + + + + + + + + + + + + + + + + + #reg# + + + #Register*# + + + ## + + + ## + + + + + + + + + + #setRegisterContent# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #reg# + + + #Register*# + + + ## + + + ## + + + + + + + + #value# + + + #regdata_t# + + + ## + + + ## + + + + + + + + + + #getInstructionPointer# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + @@ -13377,13 +18463,13 @@ ## - + - + - + @@ -13392,13 +18478,61 @@ - #getBasePointer# + #isSuppressedInterrupt# ## - #address_t# + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #interruptNum# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #addSuppressedInterrupt# + + + ## + + + #bool# @@ -13418,7 +18552,73 @@ - + + + + #interruptNum# + + + #unsigned# + + + ## + + + ## + + + + + + + + + + #removeSuppressedInterrupt# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + #interruptNum# + + + #unsigned# + + + ## + + + ## + + + + + + @@ -13426,65 +18626,24 @@ - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - + - + - + - + - #BxFlagsReg# + #X86Architecture# ## @@ -13571,7 +18730,828 @@ + + + + + + + + + + + + + + + + + + + + + + + + #X86CPUState# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #getBasePointer# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + + + + + + + + + #getFlagsRegister# + + + ## + + + #regdata_t# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #ArmCPUState# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #getLinkRegister# + + + ## + + + #address_t# + + + + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + #ArmArchitecture# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + ## + + + + + + + + + + + + ## + + + ## + + + + + + + + + ## + + + #1..*# + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #BochsCPU# + + + ## + + + ## + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #m_Id# + + + #unsigned int# + + + ## + + + ## + + + + + + + + + + + + + + + + #getId# + + + ## + + + #unsigned int# + + + + + + ## + + + + + + + + + + + + + + + #getCarryFlag# @@ -13722,246 +19702,6 @@ - - - #setCarryFlag# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #bit# - - - #bool# - - - ## - - - ## - - - - - - - - - - #setParityFlag# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #bit# - - - #booĺ# - - - ## - - - ## - - - - - - - - - - #setZeroFlag# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #bit# - - - #bool# - - - ## - - - ## - - - - - - - - - - #setSignFlag# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #bit# - - - #bool# - - - ## - - - ## - - - - - - - - - - #setOverflowFlag# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #bit# - - - #bool# - - - ## - - - ## - - - - - - - #getTrapFlag# @@ -13992,6 +19732,66 @@ + + + #getInterruptFlag# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + + + + #getDirectionFlag# + + + ## + + + #bool# + + + + + + ## + + + + + + + + + + + + + + + #getIOPrivilegeLevel# @@ -14022,66 +19822,6 @@ - - - #getInterruptFlag# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - #getDirectionFlag# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - #getNestedTaskFlag# @@ -14114,7 +19854,7 @@ - #getResumeFlag# + #getVMFlag# ## @@ -14144,7 +19884,7 @@ - #getVMFlag# + #getResumeFlag# ## @@ -14294,7 +20034,7 @@ - #setData# + #setCarryFlag# ## @@ -14323,10 +20063,202 @@ - #data# + #bit# - #regdata_t# + #bool# + + + ## + + + ## + + + + + + + + + + #setParityFlag# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #bit# + + + #bool# + + + ## + + + ## + + + + + + + + + + #setZeroFlag# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #bit# + + + #bool# + + + ## + + + ## + + + + + + + + + + #setSignFlag# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #bit# + + + #bool# + + + ## + + + ## + + + + + + + + + + #setOverflowFlag# + + + ## + + + #void# + + + + + + ## + + + + + + + + + + + + + + + + + #bit# + + + #bool# ## @@ -14874,21 +20806,21 @@ - + - + - + - - - - + + + + @@ -14896,14 +20828,14 @@ - - - - + + + + ## @@ -14911,5564 +20843,69 @@ ## - - + + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + + + + + + + + + - + - - - - - - - #TroubleListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_WatchNumbers# - - - #vector<unsigned># - - - ## - - - ## - - - - - - - - - - - - - - #m_Data# - - - #TroubleEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - #addWatchNumber# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #troubleNumber# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #removeWatchNumber# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #troubleNum# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #getWatchNumbers# - - - ## - - - #std::vector<unsigned># - - - - - - ## - - - - - - - - - - - - - - - - - - #isMatching# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #troubleNum# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #setTriggerNumber# - - - ## - - - ## - - - - - - ## - - - - - - - - - - - - - - - - - #troubleNum# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #getTriggerNumber# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #MemReadListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #MemWriteListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #GuestListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Data# - - - #GuestEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - #getData# - - - ## - - - #char# - - - - - - ## - - - - - - - - - - - - - - - - - - #setData# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #data# - - - #char# - - - ## - - - ## - - - - - - - - - - #getPort# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - #setPort# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #port# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #JumpListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Data# - - - #JumpEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - #getOpcode# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - #isRegisterTriggered# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - #setOpcode# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #oc# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #setFlagTriggered# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #flagTriggered# - - - #bool# - - - ## - - - ## - - - - - - - - - - #isFlagTriggered# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #GenericTimerListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Timeout# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - - - - - #m_Data# - - - #GenericTimerEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - #getId# - - - ## - - - #timer_id_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setId# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #id# - - - #timer_id_t# - - - ## - - - ## - - - - - - - - - - #getTimeout# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #BPListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_CR3# - - - #address_t# - - - ## - - - ## - - - - - - - - - - - - - - #m_Data# - - - #BPEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - #getCR3# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setCR3# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #iptr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - #aspaceIsMatching# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #address_space# - - - #address_t# - - - #ANY_ADDR# - - - ## - - - - - - - - - - #isMatching# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #addr# - - - #address_t# - - - #0# - - - ## - - - - - - - - #address_space# - - - #address_t# - - - #ANY_ADDR# - - - ## - - - - - - - - - - #getTriggerInstructionPointer# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerInstructionPointer# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #iptr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #TimerListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_registerTimer# - - - ## - - - #timer_id_t# - - - - - - ## - - - - - - - - - - - - - - - - - #pev# - - - #TimerEvent*# - - - ## - - - ## - - - - - - - - - - #m_unregisterTimer# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #pev# - - - #TimerEvent*# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #BaseEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - #BPEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_TriggerInstrPtr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - - - - - - - #getTriggerInstructionPointer# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerInstructionPointer# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #iptr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #MemAccessEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_TriggerAddr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - - - - - #m_TriggerWidth# - - - #size_t# - - - ## - - - ## - - - - - - - - - - - - - - #m_TriggerIP# - - - #address_t# - - - ## - - - ## - - - - - - - - - - - - - - #m_AccessType# - - - #access_type_t# - - - ## - - - ## - - - - - - - - - - - - - - - - #getTriggerAddress# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerAddress# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #addr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - #getTriggerWidth# - - - ## - - - #size_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerWidth# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #width# - - - #size_t# - - - ## - - - ## - - - - - - - - - - #getTriggerInstructionPointer# - - - ## - - - #address_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerInstructionPointer# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #addr# - - - #address_t# - - - ## - - - ## - - - - - - - - - - #getTriggerAccessType# - - - ## - - - #accessType_t# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerAccessType# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #type# - - - #accessType_t# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #TroubleEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_TriggerNumber# - - - #int# - - - ## - - - ## - - - - - - - - - - - - - - - - #setTriggerNumber# - - - ## - - - ## - - - - - - ## - - - - - - - - - - - - - - - - - #troubleNum# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #getTriggerNumber# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #InterruptEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_IsNMI# - - - #bool# - - - ## - - - ## - - - - - - - - - - - - - - - - #isNMI# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - #setNMI# - - - ## - - - ## - - - - - - ## - - - - - - - - - - - - - - - - - #enabled# - - - #bool# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #GuestEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Data# - - - #char# - - - ## - - - ## - - - - - - - - - - - - - - #m_Port# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - - - - - - - #getData# - - - ## - - - #char# - - - - - - ## - - - - - - - - - - - - - - - - - - #setData# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #data# - - - #char# - - - ## - - - ## - - - - - - - - - - #getPort# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - #setPort# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #port# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #IOPortListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Data# - - - #IOPortEvent# - - - ## - - - ## - - - - - - - - - - - - - - #m_Port# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - - - - - #m_Out# - - - #bool# - - - ## - - - ## - - - - - - - - - - - - - - - - #getData# - - - ## - - - #unsigned char# - - - - - - ## - - - - - - - - - - - - - - - - - - #setData# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #data# - - - #unsigned char# - - - ## - - - ## - - - - - - - - - - #getPort# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - #setPort# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #port# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #isMatching# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - #p# - - - #unsigned# - - - ## - - - ## - - - - - - - - #out# - - - #bool# - - - ## - - - ## - - - - - - - - - - #isOutListener# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - #setOut# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #out# - - - #bool# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #IOPortEvent# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_Data# - - - #unsigned char# - - - ## - - - ## - - - - - - - - - - - - - - - - #getData# - - - ## - - - #unsigned char# - - - - - - ## - - - - - - - - - - - - - - - - - - #setData# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #data# - - - #unsigned char# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #JumpListener# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #m_OpcodeTrigger# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - - - - - #m_FlagTriggered# - - - #bool# - - - ## - - - ## - - - - - - - - - - - - - - - - #getTriggerOpcode# - - - ## - - - #unsigned# - - - - - - ## - - - - - - - - - - - - - - - - - - #isRegisterTriggered# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - #setTriggerOpcode# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #oc# - - - #unsigned# - - - ## - - - ## - - - - - - - - - - #setFlagTriggered# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #flagTriggered# - - - #bool# - - - ## - - - ## - - - - - - - - - - #isFlagTriggered# - - - ## - - - #bool# - - - - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #GenericTimerEvent# + #Gem5ArmCPU# ## @@ -20560,7 +20997,30 @@ #m_Id# - #timer_id_t# + #unsigned int# + + + ## + + + ## + + + + + + + + + + + + + + #m_System# + + + #System*# ## @@ -20588,7 +21048,7 @@ ## - #timer_id_t# + #unsigned int# @@ -20610,226 +21070,27 @@ - - - #setId# - - - ## - - - #void# - - - - - - ## - - - - - - - - - - - - - - - - - #id# - - - #timer_id_t# - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ## - - - ## - - - - - - - - - - - - - - - - - - - - - - - - #Gem5Controller# - - - ## - - - #To-do!# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - + + + + @@ -20852,83 +21113,90 @@ ## - - + + - - - ## - - - - - - - - - - - - ## - - - ## - - - - - - - - - ## - - - ## - - - - - - - + - + - + - - - - - - + + + + - - - - - - + + + + + + ## + + + ## + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ## + + + ## + + + + diff --git a/doc/class-diagram.png b/doc/class-diagram.png index 41213dda..eb208456 100644 Binary files a/doc/class-diagram.png and b/doc/class-diagram.png differ