Re: Xcode 3.0 and Java Code Completion
Re: Xcode 3.0 and Java Code Completion
- Subject: Re: Xcode 3.0 and Java Code Completion
- From: Rick Altherr <email@hidden>
- Date: Mon, 7 Apr 2008 15:21:12 -0700
On Apr 7, 2008, at 3:02 PM, Ladd Van Tol wrote:
On Apr 7, 2008, at 12:50 PM, Rick Altherr wrote:
These 3 aren't actually related to Xcode at all. They are
specifically about Shark for Java.
Well, Xcode in the sense of "Xcode, the collection of developer
tools", rather than Xcode in the sense of "Xcode.app"
Well, Xcode is Xcode.app. The developer tools are, well, the
collection of developer tools.
4430362 - CHUD 4.3.2 doesn't like being unable to find java source
4430338 - CHUD 4.3.2 doesn't show line-level samples for Java
inlined methods
4383469 - CHUD 4.2.3 can't automatically locate Java source files
The 1st is a minor UI quirk that has no functional impact. The
other 2 have workarounds and stem mainly from the interface that
the JVM provides for inspection of the VM's state. Many of the
things that were needed to improve Shark for Java were delivered
with Java 5 and Shark for Java in CHUD 4.5.0 was updated to use
many of them.
I'll have to try it again with CHUD 4.5.0 the next time I'm doing
Java work. It seems to me that it is somewhat hard to work around
the line-level samples problem. The last time we talked about this,
your comment was:
"I don't know of any way to disable the inlining in java so I can't
really make a recommendation on how to work around that until better
support for inlining is integrated into Shark. Please file a bug on
this."
- Ladd
And this is still correct. The JVM can do inlining when JITing a
method. The JVM will tell us which method each frame of the call
stack belongs to. Assuming that the VM provides us with information
informing us that multiple source files are used within a single
method, Shark will populate the drop-down with all of the source files
used. For JVMPI (Java 1.4), we were only told the source file and
line number, so figuring out when something was inlined was difficult
if not impossible. For JVMTI (Java 5 and later), the support from the
VM is better and inlining becomes more apparent. The support for
inlining in Shark is present, but somewhat difficult to use and
understand. The bug was mainly to track how to better handle
displaying inlining information. The current use of a drop-down menu
to switch between source files is difficult to understand and makes it
difficult to understand the code flow.
--
Rick Altherr
Architecture and Performance Group
email@hidden
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden