From: Andrew Cagney <cagney@redhat.com>
To: Phil Muldoon <pmuldoon@redhat.com>
Cc: frysk@sourceware.org
Subject: Re: [SCM] master: Add frysk.rsl loggin.
Date: Wed, 13 Feb 2008 16:48:00 -0000 [thread overview]
Message-ID: <47B31EEE.6010400@redhat.com> (raw)
In-Reply-To: <47B2C3D7.7080702@redhat.com>
Phil Muldoon wrote:
> Andrew Cagney wrote:
>> Phil,
>>
>> There's a less leaky way to write this (if a specific sequence is
>> missing in Log, just add it).
>
> Ok on the adding part, this will not work. Will add later:
>
> finest.log(this,
> "peek'ed() 0x", ((long) (buffer[0] & 0xff)),
> " from address 0x", address, " offset 0x",
> offset,
> " from file: " , metaLine.name);
>
> gets:
>
> gcj -C -fsource=1.4 -d classes -g -O -g -classpath
> ../../frysk/frysk-core:.:../frysk-sys/frysk-sys.jar:../frysk-imports/jline.jar:../frysk-imports/antlr.jar:../frysk-imports/junit.jar:../frysk-imports/getopt.jar:../frysk-imports/jdom.jar:../frysk-imports/cdtparser.jar
> -Wextraneous-semicolon \
> @./files-java.list \
> 2>&1 | tee frysk-core.log
> ../../frysk/frysk-core/frysk/proc/dead/CorefileByteBuffer.java:128:
> error: The method log(Object, String, Object, String, long, String,
> long, String, int, String) in the type Log is not applicable for the
> arguments (CorefileByteBuffer, String, long, String, long, String,
> long, String, String)
> finest.log(this,
Ah, given:
(CorefileByteBuffer, String, long, String, long, String, long, String,
String)
you'll want to add a method like:
public void log(Object self, String p1, long p2, String p3, long p4,
String p5, Object p6) {
if (!loggging)
return;
prefix(self); print(p1); print(p2); print(p3); print(p4);
print(p5); print(p6); suffix();
}
to the growing list; they get added on-demand :-). Notice the general
form. The parameters alternate between String <text> and Object / int /
long / ... <parameter>.
> But what I really want is a hex string, converted by long. I do not
> want to convert every single peek() call from decimal to hex in my
> head. I guess I could do, Object, String, String, String, String ...
> and convert each Long in the log call, but the end log result would be
> just as messy as concating strings together.
Right; that is why a "long" parameter is always printed in hex, and an
integer parameter in decimal. Hence, instead of:
"address 0x" + Long.toHexString(address) + " ...."
(which allocates at least two objects - Integer.toHexString() creates a
String and "+" causes a StringBuffer to be created) try the simpler:
"address", address, "..."
It will most likely print what you want. If you've an integer and want
it in hex; cast it to a long vis:
"length", (long)length
Andrew
prev parent reply other threads:[~2008-02-13 16:48 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20080212200324.2256.qmail@sourceware.org>
2008-02-12 21:33 ` Andrew Cagney
2008-02-13 10:18 ` Phil Muldoon
2008-02-13 16:48 ` Andrew Cagney [this message]
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=47B31EEE.6010400@redhat.com \
--to=cagney@redhat.com \
--cc=frysk@sourceware.org \
--cc=pmuldoon@redhat.com \
/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: link
Be 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).