This is the mail archive of the frysk-cvs@sources.redhat.com mailing list for the frysk project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[SCM] master: Drop symbol parameter from Arch interfaces


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 <pmachata@redhat.com>
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  <pmachata@redhat.com>
+	
+	* 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  <cagney@redhat.com>
 
 	* 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]