From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30313 invoked by alias); 1 Apr 2008 16:57:53 -0000 Received: (qmail 30287 invoked by uid 9697); 1 Apr 2008 16:57:53 -0000 Date: Tue, 01 Apr 2008 16:57:00 -0000 Message-ID: <20080401165753.30272.qmail@sourceware.org> From: pmachata@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: Drop symbol parameter from Arch interfaces X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 89357dc08ace444dcd728b44da5985eb6b5f2406 X-Git-Newrev: 5905c69d5cb178a73eb2d130c448eb0c2b91fba4 Mailing-List: contact frysk-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-cvs-owner@sourceware.org Reply-To: frysk@sourceware.org X-SW-Source: 2008-q2/txt/msg00006.txt.bz2 The branch, master has been updated via 5905c69d5cb178a73eb2d130c448eb0c2b91fba4 (commit) from 89357dc08ace444dcd728b44da5985eb6b5f2406 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 5905c69d5cb178a73eb2d130c448eb0c2b91fba4 Author: Petr Machata Date: Fri Mar 28 19:31:13 2008 +0100 Drop symbol parameter from Arch interfaces * (these are likely to go away in any case, but for now let's consider it a cleanup) ----------------------------------------------------------------------- Summary of changes: frysk-core/frysk/ftrace/Arch.java | 6 +++--- frysk-core/frysk/ftrace/ChangeLog | 7 +++++++ frysk-core/frysk/ftrace/IA32Arch.java | 6 +++--- frysk-core/frysk/ftrace/Ltrace.java | 6 +++--- frysk-core/frysk/ftrace/X8664Arch.java | 10 +++++----- 5 files changed, 21 insertions(+), 14 deletions(-) First 500 lines of diff: diff --git a/frysk-core/frysk/ftrace/Arch.java b/frysk-core/frysk/ftrace/Arch.java index f6bf539..6b27d57 100644 --- a/frysk-core/frysk/ftrace/Arch.java +++ b/frysk-core/frysk/ftrace/Arch.java @@ -49,15 +49,15 @@ public interface Arch /** * Get a return address of current function call. */ - long getReturnAddress(Task task, Symbol symbol); + long getReturnAddress(Task task); /** * Construct an array of function call arguments. */ - Object[] getCallArguments(Task task, Symbol symbol); + Object[] getCallArguments(Task task); /** * Construct a return value of a function call. */ - Object getReturnValue(Task task, Symbol symbol); + Object getReturnValue(Task task); } diff --git a/frysk-core/frysk/ftrace/ChangeLog b/frysk-core/frysk/ftrace/ChangeLog index 5f964f1..7f86c59 100644 --- a/frysk-core/frysk/ftrace/ChangeLog +++ b/frysk-core/frysk/ftrace/ChangeLog @@ -2,6 +2,13 @@ * Ftrace.java (trace(Proc)): Replace trace(String[]). +2008-03-28 Petr Machata + + * Arch.java (getReturnAddress): Drop "symbol" parameter. + * X8664Arch.java (getReturnAddress): Likewise. + * IA32Arch.java (getReturnAddress): Likewise. + * Ltrace.java (updateHit): Adjust to above. + 2008-03-20 Andrew Cagney * Ftrace.java: Use ProcTasksAction and ProcTasksObserver. diff --git a/frysk-core/frysk/ftrace/IA32Arch.java b/frysk-core/frysk/ftrace/IA32Arch.java index ff15475..6a0ffb5 100644 --- a/frysk-core/frysk/ftrace/IA32Arch.java +++ b/frysk-core/frysk/ftrace/IA32Arch.java @@ -52,14 +52,14 @@ public class IA32Arch implements Arch { private IA32Arch() { } - public long getReturnAddress(Task task, Symbol symbol) { + public long getReturnAddress(Task task) { ByteBuffer memBuf = task.getMemory(); long esp = task.getRegister(IA32Registers.ESP); long retAddr = memBuf.getUInt(esp); return retAddr; } - public Object[] getCallArguments(Task task, Symbol symbol) { + public Object[] getCallArguments(Task task) { ByteBuffer memBuf = task.getMemory(); long esp = task.getRegister(IA32Registers.ESP); esp += 4; @@ -91,7 +91,7 @@ public class IA32Arch implements Arch { //} } - public Object getReturnValue(Task task, Symbol symbol) { + public Object getReturnValue(Task task) { return new Long(task.getRegister(IA32Registers.EAX)); } } diff --git a/frysk-core/frysk/ftrace/Ltrace.java b/frysk-core/frysk/ftrace/Ltrace.java index 121a021..a6a4b70 100644 --- a/frysk-core/frysk/ftrace/Ltrace.java +++ b/frysk-core/frysk/ftrace/Ltrace.java @@ -152,7 +152,7 @@ public class Ltrace finest.log("Fetching retval."); final Symbol symbol = leave.tpi.tracePoint.symbol; - final Object ret = arch.getReturnValue(task, symbol); + final Object ret = arch.getReturnValue(task); eachObserver(leave.observers, new ObserverIterator() { public Action action(FunctionObserver o) { return o.funcallLeave(task, symbol, ret); @@ -219,7 +219,7 @@ public class Ltrace if (address != tpi.tracePoint.symbol.getParent().getEntryPoint()) { // Install breakpoint to return address. - long retAddr = arch.getReturnAddress(task, tpi.tracePoint.symbol); + long retAddr = arch.getReturnAddress(task); fine.log("It's enter tracepoint, return address 0x" + Long.toHexString(retAddr) + "."); Long retAddrL = new Long(retAddr); @@ -235,7 +235,7 @@ public class Ltrace fine.log("It's _start, no return breakpoint established..."); finest.log("Building arglist."); - final Object[] args = arch.getCallArguments(task, tpi.tracePoint.symbol); + final Object[] args = arch.getCallArguments(task); eachObserver(observers, new ObserverIterator() { public Action action(FunctionObserver o) { return o.funcallEnter(task, tpi.tracePoint.symbol, args); diff --git a/frysk-core/frysk/ftrace/X8664Arch.java b/frysk-core/frysk/ftrace/X8664Arch.java index b9b7895..32cd1d8 100644 --- a/frysk-core/frysk/ftrace/X8664Arch.java +++ b/frysk-core/frysk/ftrace/X8664Arch.java @@ -53,14 +53,14 @@ public class X8664Arch implements Arch { private X8664Arch() { } - public long getReturnAddress(Task task, Symbol symbol) { + public long getReturnAddress(Task task) { ByteBuffer memBuf = task.getMemory(); long rsp = task.getRegister(X8664Registers.RSP); long retAddr = memBuf.getLong(rsp); return retAddr; } - private Object getCallArgument(Task task, Symbol symbol, int i) { + private Object getCallArgument(Task task, int i) { Register reg; ByteBuffer memBuf = task.getMemory(); @@ -79,14 +79,14 @@ public class X8664Arch implements Arch { return new Long(task.getRegister(reg)); } - public Object[] getCallArguments(Task task, Symbol symbol) { + public Object[] getCallArguments(Task task) { Object[] ret = new Object[6]; for (int i = 0; i < ret.length; ++i) - ret[i] = getCallArgument(task, symbol, i); + ret[i] = getCallArgument(task, i); return ret; } - public Object getReturnValue(Task task, Symbol symbol) { + public Object getReturnValue(Task task) { return new Long(task.getRegister(X8664Registers.RAX)); } } hooks/post-receive -- frysk system monitor/debugger