remote_gdb.cc (10595:25ecfc14f73f) | remote_gdb.cc (10601:6efb37480d87) |
---|---|
1/* 2 * Copyright 2014 Google, Inc. 3 * Copyright (c) 2002-2005 The Regents of The University of Michigan 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: redistributions of source code must retain the above copyright --- 130 unchanged lines hidden (view full) --- 139#include "sim/full_system.hh" 140#include "sim/process.hh" 141#include "sim/system.hh" 142 143using namespace std; 144using namespace SparcISA; 145 146RemoteGDB::RemoteGDB(System *_system, ThreadContext *c) | 1/* 2 * Copyright 2014 Google, Inc. 3 * Copyright (c) 2002-2005 The Regents of The University of Michigan 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: redistributions of source code must retain the above copyright --- 130 unchanged lines hidden (view full) --- 139#include "sim/full_system.hh" 140#include "sim/process.hh" 141#include "sim/system.hh" 142 143using namespace std; 144using namespace SparcISA; 145 146RemoteGDB::RemoteGDB(System *_system, ThreadContext *c) |
147 : BaseRemoteGDB(_system, c, NumGDBRegs * sizeof(uint64_t)), nextBkpt(0) | 147 : BaseRemoteGDB(_system, c, NumGDBRegs * sizeof(uint64_t)) |
148{} 149 150/////////////////////////////////////////////////////////// 151// RemoteGDB::acc 152// 153// Determine if the mapping at va..(va+len) is valid. 154// 155bool --- 80 unchanged lines hidden (view full) --- 236 pc.nnpc(pc.npc() + sizeof(MachInst)); 237 pc.upc(0); 238 pc.nupc(1); 239 context->pcState(pc); 240 for (int x = RegG0; x <= RegI0 + 7; x++) 241 context->setIntReg(x - RegG0, gdbregs.regs64[x]); 242 // Only the integer registers, pc and npc are set in netbsd 243} | 148{} 149 150/////////////////////////////////////////////////////////// 151// RemoteGDB::acc 152// 153// Determine if the mapping at va..(va+len) is valid. 154// 155bool --- 80 unchanged lines hidden (view full) --- 236 pc.nnpc(pc.npc() + sizeof(MachInst)); 237 pc.upc(0); 238 pc.nupc(1); 239 context->pcState(pc); 240 for (int x = RegG0; x <= RegI0 + 7; x++) 241 context->setIntReg(x - RegG0, gdbregs.regs64[x]); 242 // Only the integer registers, pc and npc are set in netbsd 243} |
244 245void 246RemoteGDB::clearSingleStep() 247{ 248 if (nextBkpt) 249 clearTempBreakpoint(nextBkpt); 250} 251 252void 253RemoteGDB::setSingleStep() 254{ 255 nextBkpt = context->pcState().npc(); 256 setTempBreakpoint(nextBkpt); 257} | |