2008-06-06  Teresa Thomas  <tthomas@redhat.com>

	* LinuxPtraceTaskState.java: Additional logging messages.

2008-06-04  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java: Delete AuxvBuilder.buildBuffer.

2008-05-21  Sami Wagiaalla  <swagiaal@redhat.com>

	ObjectDeclarationSearchEngine constructor now
	requires Task instead Frame.
	* Breakpoint.java: Updated.

2008-05-20  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java (buildBuffer(byte[])): Delete.

2008-05-14  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceTaskState.java (Running.checkWatchpoint): Check watchpoint
	factory does not return null.

2008-05-12  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceProc.java (requestAddWatchObserver): Call addFailed
	on any exceptions raised in add().
	

2008-04-22  Mark Wielaard  <mwielaard@redhat.com>

	* Breakpoint.java (reset): Make package private.
	(cloneForProc): New method.
	* BreakpointAddresses.java (cloneForProc): New method.
	(clearAllBreakpoints): New method.
	* LinuxPtraceProc.java (LinuxPtraceProc(Task,ProcessIdentifier)):
	Set breakpoints through forkingProc.breakpoints.cloneForProc().
	(breakpoints): Make package private.
	* LinuxPtraceTask.java (LinuxPtraceTask(LinuxPtraceTask,
	LinuxPtraceProc,TaskAttachedObserverXXX)): Set currentISA.
	* LinuxPtraceTaskState.java
	(StartMainTask.wantToDetach.handleAttach): Clear breakpoints.
	(StartMainTask.wantToDetach.StoppedEvent): Likewise.
	* TestTaskObserverCode.java (testCodeOverFork): Resolve bug #5331.
	
2008-04-22  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceTaskState.java (Running.checkWatchpoint): Check
	write state on notify.
	* LinuxPtraceTask.java (notifyWatchpoint): Collect only
	watchpoints that have been triggered, then notify.
	* LinuxPtraceProc.java (LinuxPtraceProc): Wide watchpoint scope
	to protected.

2008-04-21  Mark Wielaard  <mwielaard@redhat.com>

	* BreakpointAddresses.java: Mark class and methods package private.
	(CodeObserver): New final static helper class.
	(addBreakpoint): Take CodeObserver as argument, not
	TaskObserver.Code.
	(removeBreakpoint): Likewise.
	(getCodeObservers): Return collection of CodeObservers, not
	TaskObserver.Code.
	* LinuxPtraceProc.java (BreakpointAction.run): Install or remove
	BreakpointAddresses.CodeObserver instead of bare TaskObserver.Code.
	* LinuxPtraceTask.java (notifyCodeBreakpoint): Check Task against
	BreakpointAddresses.CodeObserver.
	* TestTaskObserverCode.java (testMultiTaskUpdateCalledSeveralTimes):
	Resolved bug #5234.

2008-04-15  Teresa Thomas  <tthomas@redhat.com>

	* LinuxPtraceTask.java (isInstructionObserverAdded): New.
	
2008-04-14  Andrew Cagney  <cagney@redhat.com>

	* PtraceRegisterBanksFactory.java: Use frysk.config.Host.

2008-04-11  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxPtraceTaskState.java (Running.setupSteppingBreakpoint):
	Removed.
	(Running.handleTrappedEvent): Don't call
	setupSteppingBreakpoint().
	(Stepping.handleTrappedEvent): Don't do stepping breakpoint sanity
	check. Don't call setupSteppingBreakpoint().
	* LinuxPtraceTask.java (notifyCodeBreakpoint): Add stepping
	breakpoint sanity check. Set task pc when breakpoint found. Set
	steppingBreakpoint.
	
2008-04-10  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceProc.java: Clean up some indention and add/fix
	comments.
	* LinuxPtraceTask.java: Ditto.

2008-04-09  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxPtraceTaskState.java (Running.handleExecedEvent): Mark
	Task as justStarted.

2008-04-08  Phil Muldoon  <pmuldoon@redhat.com>
	    Mark Wielaard  <mwielaard@redhat.com>
			
	* LinuxPtraceTaskState.java (Running.checkWatchpoint): New.
	(Running.handleTrappedEvent): Rewrite sequence to accumulate
	blockers for all sigtrap events, then return.
	(Stepping.handleTrappedEvent): Ditto.
	
2008-04-07  Stan Cox  <scox@redhat.com>

	* LinuxPtraceHost.java (requestCreateAttachedProc): Add libs parameter.

2008-04-07  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceTaskState.java (Stepping.handleTrappedEvent): Reset 
	watchpoint after noting trigger.
	(Running.handleTrappedEvent): Ditto.

2008-04-07  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxPtraceTaskState.java (Stepping.handleTrappedEvent):
	Explicitly notify Instruction observers in special
	"no step bit set" cases.

2008-04-04  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceProc.java (LinuxPtraceProc): Instatiate watchpoint
	address manager.
	(WatchpointAction): New. Install watchpoints.
	(requestAddWatchObserver): Implement.
	(requestDeleteWatchObserver): Ditto.
	* WatchpointAddresses.java (proc): Store a proc, not a task.
	(addWatchpoint): Take a length, and a write only flag.
	(removeWatchpoint): Ditto.
	(getWatchObservers): Ditto.
	(getWatchpoint): Ditto.
	* Watchpoint.java (Watchpoint): Take a task and a writeOnly flag.
	(create): Ditto
	(getLength): New.
	(isWriteOnly): New.
	(set): Actually set the watchpoint.
	(reset): Delete the watchpoint.
	* LinuxPtraceTaskState.java (Running.handleTrappedEvent): Add watchpoint
	catch/test.
	(Stepping.handleTrappedEvent): Ditto.

2008-04-02  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceProc.java (requestAddWatchObserver): Add writeOnly flag.
	(requestDeleteWatchObserver): Ditto.
	* LinuxPtraceTask.java (requestAddWatchObserver): Call LinuxPtraceProc
	implementation.
	(requestDeleteWatchObserver): Ditto.
	(notifyWatchpoint): New.
	(WatchpointAction): Delete.
	(requestAddWatchObserver): Delete private function.
	(requestDeleteWatchObserver): Delete private function.

2008-03-31  Stan Cox  <scox@redhat.com>

	* LinuxPtraceProc.java (getExe): Replace with getExeFile.

2008-03-27  Stan Cox  <scox@redhat.com>

	* LinuxPtraceProc.java (getExeFile): New.

2008-03-26  Phil Muldoon  <pmuldoon@redhat.com>

	* Isa.java (setWatchpoint): New Interface
	(deleteWatchpoint): Ditto.
	(getWatchpointCount): Ditto.
	* LinuxX8664.java: Add above interfaces.
	* LinuxIA32.java: Ditto.
	* IsaPowerPC.java: Ditto.

2008-03-20  Petr Machata  <pmachata@redhat.com>

	* TestTaskObserverCode.java (Symbol): Pass type, bind, visibility
	as full-fledged objects.

2008-03-18  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (removeProc(LinuxPtraceProc)): Replace
	removeProc(ProcessIdentifier).
	(addProc(LinuxPtraceProc)): Replace
	addProc(ProcessIdentifier,LinuxPtraceProc).
	* LinuxPtraceProcState.java (detached.handleRemove): Remove the
	Proc from the Host.
	* LinuxPtraceProc.java: Update.

	* TestRefresh.java (checkAdditionsAndRemovals(boolean)): Replace
	checkAdditionAndRemoval.
	* LinuxPtraceProc.java: Add more logging.
	
	* TestTaskObserverBlocked.java (BlockedFibonacci): Register the
	process with StopEventLoopWhenProcTerminated earlier.
	* LinuxPtraceProc.java: Add more logging.
	* LinuxPtraceHost.java (requestProc(int,FindProc)): Refresh the
	proc, not its tasks.

	* LinuxPtraceTask.java (sendAttach(), sendDetach(Signal)): Don't
	try to perform error recovery here.

2008-03-17  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTaskState.java (getDestroyed): Delete.
	(handleDisappearedEvent(LinuxPtraceTask)): Delete.
	(handleTerminatedEvent(LinuxPtraceTask,Signal,int)): Make
	abstract; implement in all sub-classes.
	* LinuxPtraceTask.java (processClonedEvent(LinuxPtraceTask)):
	Catch Errno.Esrch.
	
	* LinuxPtraceTask.java (set(LinuxPtraceTaskState)): Delete.
	* LinuxWaitBuilder.java: Update

	* LinuxPtraceProcState.java (handleRefresh(LinuxPtraceProc)): Delete.
	* LinuxPtraceProc.java (requestRefresh()): Delete.

	* TestProcStopped.java: Use ProcBlockObserver.

	* LinuxPtraceHost.java: Update; using TaskAttachedObserverXXX.
	* TestTaskObserverCode.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestRuntimeIsa.java: Ditto.
	* LinuxWaitBuilder.java: Ditto.
	* LinuxPtraceTask.java: Ditto.

2008-03-15  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java (observations): Move from Proc.
	(addObservation(Object)): Ditto.
	(removeObservation(Object)): Ditto.
	(observationsSize(Object)): Ditto.
	(observationsIterator(Object)): Ditto.
	(requestUnblock(Object)): Ditto.

	* LiveTask.java: Update to match Task.java.
	* LinuxPtraceTask.java: Ditto.

	* LinuxPtraceTask.java (LinuxPtraceTask(LinuxPtraceTask,
	LinuxPtraceProc,Attached)): Add LinuxPtraceTask parameter.	
	(notifyClonedOffspring(), notifyForkedOffspring()): Simplify.
	* LinuxPtraceHost.java: Update.
	* LinuxWaitBuilder.java (forkEvent(ProcessIdentifier,ProcessIdentifier))
	(cloneEvent(ProcessIdentifier,ProcessIdentifier)): Update; clean-up.

2008-03-14  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProcState.java: Update to match Proc.

	* LinuxPtraceHost.java: Do not call Host.remove(Proc).
	* LinuxPtraceTaskState.java: Ditto.

	* LinuxPtraceTaskState.java: Don't remove non-exec tasks; already
	deleted.
	* LinuxWaitBuilder.java (execEvent(ProcessIdentifier)): Kill off
	non-exec tasks.
	* LinuxPtraceProc.java (getAllTasks()): New.

2008-03-13  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverBlocked.java: Use
	StopEventLoopWhenProcTerminated.

	* LinuxPtraceTaskState.java (warning): New; use instead of
	System.out.println().

2008-03-12  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (addProc(ProcessIdentifier,LinuxPtraceProc)):
	Do not notify observableProcAddedXXX.

2008-03-11  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverCode.java: Do not use
	Host.requestCreateAttachedProc and
	StopEventLoopWhenChildProcRemoved.

	* LinuxPtraceProcState.java: Use LogFactory.

	* TestTaskObserverBlocked.java: Register offspring with
	TearDownProcess.

	* TestProcStopped.java: Update to match Offspring.
	* TestRuntimeIsa.java: Ditto.

	* LinuxPtraceProc.java (getMainTask()): Implement.

2008-03-10  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java: Update to match MemoryMap.

2008-03-04  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java: Update to match Host.

2008-03-03  Andrew Cagney  <cagney@redhat.com>

	* PtraceRegisterBanksFactory.java: Use frysk.config.

2008-02-27  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProcState.java: Do not use Proc.taskPool.
	* LinuxPtraceTaskState.java: Ditto.

	* LinuxPtraceProc.java (tasks): New.
	(removeTask(ProcessIdentifier)): New.	
	(addTask(ProcessIdentifier,LinuxPtraceTask)): New.
	(sendRefresh()): Use tasks.
	* LinuxPtraceTask.java: Use.
	* LinuxPtraceTaskState.java: Use.

2008-02-26  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (removeProc(ProcessIdentifier)): New.
	(addProc(ProcessIdentifier,LinuxPtraceProc)): Rename putProc; call
	observableProcAddedXXX.notify.
	* LinuxPtraceProc.java: Update.

2008-02-26  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceTask.java: Rename watchpoint variables.
	* WatchpointAddresses.java: Update Comments.
	(addBreakpoint): Rename addWatchpoint.
	(removeBreakpoint): Rename removeWatchpoint.
	(getCodeObservers): Rename getWatchObservers.
	(getBreakpoint): Rename getWatchpoint.
	(removeAllCodeObservers): Rename removeAllWatchObservers.
	* Watchpoint.java: Rename installed.
	(install, create, remove, isInstalled): 
	Rename breakpoint -> watchpoint
	

2008-02-20  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProcState.java: Get the task from the
	LinuxPtraceHost.

2008-02-20  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceProc.java (requestAddWatchObservers): New.
	(requestDeleteWatchObserver): New.
	* LinuxPtraceTask.java (requestAddWatchObservers): New.
	(requestDeleteWatchObserver): New.
	* Watchpoint.java: New.
	* WatchpointAddresses.java: New.

2008-02-19  Andrew Cagney  <cagney@redhat.com>

	* IsaFactory.java: Update to match lib.dwfl.
	* TestTaskObserverCode.java: Ditto.

2008-02-15  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java: Use frysk.rsl.
	* LinuxPtraceTaskState.java: Ditto.
	* IsaFactory.java: Ditto.
	* LinuxPtraceTask.java: Ditto.
	* LinuxWaitBuilder.java: Ditto.
	* LinuxPtraceProcState.java: Ditto.
	* State.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.

	* LinuxPtraceHost.java: Replace TaskId with ProcessIdentifier.

2008-02-14  Andrew Cagney  <cagney@redhat.com>

	* LiveProc.java: Replace ProcId with ProcessIdentifier and int.
	* LinuxPtraceProc.java: Update.
	* LinuxPtraceHost.java: Ditto.

	* LinuxPtraceProc.java: Update to match Status.
	* LinuxPtraceTaskState.java: Ditto.
	
	* LiveTask.java: Update to match Task.
	* LinuxPtraceProc.java: Ditto.
	* LinuxPtraceHost.java: Ditto.

2008-02-13  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java: Update to match Status.
	* LinuxPtraceTaskState.java: Ditto.
	
	* LinuxPtraceTaskState.java: Update to match Stat.
	* LinuxPtraceProc.java: Ditto.
	
	* LinuxPtraceProc.java: Update to match ProcBuilder.

	* LinuxPtraceProc.java: Update to match MapsBuilder.
	
	* LinuxPtraceProc.java: Update to match Exe.

	* LinuxPtraceProc.java: Update to match CmdLineBuilder.
	
	* LinuxPtraceProc.java: Update to match AuxvBuilder.

	* LinuxPtraceTask.java (tid): Make package private.
	* LinuxPtraceTaskState.java: Update to match frysk.sys.Signal.
	* TestProcStopped.java: Ditto.

2008-02-12  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java: Update to match frysk.sys.Pid.
	* TestRefresh.java: Ditto.

	* TestRefresh.java: Update to match frysk.testbed.
	* TestTaskObserverCode.java: Ditto.
	* TestRuntimeIsa.java: Ditto.

	* LinuxPtraceTask.java: Use frysk.sys.ptrace.
	* AddressSpaceByteBuffer.java: Ditto; simplify.
	* LogicalMemoryBuffer.java: Ditto.
	* TestByteBuffer.java: Ditto.
	* PtraceRegisterBanksFactory.java: Ditto.
	* RegisterSetByteBuffer.java: Ditto; simplify.

2008-02-08  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (procs): New.
	(getProc(ProcessIdentifier)): New.
	(putProc(ProcessIdentifier,LinuxPtraceProc)): New.
	(ProcChanges): Use.
	* LinuxPtraceProc.java: Use.
	
	* LinuxPtraceHost.java: Update to match
	ProcBuilder.build(ProcessIdentifier).
	* LinuxPtraceProc.java: Ditto.

	* LinuxPtraceTask.java: Use ProcssIdentifierFactory.create.
	* LinuxPtraceHost.java: Update to match Stat.ppid.

2008-02-07  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (getTask(ProcessIdentifier)): New.
	(putTask(ProcessIdentifier,LinuxPtraceTask)): New.
	* LinuxWaitBuilder.java (searchId): Delete.
	(get(ProcessIdentifier,String)): New.
	* LinuxPtraceTask.java: Register with LinuxPtraceHost.

	* LinuxPtraceHost.java (requestRefreshXXX()): Delete.
	* TestTaskObserverBlocked.java: Update.
	
	* LinuxPtraceHost.java (requestProc(int,FindProc)): Update to
	match host.

	* AddressSpaceByteBuffer.java: Replace "int pid" with
	ProcessIdentifier.
	* IsaFactory.java: Ditto.
	* RegisterSetByteBuffer.java: Ditto.
	* LogicalMemoryBuffer.java: Ditto.
	* PtraceRegisterBanksFactory.java: Ditto.
	* LinuxPtraceTask.java (tid): New.
	* TestByteBuffer.java: Update.

	* TestByteBuffer.java: Use ForkFactory.

2008-02-06  Andrew Cagney  <cagney@redhat.com>

	* LinuxWaitBuilder.java: Update to match WaitBuilder's
	disappeared, syscallEvent, stopped, terminated.
	
	* LinuxWaitBuilder.java: Update to match WaitBuilder's exitEvent
	and execEvent.

	* LinuxPtraceProc.java (LinuxPtraceProc(Task,ProcessIdentifier)):
	Replace LinuxPtraceProc(Task,TaskId).
	* LinuxPtraceHost.java: Update.
	* LinuxPtraceTask.java (LinuxPtraceTask(Task,ProcessIdentifer)):
	Replace LinuxPtraceTask(Task,TaskId).
	* LinuxWaitBuilder.java: Update to match WaitBuilder's cloneEvent
	and forkEvent.

	* LinuxPtraceHost.java: Update to match frysk.sys.Fork.
	* TestRefresh.java: Ditto.

2008-01-31  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (requestRefresh(Set,HostRefreshBuilder))
	(executeRefresh(Set,HostRefreshBuilder)): New.
	(executeRefresh()): Rename sendRefresh().
	* TestRefresh.java: New.

2008-01-25  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverCode.java: Fix a merge botch.

	* TestRuntimeIsa.java (assertHasNoIsa(String,Task)): New.
	(assertHasIsaEquals(String,Task,boolean)): Delete.
	* LinuxPtraceTask.java (hasIsa()): Delete.
	(clearIsa()): Make protected.
	(getISA()): Simplify, throw an NPE when the ISA is null.
	(sendSetOptions()): Delete.
	(ptraceOptions): Initialize directly.
	(startTracingSyscalls(), stopTracingSyscalls()): Call
	Ptrace.setOptions.
	(initializeAttachedState()): New.
	* LinuxPtraceTaskState.java: Call Task.initializeAttachedState(),
	instead of Task.sendSetOptions() as the task is attached.

	* TestTaskObserverCode.java: Eliminate uses of
	frysk.sys.Signal.equals(int); import frysk.isa.signals.Signal
	instead of frysk.sys.Signal.

2008-01-24  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java (notifyTerminating(boolean,int))
	(notifyTerminated(boolean,int)): Pass frysk.isa.signals.Signal to
	observers.
	* TestTaskObserverCode.java: Update.
	
	* LinuxPtraceTask.java (notifySignaled(int)): Pass a
	frysk.isa.signals.Signal to the observers; return -1 when there
	are no observers.
	* TestTaskObserverCode.java: Update.
	* TestProcStopped.java: Update.
	
	* IsaPowerPC.java: Update; Register moved to frysk.isa.registers.
	* LinuxIA32.java: Ditto.
	* LinuxPPC32.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* LinuxPtraceTask.java: Ditto.
	* LinuxX8664.java: Ditto.
	* TestRegs.java: Ditto.

	* LinuxPtraceTask.java: Update: RegisterBank moved to
	frysk.isa.banks.
	* PtraceRegisterBanksFactory.java: Ditto.

	* LinuxPtraceTask.java: Update; Syscall moved to
	frysk.isa.syscalls.

2008-01-22  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTaskState.java: Re-indent.
	
	* LinuxPtraceTaskState.java (handleTrappedEvent(LinuxPtraceTask))
	(handleSignaledEvent(LinuxPtraceTask,Signal)): Delete.
	(handleStoppedEvent(LinuxPtraceTask,Signal)): Delete.
	(blockOrDetach(LinuxPtraceTask)): Delete.
	(blockOrAttach(LinuxPtraceTask)): Delete.
	(blockOrAttachContinue(LinuxPtraceTask)): Delete.
	(attemptContinue(LinuxPtraceTask)): Delete.
	
	* LinuxPtraceTaskState.java (handleStoppedEvent(LinuxPtraceTask,
	Signal)): Replace handleStoppedEvent(LinuxPtraceTask).
	* LinuxPtraceTask.java (processSignaledEvent(Signal)): Delete.
	(processTrappedEvent()): Delete.
	(processStoppedEvent(Signal)): Replace processStoppedEvent().

	* LinuxPtraceTask.java (sendContinue(Signal)): Replace
	sendContinue(int).
	(sendSyscallContinue(Signal)): Replace sendSyscallContinue(int).
	(sendStepInstruction(Signal)): Replace sendStepInstruction(int).
	(sendDetach(Signal)): Replace sendDetach(int).
	* LinuxPtraceTaskState.java: Update.

	* LinuxPtraceTask.java (processSignaledEvent(Signal)): Replace
	processSignaledEvent(int).
	(processTerminatingEvent(Signal,int)): Replace
	processTerminatingEvent(boolean,int).
	(processTerminatedEvent(Signal,int)): Replace
	processTerminatedEvent(Signal,int).
	* LinuxPtraceTaskState.java: Update.
	* LinuxWaitBuilder.java: Update.

	* LinuxWaitBuilder.java: Update to match
	WaitBuilder.exitEvent(int,Signal,int,boolean) and
	WaitBuilder.terminated(int,Signal,int,boolean).

2008-01-21  Andrew Cagney  <cagney@redhat.com>

	* LinuxWaitBuilder.java: Update to match
	WaitBuilder.stopped(int,Signal).

2008-01-18  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java (sendDetach(int)): For SIGSTOP, send a
	signal.
	* LinuxPtraceTaskState.java: Don't loose the signal in
	WaitForContinueorUnblock.
	
	* TestProcStopped.java (testStoppedSignal()): New.
	* LinuxPtraceTaskState.java (transitionToAttached): Merge signal code.

	* LinuxPtraceProcState.java: Move attach SIGCONT from here ...
	* LinuxPtraceTaskState.java: ... to here; wait for SIGCONT.
	
	* LinuxPtraceTaskState.java: Convert a SIGCONT during the main
	task's attach back into a SIGSTOP; pass pending signals back when
	detaching.
	* LinuxPtraceProcState.java: Unwedge a suspended Proc by sending
	it a SIGCONT.
	* TestProcStopped.java (testStoppedAckDaemon()): Enable.
	(testStoppedDetached()): Enable.
	(testMultiThreadedStoppedAckDaemon()): Enable.
	(testMultiThreadedStoppedDetached()): Enable.

2008-01-17  Rick Moseley  <rmoseley@redhat.com>

	* LinuxWaitBuilder.java: Catch error when process is gone.
	* LinuxPtraceTaskState.java: Handle null ISA return.
	* IsaFactory.java: Return null when can't get ISA.

2008-01-17  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java (getStateFIXME()): Return "<null>" when
	null.
	* LinuxPtraceTask.java (getStateFIXME()): Ditto.

	* TestProcStopped.java: Re-indent.
	
	* TestProcStopped.java: Moved from frysk.proc.

2008-01-16  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java (blockers): New.
	(bogusUseOfInternalBlockersVariableFIXME()): New.
	* LinuxPtraceProc.java: Update.
	* TestTaskObserverBlocked.java: Move here from frysk.proc.

	* LinuxPtraceTask.java (getRegisterBanks()): Replace
	sendrecRegisterBanks().
	
	* LinuxPtraceTask.java (getISA()): Replace sendrecISA().
	(hasIsa()): New.
	* TestRuntimeIsa.java (assertHasIsaEquals(Task,boolean)): New.

	* TestRuntimeIsa.java: Move from frysk.proc.TestIsa.

2008-01-15  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java (pendingObservations): Move here from
	frysk.proc.Task.

	* LinuxPtraceTaskState.java: Don't notify Task.taskStateDetached.
	* LinuxPtraceTask.java (sendDetach(int)): Call clearIsa().
	
	* LinuxPtraceTask.java (getMemory()): Replace sendrecMemory().

2008-01-14  Rick Moseley  <rmoseley@redhat.com>

	* LinuxPtraceTask.java: Catch errors from Ptrace.detach().

2008-01-14  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxPtraceProc.java (getMaps): Remove if maps == null.
	Rewrite using better variable names.

2008-01-11  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverCode.java: Move from
	frysk.proc.TestTaskObserverCode.
	* LinuxPtraceTask.java (getRawMemory()): Make package-private.
	* LiveTask.java (getRawMemory()): Declare.
	* Breakpoint.java: Update.
	* Instruction.java: Update.
	
	* LiveTask.java (handleAddObservation(TaskObservation))
	(handleDeleteObservation(TaskObservation)): Declare.
	* TaskObservation.java: Move from frysk.proc.TaskObservation.
	* TaskObservable.java: Move from frysk.proc.TaskObservable.
	* LinuxPtraceTask.java (handleAddObservation(TaskObservation))
	(handleDeleteObservation(TaskObservation)): Make pakage-private.
	* LinuxPtraceProc.java: Update.
	* LinuxPtraceTaskState.java: Update.

2008-01-07  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java (requestProc(ProcId,FindProc)): Replace
	sendRefresh(ProcId,FindProc).

	* LinuxPtraceHost.java: Update; implement FindProc.
	(sendGetProc): Delete.
	
	* Breakpoint.java: Moved from frysk.proc.live.
	* BreakpointAddress.java: Ditto.
	* Isa.java: Ditto.
	* LinuxIA32.java: Ditto.
	* LinuxX8664.java: Ditto.
	* IsaPowerPC.java: Ditto.
	* LinuxPPC32.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* IsaFactory.java: Ditto.
	* Instruction.java: Ditto.
	* IA32InstructionParser.java: Ditto.
	* X8664InstructionParser.java: Ditto.
	* Proc.java (getOutOfLineAddress()): Move from frysk.proc.Proc.
	(breakpoints): Ditto.
	(requestedOutofLineAddresses): Ditto.
	(outOfLineAddresses): Ditto.
	(doneOutOfLine()): Ditto.
	* LinuxPtraceTask.java (steppingBreakpoint): Move from
	frysk.proc.Task.
	* TestByteBuffer.java: Update.
	* LogicalMemoryBuffer.java: Update.
	* LinuxPtraceTaskState.java: Update.
	
	* LinuxPtraceTask.java (getIsaFIXME()): Rename sendrecIsa().
	* LinuxPtraceTaskState.java: Update.

	* LinuxPtraceProc.java (getIsa(), isaXXX): Delete.

	* LinuxPtraceTask.java (setPC(long), getPC()): New.
	(pcRegister, pcRegister()): New.
	
	* LinuxPtraceTask.java (clearIsa()): New.

	* LinuxPtraceTaskState.java: Update; Use Task.setPC(long).

	* State.java: Moved from frysk.proc.State.
	* LinuxPtraceProcState.java: Update.
	* LinuxPtraceTaskState.java: Update.

	* LinuxPtraceTask.java (modCount, incrementMod(), getMod()): New.

	* LinuxPtraceProc.java (getCommand()): Replace sendrecCommand().
	(getExe()): Replace sendrecExe().
	(getUID()): Replace sendrecUID().
	(getGID()): Replace sendrecGID().
	(getCmdLine()): Replace sendrecCmdLine().
	(getMaps()): Replace sendrecMaps().
	(getAuxv()): Replace sendrecAuxv().
	(getIsa()): Replace sendrecIsa().
	
	* LinuxPtraceProc.java (requestAddObserver): Make package-private.
	(requestAddSyscallObserver): Ditto.
	(requestDeleteObserver): Ditto.
	(requestDeleteSyscallObserver): Ditto.
	(requestAddCodeObserver): Ditto.
	(requestDeleteCodeObserver): Ditto.
	(requestAddInstructionObserver): Ditto.
	(requestDeleteInstructionObserver): Ditto.
	* LinuxPtraceTask.java: Update.

	* LinuxPtraceTask.java (justStartedXXX): Move to here from
	Task.just_started.
	(sigSendXXX): Move to here from Task.sig_send.
	(syscallSigretXXX): Move to here from Task.syscall_sigret.
	* LinuxPtraceTaskState.java: Update.

2008-01-04  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java (terminatingObservers): New.
	(notifyTerminating(boolean,int)): New.
	(terminatedObservers, notifyTerminated(boolean,int)): New.
	(execedObservers, notifyExeced()): New.
	(signaledObservers, notifySignaled(int)): New.
	(syscallObservers, notifySyscallEnter(), notifySyscallExit()): New.
	(clonedObservers, notifyClonedParent(Task))
	(notifyClonedOfspring()): New.
	(forkedObservers, notifyForkedParent(Task))
	(notifyForkedOfspring()): New.
	(instructionObservers, notifyInstruction()): New.
	(attachedObservers, notifyAttached()): New.
	(codeObservers, notifyCodeBreakpoint()): New.
	* LinuxPtraceProc.java: Update.
	
	* LinuxPtraceTask.java (removeObservers()): Copied to here from
	frysk.proc.Task.

	* LinuxPtraceProc.java (performRemoval()): Make package-private.
	(performTaskAttachCompleted(Task)): Ditto.
	(performTaskDetachCompleted(Task)): Ditto.
	(performTaskDetachCompleted(Task,Task)): Ditto.
	* LinuxPtraceTaskState.java: Update.
	* LinuxPtraceHost.java: Update.

	* LinuxPtraceProc.java (SyscallAction): Replace Task with
	LinuxPtraceTask.
	
	* LinuxPtraceTask.java (performRemoval()): Make package-private..
	(performContinue()): Ditto.
	(performAttach(boolean)): Ditto.
	(performDetach(boolean)): Ditto.
	(handleUnblock(TaskObserver)): Ditto..
	* LinuxPtraceProc.java: Update.	

	* LinuxPtraceTaskState.java: Replace Task with LinuxPtraceTask and
	Proc with LinuxPtraceProc.
	* LinuxPtraceProcState.java: Ditto.
	* LinuxPtraceProc.java: Update.
	* LinuxPtraceTask.java: Update.

	* LinuxPtraceHost.java (getSelf()): Replace sendrecSelf(). 
	
	* LinuxPtraceHost.java (requestRefreshXXX()): New.
	(sendRefresh(boolean)): Make private.
	
	* LinuxPtraceHost.java (requestCreateAttachedProc(String,String,String,String[],Attached)): New.
	(sendCreateAttachedProc(String,String,String,String[],Attached)): Delete.
	* LinuxPtraceProcState.java: Merge in deleted
	frysk.proc.TaskState.
	* LinuxPtraceProc.java: Update.

	* LinuxPtraceTaskState.java: Merge in deleted
	frysk.proc.TaskState.
	* LinuxPtraceTask.java: Update.

	* LiveProc.java: Move all state code from here ...
	* LinuxPtraceProc.java: ... to here.

	* LiveTask.java: Move all state code from here ...
	* LinuxPtraceTask.java: ... to here.

2008-01-03  Andrew Cagney  <cagney@redhat.com>

	* LiveTask.java (requestAddInstructionObserver(TaskObserver.Instruction)): New.
	(requestDeleteInstructionObserver(TaskObserver.Instruction)): New.

2008-01-02  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java: Rename LinuxHost.java.
	* LinuxPtraceProc.java: Rename LinuxProc.java.
	* LinuxPtraceTask.java: Rename LinuxTask.java.
	* LinuxPtraceProcState.java: Rename LinuxProcState.java.
	* LinuxPtraceTaskState.java: Rename LinuxTaskState.java.
	* LinuxWaitBuilder.java: Update.

	* LiveTask.java: Set newState in constructor.
	(set(TaskState)): Make package private.

	* LinuxProcState.java (initial(boolean)): Replace
	initial(Proc,boolean).
	(Detaching()): New constructor.
	* LiveProc.java (setStateFIXME(ProcState)): Delete.
	(LiveProc(Host,Proc,ProcId,ProcState)): Replace
	LiveProc(Host,Proc.ProcId).
	(LiveProc(Task,ProcId,ProcState)): Replace LiveProc(Task,ProcId).
	* LinuxProc.java (getInitialState(boolean)): Delete.

	* LinuxTask.java (LinuxTask(LiveProc,Attached)): Rename
	LinuxTask(Proc,TaskObserver.Attached).
	* LiveProc.java (handleAddObservation(TaskObservation)): Make
	package private.
	* LiveTask.java (LiveTask(LiveProc,Attached,TaskState)): Rename
	LiveTask(Proc,Attached,TaskState); call
	LiveProc.handleAddObservation.
	* LinuxHost.java: Update.
	* LinuxWaitBuilder.java: Update.

	* LiveProc.java (oldState, newState): New.
	(BreakpointAction): New.
	(InstructionAction): New.
	(SyscallAction): New.
	(getStateFIXME()): New.
	(handleAddObservation(TaskObservation)): New.
	(oldState()): New.
	(performDetach()): New.
	(performRemoval()): New.
	(performTaskAttachCompleted(Task)): New.
	(performTaskDetachCompleted(Task)): New.
	(performTaskDetachCompleted(Task,Task)): New.
	(requestAddCodeObserver(Task,TaskObservable,TaskObserver.Code,long)): New.
	(requestAddInstructionObserver(Task,TaskObservable,TaskObserver.Instruction)): New.
	(requestAddObserver(Task,TaskObservable,TaskObserver)): New.
	(requestAddSyscallObserver(Task,TaskObservable,TaskObserver)): New.
	(requestDeleteCodeObserver(Task,TaskObservable,TaskObserver.Code,long)): New.
	(requestDeleteInstructionObserver(Task,TaskObservable,TaskObserver.Instruction)): New.
	(requestDeleteObserver(Task,TaskObservable,TaskObserver)): New.
	(requestDeleteSyscallObserver(Task,TaskObservable,TaskObserver)): New.
	(requestRefresh()): New.
	(setStateFIXME(ProcState)): New.

	* TestByteBuffer.java: Update; frysk.proc.dummy.Proc renamed to
	DummyProc.

	* LiveTask.java (requestUnblock(TaskObserver)): New.
	(requestAddClonedObserver(TaskObserver.Cloned)): New.
	(requestDeleteClonedObserver(TaskObserver.Cloned)): New.
	(requestAddAttachedObserver(TaskObserver.Attached)): New.
	(requestDeleteAttachedObserver(TaskObserver.Attached)): New.
	(requestAddForkedObserver(TaskObserver.Forked)): New.
	(requestDeleteForkedObserver(TaskObserver.Forked)): New.
	(requestAddTerminatedObserver(TaskObserver.Terminated)): New.
	(requestDeleteTerminatedObserver(TaskObserver.Terminated)): New.
	(requestAddTerminatingObserver(TaskObserver.Terminating)): New.
	(requestDeleteTerminatingObserver(TaskObserver.Terminating)): New.
	(requestAddExecedObserver(TaskObserver.Execed)): New.
	(requestDeleteExecedObserver(TaskObserver.Execed)): New.
	(requestAddSyscallsObserver(TaskObserver.Syscalls)): New.
	(requestDeleteSyscallsObserver(TaskObserver.Syscalls)): New.
	(requestAddSignaledObserver(TaskObserver.Signaled)): New.
	(requestDeleteSignaledObserver(TaskObserver.Signaled)): New.
	(requestAddCodeObserver(TaskObserver.Code)): New.
	(requestDeleteCodeObserver(TaskObserver.Code)): New.

	* LiveTask.java (handleAddObservation(TaskObservation)): New.
	(handleDeleteObservation(TaskObservation)): New.
	(performContinue()): New.
	(performRemoval()): New.
	(performAttach()): New.
	(performDetach(boolean)): New.
	(newState): New.
	(oldState): New.
	(getState()): New.
	(set(TaskState)): New.
	(oldState()): New.
	(handleUnblock(TaskObserver)): New.
	(getStateFIXME()): New.

2007-12-20  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java (sendrecRegisterBuffersFIXME()): Delete.

2007-12-19  Andrew Cagney  <cagney@redhat.com>

	Bank register code moved to frysk.bank.
	* LinuxTask.java: Update.
	* PtraceRegisterBanksFactory.java: Update.

2007-12-05  Jose Flavio Aguilar Paulino <joseflavio@gmail.com>

	* PtraceRegisterBanksFactory.java: Removing PowerPC useless
	debug information.

2007-12-04  Andrew Cagney  <cagney@redhat.com>

	Merge frysk.sys.Sig into frysk.sys.Signal.
	* LinuxWaitBuilder.java: Update.
	* LinuxTask.java: Update.
	* LinuxTaskState.java: Update.

2007-12-03  Andrew Cagney  <cagney@redhat.com>

	* TestRegs.java (testFloatRegisters()): Delete.
	
	* TestRegs.java (testVectorRegisters()): Delete.

2007-11-29  Andrew Cagney  <cagney@redhat.com>

	* TestCoreRegs.java (testFloatRegisters())
	(testVectorRegisters()): New; mark as unresolved.

	* TestRegs.java: Moved from frysk.proc.TestRegs.

2007-11-27  Jose Flavio Aguilar Paulino <joseflavio@gmail.com>

	* PtraceRegisterBanksFactory.java: Putting single PowerPC ptrace
	register bank (holds all registers with different sizes, even
	floating pointer ones and vector register.

2007-11-22  Andrew Cagney  <cagney@redhat.com>

	* TestByteBuffer.java (testMemoryBufferCapacity()): Mark as
	unresolved, bug 5394.:

2007-11-22  Zhao Shujing  <pearly.zhao@oracle.com>
	
	* TestByteBuffer.java(testMemoryBufferCapacity()): New test.

2007-10-29  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxTaskState.java (sendContinue): Add logging.
	
2007-10-20  Mark Wielaard  <mwielaard@redhat.com>

	Fixes bug #5201
	* LogicalMemoryBuffer.java (poke): Allow poke when no breakpoints
	in the way.
	* TestByteBuffer.java: Enable LogicalMemoryBuffer write tests.

2007-10-17  Andrew Cagney  <cagney@redhat.com>

	* LiveHost.java: New.
	* LiveProc.java: New.
	* LiveTask.java: New.
	* LinuxHost.java: Extend LiveHost.
	* LinuxProc.java: Extend LiveProc.
	* LinuxTask.java: Extend LiveTask.

	* LinuxHost.java: Update; import frysk.proc.FindProc.

2007-10-14  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java: Update; use ISA's order().

2007-10-12  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java (sendrecRegisterBanks()): Implement.

	* PtraceRegisterBanksFactory.java: New file.

	* LinuxTask.java: Update; renamed sendrecRegisterBanks() to
	sendrecRegisterBuffersFIXME.

2007-10-02  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java (sendrecISA()): New.

2007-09-21  Andrew Cagney  <cagney@redhat.com>

	* TestByteBuffer.java: Update; LocalMemory's getVal* and getFunc*
	renamed to getData* and getCode*.

2007-09-07  Andrew Cagney  <cagney@redhat.com>

	* LinuxWaitBuilder.java (logMissing): Expand log message.

2007-09-06  Andrew Cagney  <cagney@redhat.com>

	* LinuxWaitBuilder.java (logMissing): New.
	(terminated(int,boolean,int,boolean)): Use.
	(exitEvent(pid,boolean,int,boolean): Use.
	
2007-08-15  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxTaskState.java (Stepping.handleTrappedpEvent): Always check
	steppingBreakpoint.
	(checkBreakpointStepping): New helper method.
	(handleSignaledEvent): Use checkBreakpointStepping before continuing.
	(handleStoppedEvent): Likewise.

2007-08-02  Mark Wielaard  <mwielaard@redhat.com>

	* AddressSpaceByteBuffer.java (mem): New field.
	(pokesRequest): Likewise.
	(AddressSpaceByteBuffer): Initialize mem and pokesRequest.
	(PeeksRequest.peek): New method.
	(PeeksRequest.execute): use peek().
	(PeeksRequest.request): Likewise.
	(PokesRequest): New inner class.
	(poke): New method.
	* LinuxTask.java (getRawMemory): Use AddressSpaceByteBuffer.
	* LogicalMemoryBuffer.java (poke): New methods marked as unsupported.
	* MemorySpaceByteBuffer.java: Removed.
	* RegisterSetByteBuffer.java (peek): Use System.arraycopy().
	(poke): New method.
	* TestMemorySpaceByteBuffer.java: Removed.
	* TestByteBuffer.java: Merged in TestMemorySpaceByteBuffer tests,
	made test more generic to test all possible buffers, add bulk put
	tests.

2007-07-30  Mark Wielaard  <mwielaard@redhat.com>

	* AddressSpaceByteBuffer.java (Request): Make length and offset ints.
	(peek): Likewise.
	* LinuxTask.java (sendrecMemory): Set memory order.
	* LogicalMemoryBuffer.java (order): Remove field.
	(LogicalMemoryBuffer): Don't set order.
	(peek): Make length and offset ints.
	(subBuffer): Don't pass order.
	* MemorySpaceByteBuffer.java (Request): Make length and offset ints.
	(peek): Likewise.
	* TestMemorySpaceByteBuffer.java (AsyncPeeks): Make length int.

2007-07-23  Mark Wielaard  <mwielaard@redhat.com>

	* package.html: New file describing implementation details of
	Instruction and Code observers.

2007-07-20  Mark Wielaard  <mwielaard@redhat.com>

	* AddressSpaceByteBuffer.java (addressSpace): Now protected.
	(pid): Likewise.
	(AddressSpaceByteBuffer): Likewise.
	* LinuxTask.java (getRawMemory): New method name for sendrecMemory.
	(sendrecMemory): Implement through LogicalMemoryBuffer.
	* LogicalMemoryBuffer.java: New class.
	
2007-07-18  Andrew Cagney  <cagney@redhat.com>

	* MemorySpaceByteBuffer.java: Replace StatelessFile with Mem.
	(MemorySpaceByteBuffer): Remove AddressSpace parameter.
	(PeekRequest, PeeksRequest, PokeRequest): Make static.  Add local
	pid field.
	(PeeksRequest): Always use Mem when available.
	* LinuxTask.java: Update constructor call.
	* TestMemorySpaceByteBuffer.java: Ditto.
	* TestByteBuffer.java: Ditto.

	* LinuxProc.java: Use frysk.sys.proc.Exe.get.  Validate the
	returned string, returning NULL when a problem.

	* MemorySpaceByteBuffer.java: Revert below change.
	
	* MemorySpaceByteBuffer.java: Replace StatelessFile with Mem.
	(MemorySpaceByteBuffer): Remove AddressSpace parameter.
	(PeekRequest, PeeksRequest, PokeRequest): Make static.  Add local
	pid field.
	(PeeksRequest): Always use Mem when available.

2007-07-16  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxProc.java (sendrecExe): Use File.getCanonicalPath().

2007-07-09  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxTaskState.java (wantToAttachContinue): Add
	handleAddObservation() and handleUnblock().
	
2007-07-05  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java: Replace frysk.proc.TaskEvent with
	frysk.event.Event.

2007-06-27  Mark Wielaard  <mwielaard@redhat.com>

	* Breakpoint.java (prepareStep): Don't reset pc.
	(stepDone): Only set breakpoint back when installed.

	* LinuxTaskState.java (Running.setupSteppingBreakpoint):
	New method.
	(Running.sendContine): Prepare breakpoint step when breakpoint
	is installed and about to be stepped.
	(Running.handleTrappedEvent): Call setupSteppingBreakpoint.
	(Stepping.handleTrappedEvent): Likewise.

2007-06-18  Andrew Cagney  <cagney@redhat.com>

	* Rename package frysk.proc.ptrace to frysk.proc.live.

2007-06-25  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxTask.java (sendContinue): Don't set step_send.
	(sendSyscallContinue): Likewise.
	(sendStepInstruction): Likewise.
	* LinuxTaskState.java (sendContinue): Mark package private. Return
	state based on observers and just send ptrace command.
	(blockedContinue): Mark package private.
	(Running.handleTrapped): Factor out stepping related handling.
	(Stepping): New subclass of Running which handles all stepping
	logic in handleTrappedEvent().

2007-06-22  Andrew Cagney  <cagney@redhat.com>

	* TestByteBuffer.java (AsyncModify): Make local to
	verifyAsyncModify.
	(verifyAsyncModify): Replace AsyncModify.call.  Call
	EventLoop.runPending.  Check for timeout.
	(testAsyncRegisterSet, testAsyncAddressSpace)
	(testAsyncMemorySpace): Call verifyAsyncModify.

2007-06-21  Kris Van Hees  <kris.van.hees@oracle.com>

	* TestMemorySpaceByteBuffer.java: Added test case for sync and async
	multi-byte MemorySpaceByteBuffer peek requests.  Currently uses an ugly
	trick to get around a problem in frysk.event.EventLoop to ensure that
	the event loop TID is always set correctly.

2007-06-20  Kris Van Hees  <kris.van.hees@oracle.com>

	* MemorySpaceByteBuffer.java: PeeksRequest.request(...) was not setting
	the instance variables of the PeeksRequest in the case where the code
	is not executing on the event loop thread.

2007-06-20  Chris Moller  <cmoller@redhat.com>

	* LinuxTask.java (sendrecMemory): Replaced AddressSpaceByteBuffer
	with the faster pread-based MemorySpaceByteBuffer

2007-06-20  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxTaskState.java
	(blockOrAttachContinue): Set just_started marker.
	(sendContinue): Reset just_started marker unless first step.
	(Running.handleTrapped): Check and reset just_started marker.

2007-06-19  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxTaskState.java (clonedState): No more syscallRunning and
	inSyscallRunningTraced.
	(transitionToRunningState): Use Running.sendContinue() return value.
	(attemptContinue): Likewise.
	(blockedOffspring.handleUnblock): Likewise.
	(Running.syscalltracing): Removed.
	(Running): Removed syscalltracing argument.
	(sendContinue): Return new state. Check number of syscallObservers.
	(handleSignaledEvent): Return sendContinue value.
	(handleStoppedEvent(: Likewise.
	(handleTerminatingEvent): Likewise.
	(handleExecedEvent): Simplify logic, don't check observer, but use
	sendContinue.
	(handleClonedEvent): Return sendContinue value.
	(handleForkedEvent): Likewise.
	(handleTrappedEvent): Likewise.
	(handleSyscalledEvent): Check number of syscallObservers and return
	sendContinue value.
	(syscallRunning): Removed.
	(inSyscallRunningTraced): Removed.
	(BlockedSignal.handleUnblock): Return sendContinue value.

2007-06-14  Tim Moore  <timoore@redhat.com>

	* LinuxTaskState.java: (BlockedSignal.handleUnblock): At FINEST
	logging levels print out the blocker.

2007-06-12  Nurdin Premji  <npremji@redhat.com>

	* LinuxTask.java (sendContinue): Call incrementMod() to show task has been
	modified.
	(sendStepInstruction): Ditto.
	(sendSyscallContinue): Ditto.

2007-05-25  Tim Moore  <timoore@redhat.com>

	* LinuxTaskState.java (BlockedSignal.handleTerminatedEvent): New
	method, copied from Running state.

2007-05-22  Chris Moller  <moller@mollerware.com>

	* MemorySpaceByteBuffer.java: Provides a new class that is a plug-in
	replacement for AddressSpaceByteBuffer except that it attempts to
	pread() /proc/<pid>/mem (via the StatelessFile class) when doing
	multi-word peeks.  If that attempt fails, it falls back on
	multiple peeks.  All other operations, including single-word
	peeks, are identical to those in AddressSpaceByteBuffer.
	* TestByteBuffer.java: Adds tests for MemorySpaceByteBuffer.  Also
	changes the strategy for the verifySlice(...) method to use
	multi-word peeks.  This has the effect of using the pread() stuff
	for MemorySpaceByteBuffer and pushing the peek-loop downstream for
	AddressSpaceByteBuffer. 

2007-05-19  Andrew Cagney  <cagney@redhat.com>

	* LinuxTaskState.java (handleAttachedTerminated, detached)
	(attaching, Attached, StartMainTask, StartClonedTask, Running)
	(running, syscallRunning, inSyscallRunning)
	(inSyscallRunningTraced, detaching, BlockedSignal,
	(blockedContinue, SyscallBlockedInSyscall)
	(syscallBlockedInSyscallContinue, blockedInExecSyscall)
	(disappeared, getDestroyed, destroyed): Move to here from
	frysk.proc.LinuxPtraceTaskState.

2007-05-18  Andrew Cagney  <cagney@redhat.com>

	* LinuxProcState.java: Move to here from
	frysk.proc.LinuxPtraceProcState.
	* LinuxProc.java: Update.

	* LinuxTask.java (sendContinue, sendStepInstruction, sendStop)
	(sendSetOptions, sendAttach, sendDetach, sendSyscallContinue)
	(startTracingSyscalls, stopTracingSyscalls): Delete.

2007-05-17  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java (ProcChanges, sendRefresh)
	(sendCreateAttachedProc, sendrecSelf, sendGetProc): Move to here
	from frysk.proc.LinuxPtraceHost.

	* LinuxProc.java (sendrecCommand, getStat, getInitialState)
	(sendRefresh): Move to here from frysk.proc.LinuxPtraceProc.

	* LinuxTask.java (sendContinue, sendSyscallContinue)
	(sendStepInstruction, sendStop, sendSetOptions, sendAttach)
	(sendDetach, startTracingSyscalls, stopTracingSyscalls): Move to
	here from frysk.proc.LinuxPtraceTask.

2007-05-16  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java (sendrecAuxv, sendrecMaps, sendrecCmdLine)
	(sendrecGID, sendrecUID, sendrecExe, sendrecIsa): Move to here
	from frysk.proc.LinuxPtraceProc.

	* LinuxTask.java (sendrecRegisterBanks, sendrecMemory)
	(sendrecIsa): Move to here from frysk.proc.LinuxPtraceTask.

2007-05-15  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java: Add LinuxWaitBuilder to event-loop.
	* LinuxWaitBuilder.java: Moved to here from
	frysk.proc.LinuxPtraceWaitBuilder.
	* LinuxTask.java (processExecedEvent, processTerminatedEvent)
	(processSyscalledEvent, processDisappearedEvent)
	(processTerminatingEvent, processSignaledEvent)
	(processTrappedEvent, processStoppedEvent, processForkedEvent)
	(processClonedEvent): Move to here in from frysk.proc.Task.

	* LinuxProc.java: New file.

2007-05-14  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java: New file.
	* LinuxTaskState.java: New file.	

	* LinuxHost.java: New file.

2007-05-07  Andrew Cagney  <cagney@redhat.com>

	* TestByteBuffer.java: Rename .memoryByteBuffer to
	.addressSpaceByteBuffer.

2007-05-02  Andrew Cagney  <cagney@redhat.com>

	* AddressSpaceByteBuffer.java: Eliminate use of
	frysk.sys.PtraceServer by using frysk.sys.Ptrace.AddressSpace
	.peek and .poke methods.
	* RegisterSetByteBuffer.java: Ditto using
	frysk.sys.Ptrace.RegisterSet.

2007-04-19  Andrew Cagney  <cagney@redhat.com>

	* TestByteBuffer.java (memoryByteBuffer, registerByteBuffer): Add.
	(setUp): Set.  For registerByteBuffer, only when REGS is valid.
	(verifySlice): New.
	(testSliceAddressSpace, testSliceRegisterSet): Use verifySlice.
	(verifyModify, testModifyRegisterSet, testModifyAddressSpace): New.
	(AsyncModify, testAsyncRegisterSet, testAsyncAddressSpace): New.
	* RegisterSetByteBuffer.java (GetRegs.execute, SetRegs.execute):
	Use the PtraceServer.
	(GetRegs.request, SetRegs.request): Call execute.

2007-04-18  Andrew Cagney  <cagney@redhat.com>

	* AddressSpaceByteBuffer.java (PeekRquest, PokeRequest)
	(PeeksRequest): New classes.  Use to route peek/poke requests
	through the event-loop thread.
	* RegisterSetByteBuffer.java (GetRegs, SetRegs): Ditto.
	
2007-04-15  Andrew Cagney  <cagney@redhat.com>

	* TestByteBuffer.java: New file.
	* RegisterSetByteBuffer.java (subBuffer): Add.
	* AddressSpaceByteBuffer.java (subBuffer): Ditto.

	* AddressSpaceByteBuffer.java (peek(long,byte[],long,long): Add.

2007-04-13  Andrew Cagney  <cagney@redhat.com>

	* AddressSpaceByteBuffer.java: New.
	* RegisterSetByteBuffer.java: New.

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
