public inbox for frysk-cvs@sourceware.org
help / color / mirror / Atom feed
* [SCM]  master: add info {vector|float|general}-regs subcommands.
@ 2008-01-10 16:05 pmuldoon
  0 siblings, 0 replies; only message in thread
From: pmuldoon @ 2008-01-10 16:05 UTC (permalink / raw)
  To: frysk-cvs

The branch, master has been updated
       via  1456b388ea0d5e4a96e53de9150bf857c7c2b899 (commit)
      from  1e04df91a1639770d9ecb8d9f5141752f4c0ba4b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit 1456b388ea0d5e4a96e53de9150bf857c7c2b899
Author: Phil Muldoon <pmuldoon@redhat.com>
Date:   Thu Jan 10 16:04:51 2008 +0000

    add info {vector|float|general}-regs subcommands.
    
    2008-01-10  Phil Muldoon  <pmuldoon@redhat.com>
    
    	* TestRegs.java (testRegsCommand): Add general-regs
    	* RegsCommand.java: (RegsCommand): New constructor.
    	(interpret): Account for new constructor setting register
    	group.
    	* InfoCommand.java (InfoCommand): Add specific registers
    	group names.
    
    	* AuxvCommand.java (interpret): Do not println, instead
    	flush output.

-----------------------------------------------------------------------

Summary of changes:
 frysk-core/frysk/hpd/ChangeLog        |    7 +++++++
 frysk-core/frysk/hpd/InfoCommand.java |    4 +++-
 frysk-core/frysk/hpd/RegsCommand.java |   21 +++++++++++++++++++--
 frysk-core/frysk/hpd/TestRegs.java    |    2 +-
 4 files changed, 30 insertions(+), 4 deletions(-)

First 500 lines of diff:
diff --git a/frysk-core/frysk/hpd/ChangeLog b/frysk-core/frysk/hpd/ChangeLog
index e36333a..6cc7e26 100644
--- a/frysk-core/frysk/hpd/ChangeLog
+++ b/frysk-core/frysk/hpd/ChangeLog
@@ -1,5 +1,12 @@
 2008-01-10  Phil Muldoon  <pmuldoon@redhat.com>
 
+	* TestRegs.java (testRegsCommand): Add general-regs
+	* RegsCommand.java: (RegsCommand): New constructor.
+	(interpret): Account for new constructor setting register
+	group.
+	* InfoCommand.java (InfoCommand): Add specific registers
+	group names.
+	
 	* AuxvCommand.java (interpret): Do not println, instead 
 	flush output.
 	
diff --git a/frysk-core/frysk/hpd/InfoCommand.java b/frysk-core/frysk/hpd/InfoCommand.java
index df3b083..13a5511 100644
--- a/frysk-core/frysk/hpd/InfoCommand.java
+++ b/frysk-core/frysk/hpd/InfoCommand.java
@@ -46,9 +46,11 @@ public class InfoCommand extends MultiLevelCommand {
 	super("info command", "info <subcommand>", 
 	      "The info command displays useful information about " +
 	      "various system and process level systems.");
-    	add(new RegsCommand(),"regs");
     	add(new DebuginfoCommand(),"debuginfo");
     	add(new MapsCommand(),"maps");
     	add(new AuxvCommand(),"auxv");
+    	add(new RegsCommand("vector"), "vector-regs");
+    	add(new RegsCommand("float"), "float-regs");
+    	add(new RegsCommand("regs"), "general-regs");
     }
 }
diff --git a/frysk-core/frysk/hpd/RegsCommand.java b/frysk-core/frysk/hpd/RegsCommand.java
index 76accb0..6f512e9 100644
--- a/frysk-core/frysk/hpd/RegsCommand.java
+++ b/frysk-core/frysk/hpd/RegsCommand.java
@@ -50,13 +50,24 @@ import java.util.List;
 
 public class RegsCommand extends ParameterizedCommand {
 
+    
+    String group = "";
+    
     public RegsCommand() {
 	super("print registers", "regs group", "print out "
 	      + "registers in the given group, general registers "
 	      + "printed by default.");
     }
 
+    public RegsCommand(String groupname) {
+	super("print registers", "regs group", "print out "
+	      + "registers in the given group, general registers "
+	      + "printed by default.");
+	this.group = groupname;
+    }
+
     void interpret(CLI cli, Input cmd, Object options) {
+	String groupName = "";
 	PTSet ptset = cli.getCommandPTSet(cmd);
 	Iterator taskDataIter = ptset.getTaskData();
 	while (taskDataIter.hasNext()) {
@@ -64,8 +75,14 @@ public class RegsCommand extends ParameterizedCommand {
 	    ISA isa = td.getTask().getISA();
 	    Registers regs = RegistersFactory.getRegisters(isa);
 	    RegisterGroup selectedGroup = regs.getGeneralRegisterGroup();
-	    if (cmd.size() > 0) {
-		String groupName = cmd.parameter(0);
+	    
+	    if (!this.group.equals(""))
+		groupName = this.group;
+	    
+	    if (cmd.size() > 0) 
+		groupName = cmd.parameter(0);
+		
+	    if (!groupName.equals("")) {
 		selectedGroup = regs.getGroup(groupName);
 		if (selectedGroup == null) {
 		    StringBuffer b = new StringBuffer();
diff --git a/frysk-core/frysk/hpd/TestRegs.java b/frysk-core/frysk/hpd/TestRegs.java
index 46add1d..ad76aad 100644
--- a/frysk-core/frysk/hpd/TestRegs.java
+++ b/frysk-core/frysk/hpd/TestRegs.java
@@ -51,7 +51,7 @@ public class TestRegs extends TestLib {
 	File exe = Config.getPkgLibFile("hpd-c");
 	ISA isa = ElfMap.getISA(exe);
 
-	String[] commandSet = {"regs\n", "info regs\n"};
+	String[] commandSet = {"regs\n", "info general-regs\n"};
 	// Regs
 	for (int i=0; i < commandSet.length; i++) {
 	    e.send(commandSet[i]);


hooks/post-receive
--
frysk system monitor/debugger


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-01-10 16:05 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-01-10 16:05 [SCM] master: add info {vector|float|general}-regs subcommands pmuldoon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).