public inbox for frysk-cvs@sourceware.org help / color / mirror / Atom feed
From: cagney@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: Almost eliminate getRegisterBuffersFIXME(). Date: Thu, 20 Dec 2007 18:21:00 -0000 [thread overview] Message-ID: <20071220182140.29158.qmail@sourceware.org> (raw) The branch, master has been updated via 79fb19acf507102afc8d2bd18cc09da463f96c23 (commit) via 6941f68718c93d2d309421f6550c44a0a619388d (commit) from 92674d4e204276b5cba183da814aa57fa71d4423 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 79fb19acf507102afc8d2bd18cc09da463f96c23 Author: Andrew Cagney <cagney@redhat.com> Date: Thu Dec 20 13:17:26 2007 -0500 Almost eliminate getRegisterBuffersFIXME(). frysk-core/frysk/bank/ChangeLog 2007-12-20 Andrew Cagney <cagney@redhat.com> * RegisterBanks.java (getBanksFIXME()): New. frysk-core/frysk/proc/ChangeLog 2007-12-20 Andrew Cagney <cagney@redhat.com> * Task.java (sendrecRegisterBuffersFIXME()): Delete. (registerBuffers): Delete. (getRegisterBuffersFIXME()): Update. frysk-core/frysk/proc/dead/ChangeLog 2007-12-20 Andrew Cagney <cagney@redhat.com> * LinuxTask.java (sendrecRegisterBuffersFIXME()): Delete. * LinuxExeTask.java (sendrecRegisterBuffersFIXME()): Delete. (sendrecRegisterBanks()): Update. frysk-core/frysk/proc/dummy/ChangeLog 2007-12-20 Andrew Cagney <cagney@redhat.com> * Task.java (sendrecRegisterBuffersFIXME()): Delete. frysk-core/frysk/proc/live/ChangeLog 2007-12-20 Andrew Cagney <cagney@redhat.com> * LinuxTask.java (sendrecRegisterBuffersFIXME()): Delete. commit 6941f68718c93d2d309421f6550c44a0a619388d Author: Andrew Cagney <cagney@redhat.com> Date: Thu Dec 20 13:01:02 2007 -0500 Delete unused getBigIntegerRegisterFIXME(String). frysk-core/frysk/proc/ChangeLog 2007-12-20 Andrew Cagney <cagney@redhat.com> * Task.java (getBigIntegerRegisterFIXME(String)): Delete. ----------------------------------------------------------------------- Summary of changes: frysk-core/frysk/bank/ChangeLog | 2 + frysk-core/frysk/bank/RegisterBanks.java | 4 ++ frysk-core/frysk/proc/ChangeLog | 6 +++ frysk-core/frysk/proc/Task.java | 49 +++++--------------------- frysk-core/frysk/proc/dead/ChangeLog | 4 ++ frysk-core/frysk/proc/dead/LinuxExeTask.java | 18 +-------- frysk-core/frysk/proc/dead/LinuxTask.java | 7 ---- frysk-core/frysk/proc/dummy/ChangeLog | 4 ++ frysk-core/frysk/proc/dummy/Task.java | 4 -- frysk-core/frysk/proc/live/ChangeLog | 4 ++ frysk-core/frysk/proc/live/LinuxTask.java | 8 ---- 11 files changed, 35 insertions(+), 75 deletions(-) First 500 lines of diff: diff --git a/frysk-core/frysk/bank/ChangeLog b/frysk-core/frysk/bank/ChangeLog index 563202e..a9d6c8f 100644 --- a/frysk-core/frysk/bank/ChangeLog +++ b/frysk-core/frysk/bank/ChangeLog @@ -1,5 +1,7 @@ 2007-12-20 Andrew Cagney <cagney@redhat.com> + * RegisterBanks.java (getBanksFIXME()): New. + * RegisterMap.java: New file. * BankRegisterMap.java: Extend RegisterMap.java. * BankArrayRegisterMap.java: Ditto. diff --git a/frysk-core/frysk/bank/RegisterBanks.java b/frysk-core/frysk/bank/RegisterBanks.java index 61e80e6..f23e61c 100644 --- a/frysk-core/frysk/bank/RegisterBanks.java +++ b/frysk-core/frysk/bank/RegisterBanks.java @@ -112,4 +112,8 @@ public class RegisterBanks { bank.get(offset + bankRegister.getOffset(), bytes, start, (int)size); } + + public ByteBuffer[] getBanksFIXME() { + return banks; + } } diff --git a/frysk-core/frysk/proc/ChangeLog b/frysk-core/frysk/proc/ChangeLog index 30067a8..7ef1b3a 100644 --- a/frysk-core/frysk/proc/ChangeLog +++ b/frysk-core/frysk/proc/ChangeLog @@ -1,5 +1,11 @@ 2007-12-20 Andrew Cagney <cagney@redhat.com> + * Task.java (sendrecRegisterBuffersFIXME()): Delete. + (registerBuffers): Delete. + (getRegisterBuffersFIXME()): Update. + + * Task.java (getBigIntegerRegisterFIXME(String)): Delete. + * LinuxPPC32On64.java (getRegisterByName()): Delete. BankRegister renamed to BankArrayRegister. diff --git a/frysk-core/frysk/proc/Task.java b/frysk-core/frysk/proc/Task.java index 4043997..f22b1b0 100644 --- a/frysk-core/frysk/proc/Task.java +++ b/frysk-core/frysk/proc/Task.java @@ -51,10 +51,7 @@ import java.util.Observer; import java.util.Observable; import frysk.isa.Register; import frysk.isa.ISA; -import java.math.BigInteger; -import inua.eio.ByteOrder; import frysk.bank.RegisterBanks; -import frysk.bank.BankArrayRegister; public abstract class Task { @@ -1024,27 +1021,6 @@ public abstract class Task public LinkedList pendingObservations = new LinkedList(); /** - * Return the underlying bank register's value as a BigInteger. - * This is being used to read large register but for that there - * the more efficient access(Register) available for that. - */ - public BigInteger getBigIntegerRegisterFIXME(String name) { - BankArrayRegister bankRegister = getRegisterBanks().getBankArrayRegister(name); - byte[] bytes = new byte[bankRegister.getLength()]; - ByteBuffer b = getRegisterBuffersFIXME()[bankRegister.getBank()]; - b.get(bankRegister.getOffset(), bytes, 0, bankRegister.getLength()); - if (getISA().order() == ByteOrder.LITTLE_ENDIAN) { - for (int left = 0; left < bytes.length / 2; left++) { - int right = bytes.length - 1 - left; - byte temp = bytes[left]; - bytes[left] = bytes[right]; - bytes[right] = temp; - } - } - return new BigInteger(bytes); - } - - /** * Return the Task's Register as a long. */ public long getRegister(Register register) { @@ -1074,21 +1050,15 @@ public abstract class Task return registerBanks; } - private ByteBuffer[] registerBuffers; - protected abstract ByteBuffer[] sendrecRegisterBuffersFIXME(); - /** - * Return the machine's register banks as an array. - * - * XXX: This is being replaced by "getRegisterBanks()" that returns - * a class that abstracts the ByteArray[] + BankArrayRegister - * combination. - */ - public ByteBuffer[] getRegisterBuffersFIXME () - { - if (registerBuffers == null) - registerBuffers = sendrecRegisterBuffersFIXME(); - return registerBuffers; - } + /** + * Return the machine's register banks as an array of ByteBuffers. + * + * XXX: This is wrong. Clients cannot assume internal register + * layout. + */ + public ByteBuffer[] getRegisterBuffersFIXME () { + return getRegisterBanks().getBanksFIXME(); + } /** * The process has transitioned to the detached. @@ -1132,7 +1102,6 @@ public abstract class Task public void clearIsa() { isa = null; memory = null; - registerBuffers = null; registerBanks = null; currentISA = null; } diff --git a/frysk-core/frysk/proc/dead/ChangeLog b/frysk-core/frysk/proc/dead/ChangeLog index 79ea65b..3761395 100644 --- a/frysk-core/frysk/proc/dead/ChangeLog +++ b/frysk-core/frysk/proc/dead/ChangeLog @@ -1,5 +1,9 @@ 2007-12-20 Andrew Cagney <cagney@redhat.com> + * LinuxTask.java (sendrecRegisterBuffersFIXME()): Delete. + * LinuxExeTask.java (sendrecRegisterBuffersFIXME()): Delete. + (sendrecRegisterBanks()): Update. + * CorefileRegisterBanksFactory.java: Update; RegisterBankArrayMap renamed to BankArrayRegisterMap. diff --git a/frysk-core/frysk/proc/dead/LinuxExeTask.java b/frysk-core/frysk/proc/dead/LinuxExeTask.java index 9b3f6de..03842e9 100644 --- a/frysk-core/frysk/proc/dead/LinuxExeTask.java +++ b/frysk-core/frysk/proc/dead/LinuxExeTask.java @@ -55,14 +55,10 @@ public class LinuxExeTask extends DeadTask LinuxExeProc proc = null; TaskId id = null; - // Holds all the register values, setup once in the constructor. - private final ByteBuffer[] bankBuffers; - protected LinuxExeTask(LinuxExeProc proc, TaskId id, TaskState state) { super(proc, id, state); this.proc = proc; this.id = id; - this.bankBuffers = sendrecRegisterBuffersFIXME(); // Fake PC. XXX should be done in Proc instead of creating Elf // object in the Task itself. @@ -99,26 +95,16 @@ public class LinuxExeTask extends DeadTask return this.proc.sendrecMemory(); } - /** - * sendrecRegisterBuffers fakes out what the register values are at this point - * as there is no info to be had at this moment in time. - */ - protected ByteBuffer[] sendrecRegisterBuffersFIXME() { + protected RegisterBanks sendrecRegisterBanks() { ByteBuffer[] bankBuffers = new ByteBuffer[4]; - - // Create an empty page + // Create an empty page byte[] emptyBuffer = new byte[4096]; for (int i = 0; i < emptyBuffer.length; i++) emptyBuffer[i] = 0; - bankBuffers[0] = new ArrayByteBuffer(emptyBuffer); bankBuffers[1] = new ArrayByteBuffer(emptyBuffer); bankBuffers[2] = new ArrayByteBuffer(emptyBuffer); bankBuffers[3] = new ArrayByteBuffer(emptyBuffer); - return bankBuffers; - } - - protected RegisterBanks sendrecRegisterBanks() { return CorefileRegisterBanksFactory.create (getISA(), bankBuffers); } diff --git a/frysk-core/frysk/proc/dead/LinuxTask.java b/frysk-core/frysk/proc/dead/LinuxTask.java index a514cb3..66660a6 100644 --- a/frysk-core/frysk/proc/dead/LinuxTask.java +++ b/frysk-core/frysk/proc/dead/LinuxTask.java @@ -125,13 +125,6 @@ public class LinuxTask extends DeadTask { } - protected ByteBuffer[] sendrecRegisterBuffersFIXME() { - // XXX: Have to return this here as this method is still used in - // tests. Cannot convert tests until Task,getRegisterBanks() is - // made public. - return simulateRegisterBanks(); - } - /** * Create a new unattached Task. */ diff --git a/frysk-core/frysk/proc/dummy/ChangeLog b/frysk-core/frysk/proc/dummy/ChangeLog index 35349ad..3dd971b 100644 --- a/frysk-core/frysk/proc/dummy/ChangeLog +++ b/frysk-core/frysk/proc/dummy/ChangeLog @@ -1,3 +1,7 @@ +2007-12-20 Andrew Cagney <cagney@redhat.com> + + * Task.java (sendrecRegisterBuffersFIXME()): Delete. + 2007-10-17 Andrew Cagney <cagney@redhat.com> * Host.java: Update; import frysk.proc.FindProc. diff --git a/frysk-core/frysk/proc/dummy/Task.java b/frysk-core/frysk/proc/dummy/Task.java index 5737179..7937ba4 100644 --- a/frysk-core/frysk/proc/dummy/Task.java +++ b/frysk-core/frysk/proc/dummy/Task.java @@ -68,10 +68,6 @@ public class Task { return null; } - protected ByteBuffer[] sendrecRegisterBuffersFIXME () - { - return null; - } protected RegisterBanks sendrecRegisterBanks() { return null; diff --git a/frysk-core/frysk/proc/live/ChangeLog b/frysk-core/frysk/proc/live/ChangeLog index a4abbc4..f65c884 100644 --- a/frysk-core/frysk/proc/live/ChangeLog +++ b/frysk-core/frysk/proc/live/ChangeLog @@ -1,3 +1,7 @@ +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. diff --git a/frysk-core/frysk/proc/live/LinuxTask.java b/frysk-core/frysk/proc/live/LinuxTask.java index 665b9ac..92b147a 100644 --- a/frysk-core/frysk/proc/live/LinuxTask.java +++ b/frysk-core/frysk/proc/live/LinuxTask.java @@ -115,14 +115,6 @@ public class LinuxTask extends LiveTask { return memory; } - /** - * Return the ISA's register-bank byte-buffers. - */ - protected ByteBuffer[] sendrecRegisterBuffersFIXME () - { - return getIsa().getRegisterBankBuffers(getTid()); - } - protected RegisterBanks sendrecRegisterBanks() { return PtraceRegisterBanksFactory.create(getISA(), getTid()); } hooks/post-receive -- frysk system monitor/debugger
reply other threads:[~2007-12-20 18:21 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20071220182140.29158.qmail@sourceware.org \ --to=cagney@sourceware.org \ --cc=frysk-cvs@sourceware.org \ --cc=frysk@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).