Re: [VM] Bytecode Subroutine Verification

2006-07-31 Thread Tom Tromey
e tried to follow the JVM Spec.) While you can construct bad cases that make Coglio-style verifiers very slow, I'd be surprised if the verifier generally shows up high in profiles. (Our profiles tend to omit the verifier for other

Re: [vote] Require compiler options that allow partial 5.0 language features

2006-03-18 Thread Tom Malone
+1 On 3/17/06, Tim Ellison <[EMAIL PROTECTED]> wrote: > Thanks Etienne -- all opinions welcome! > > Etienne Gagnon wrote: > > If non-members have any say, I'll add a +1. If not, ignore this... ;-) > > > > Etienne > > > > Stefano Mazzocchi wrote: > >>> This opens up so many new opportunities for c

Re: Using APR for Harmony's native link to the OS?

2006-02-11 Thread Tom
Thanks for checking that out! About (2): From what I am seeing these days it is important to support ARM. BTW, where did you get this information about ports not being available please? I did not find a "porting page". Enrico Migliore wrote: Stefano wrote: I think we would gain a lot of va

Re: Writing JavaDoc

2006-01-13 Thread Tom Tromey
7;s javadoc goes... in my experience you can't really call it a "spec" with a straight face. It omits far too much. Tom

Re: JCHEVM builds and runs

2005-11-16 Thread Tom Tromey
ns to check for. I'd say to look at APR before spending a lot of time on configury though. Tom

Re: VM/Class Library Interface (or "Storming the Gates! Take 3!")

2005-11-15 Thread Tom Tromey
ditional VMs, where native has a different meaning, i.e. IKVM, or Jaos, or the oberon-based VM (I forgot the name of that one, sorry). Tom

Re: [arch] Interpreter vs. JIT for Harmony VM

2005-11-08 Thread Tom Tromey
Geir> What's an activation record? Compiler speak for a stack frame. http://en.wikipedia.org/wiki/Activation_record Tom

Re: [arch] Interpreter vs. JIT for Harmony VM

2005-11-08 Thread Tom Tromey
mportant as the Steve> industry moves to multicore. What do you mean when you say "non-reentrant JIT"? A JIT that has global variables and assumes it is only running in one thread at a time? Or a JIT that assumes that it won't be interrupted (in a given thread) to do some other piece of work? Or maybe something else? Tom

Re: VM/Class Library Interface (or "Storming the Gates! Take 3!")

2005-11-08 Thread Tom Tromey
ns. The difficulty here is that bug fixes to the shared code must be manually merged. This turns out to be more work than we originally thought it would be; in general these days I try to push us to follow Classpath more closely for this reason. Tom

Re: VM/Class Library Interface (or "Storming the Gates! Take 3!")

2005-11-04 Thread Tom Tromey
re's no bad (i.e., security violating) situation that can arise from this. It is no different from Sun adding any other class that is not yet implemented in Classpath. Tom

Re: Some questions about the architecture

2005-10-21 Thread Tom Tromey
*/ Typically it is simpler to unify the exception handling code so that internally generated exceptions (e.g., an NPE) are thrown using the same mechanism as user-code-generated exceptions. In other words, I think you're going to want an object reference here. Tom

Re: Small problems building under cygwin

2005-10-21 Thread Tom Tromey
ntaining this file is not a big deal. The actual code in the x86 linux version of the file in Classpath amounts to 13 lines. Tom

Re: opinions on structure packing in C?

2005-10-07 Thread Tom Tromey
ould require not only recompiling libc, but also any JNI code that might be used, plus any libraries used by this JNI code. As an example, consider the Gtk peers used by Classpath's AWT... to do this you're talking about rebuilding a large part of a typical distro. Tom

Re: opinions on structure packing in C?

2005-10-05 Thread Tom Tromey
a lot of code around a lot of platforms, Dan> but I'm interested hear how other folks have solved Dan> problems like this. AFAIK the typical approach for struct packing is to do nothing and let the target platform's headers sort it out. We never had to do anything in this area for libgcj, and a quick grep through kaffe shows that it doesn't need this either (aside from one unusual case). More generally this is why APR is nice to have :-) Tom

Re: RT: Escape analysis

2005-10-02 Thread Tom Tromey
h Microsoft on Andy> that one. It took me awhile...but checked exceptions do more harm Andy> than good. This is a java->bytecode compiler issue, not a runtime issue. Checked exceptions are only checked by the compiler, not by the VM. Tom

Re: [arch] Interpreter vs. JIT for Harmony VM

2005-09-21 Thread Tom Tromey
Michael> Sorry for being off-topic, IMO not offtopic as we're discussing what to do, and this is an option. Tom

Re: [arch] Interpreter vs. JIT for Harmony VM

2005-09-21 Thread Tom Tromey
choice of execution engine up front; so the "fast JIT" and the "optimizing JIT" are just part of the same code base and only need to talk to each other, and can be built in an ad hoc way. Personally I'd be just as happy if we only had a JIT. There are already plenty of interpreters out there. Tom

Re: Classpath .18 release

2005-09-07 Thread Tom Tromey
>>>>> "David" == David Tanzer <[EMAIL PROTECTED]> writes: David> * Kaffee: David>- [EMAIL PROTECTED] Just one 'e': "kaffe". There's also the gcj lists: [EMAIL PROTECTED] [EMAIL PROTECTED] Tom

Re: [arch] Modular JVM component diagram

2005-08-31 Thread Tom Tromey
h libgcj suggests that OS porting layer has few tricky parts[1]. The bulk of the code -- file and network I/O, for instance -- is simple and porting it doesn't represent a major effort. I think our "posix" port (includes linux, solaris, macos x) is about 4 KLOC. The Windows-spec

Re: [arch] Modular JVM component diagram

2005-08-19 Thread Tom
target to get the JVM to run. This will help to use Harmony with different bootpaths later on. For example, the VM will not require libraries for X-Path and database operations, or will it? (They seem to be required to run libapr0 in your link) Thanks Tom Joerg Wendland wrote: *unlurk* Hi

Re: [arch] Modular JVM component diagram

2005-08-19 Thread Tom
) So, rather encouraging, but if someone could post his own experience on porting APR this would certainly be more helpful than my Google-guessing. Thanks Tom Ricardo Morin wrote: Hi, I updated the "Modular Structure JVM Components" section of the architecture document with

Re: a harmonious and inclusive community

2005-07-26 Thread Tom Tromey
versions of some core classes like String and Object. We periodically have to merge over bug fixes and javadoc and the like. It seems to me that the other classpath-using VMs have it simpler here, as they just require the occasional tweak to their VM classes. Let me know if you want more info. Tom

Re: Class library componentization

2005-07-22 Thread Tom Tromey
rget). I'm not sure what this means for your breakdown ... would these classes need to be in the same bundle? Tom

Re: GNU Classpath 0.16 "Harmony!" released

2005-07-13 Thread Tom Tromey
problems still to be resolved "the right way" (I just hacked the PJ> makefiles to get it to build, and had to use Fink to get many of the PJ> requirement packages, as they weren't part of the base OSX full dev PJ> tools install.) Did you try disabling the gtk peers? Portability fixes (for the build or for the JNI code or whatever) are also welcome. Tom

Re: Compiling GNU Classpath was: Re: GNU Classpath 0.16 "Harmony!" released

2005-07-11 Thread Tom Tromey
; download and compile these packages directly Dan> instead of using the www.sunfreeware.com versions, Dan> I have _not_ succeeded. Dan> Has anybody successfully compiled GNU Classpath 0.1x Dan> on a Solaris platform? Please file bug reports. Also, try configuring with --disable-gtk-peer to avoid compiling the gtk peers. Tom

Re: Security

2005-07-01 Thread Tom Tromey
e discussed a little is writing new FindBugs checks to look for the required security calls. But this doesn't protect us from bugs in the native code or bugs allowing access to non-standard weird things that shouldn't be generally accessible (we have some interesting code in gnu.gcj.*). Tom

Minutes of First Harmony Meeting

2005-06-30 Thread Tom
Date:06/28/05 Location:Thirsty Bear, San Francisco, CA Present: Geir Magnusson Flavio Bergamaschi Ian Darwin Weldon Waschburn Tom Enderes [Geir] Start off with codebase from Dan Lydicks VM ? [Flavio] Need proper SE Process? [Flavio

Re: JavaOne Meetup

2005-06-28 Thread Tom
PJ Cabrera wrote: On 6/28/05, Geir Magnusson Jr. <[EMAIL PROTECTED]> wrote: > When and where shall we meet? > > I suggest the Thirsty Bear, just a block away from Moscone. We can > try during the day, or at night, but to start... > > 8pm Tuesday, June 28? That sounds good to me, as this

Re: [modules] classloader/jit interface

2005-06-27 Thread Tom Tromey
ibute. The former are typically needed internally but the latter are needed in some situations (Class.newInstance I think). Tom

Re: Apache Booth At JavaOne

2005-06-21 Thread Tom
+1 and just looked at the schedule: Tuesday evening is not good as it overlaps with the open JCP evening which goes on till 9pm. Monday and Wednesday are some receptions / bashes (which I personally wouldn't mind skipping), and Thursday seems open, so perhaps Thursday? PS: I have a Pavilio

Re: [arch] How much of java.* and friends does Harmony need to write. Was: VM/Classlibrary interface

2005-06-05 Thread Tom Tromey
won't need any major overhauls, just additions here and there. But if someone wanted to go through all the new bits and check this, that would be helpful. Better yet, actually go write the new bits, there is plenty of 1.5 stuff still to be done. Tom

Re: [arch] How much of java.* and friends does Harmony need to write. Was: VM/Classlibrary interface

2005-06-05 Thread Tom Tromey
gt; adds it as a private class (not so farfetched). Ok, this is the scenario. This I understand. But what actual problem does this cause? Tom

Re: [arch] How much of java.* and friends does Harmony need to write. Was: VM/Classlibrary interface

2005-06-05 Thread Tom Tromey
e. The VMs have to change, but then the VMs have to change with each major release anyway, since ordinarily new features are added which require new VM glue. Tom

Re: [arch] How much of java.* and friends does Harmony need to write. Was: VM/Classlibrary interface

2005-06-05 Thread Tom Tromey
nnot get around the access controls, even with reflection. Geir> Why would I have to "get around" the access controls? I'm the VM. I Geir> can do magic things, right? (I should be able to...) I thought we were talking about malicious user code. Tom

Re: [arch] How much of java.* and friends does Harmony need to write. Was: VM/Classlibrary interface

2005-06-05 Thread Tom Tromey
ime to time the VM interface has to be extended for new VMs, which have different needs. This is one reason that the interface isn't yet stable, even for 1.4. Tom

Re: JVM Spec version 2 and .class file versioning

2005-06-05 Thread Tom Tromey
ding an extension to the semantics of 'ldc'. Tom

Re: [arch] How much of java.* and friends does Harmony need to write. Was: VM/Classlibrary interface

2005-06-03 Thread Tom Tromey
hen, I'm not really getting this part of the discussion. For instance, why does Harmony need a VM layer different from the one Classpath provides? I don't understand that. Tom

Re: ClassLib implementations WAS some ideas

2005-06-03 Thread Tom Tromey
gt; implementation of java.lang? Sven> Why wouldn't it be possible? It'd be horrible coding if it were Sven> any other way. Totally agreed. Most code in Classpath doesn't use native code, or VM code, or anything but the public API of classes in other packages. Tom

Re: Work items

2005-05-27 Thread Tom Tromey
tack caching, superinstructions, scheduling, whatever new stuff they've come up with...) Tom

Re: [arch] VM/Classlibrary interface

2005-05-27 Thread Tom Tromey
e Classpath VMObject, due to the access protection. So failures "the other way" aren't possible. Geir> I'd like to drive to a standard interface that we can all agree on, Geir> and hopefully GNU Classpath will support it. Experience has shown that the Classpath approach is pretty flexible. A wide range of VMs already use it. Also we're pretty open to specific needed changes. Tom

Re: timeframe for mid-level decissions

2005-05-22 Thread Tom Tromey
now at the very heart of gcj. This is hard for the reasons outlined before. Tom

Re: mudGE VM (was RE: Developing Harmony)

2005-05-21 Thread Tom van Dijck
It does not however, since it is about 100 times less work to maintain vcproj and sln files opposed to makefiles (at least in my oppinion) it just comes with build files for the commercially most used compiler in the world. Anyway, anyone with knowledge about ant or makefiles could get the thin

Re: timeframe for mid-level decissions

2005-05-20 Thread Tom Tromey
petitive performance wise. E.g., starting eclipse has to be reasonable both in time and space. 3. Debugging. There has to be some debugger story. Harmony would have to excel on all of these before I would even consider, say, recommending it for FC. Tom

Re: [arch] VM Candidate : JikesRVM http://jikesrvm.sourceforge.net/ (and some bla bla about compilers and stuff)

2005-05-20 Thread Tom Tromey
ld rip pieces of GCC out and construct a more traditional acoliver> JIT, but its really not what we want. Probably more profitable to simply integrate a JIT into libgcj. Tom

Re: JIRA and SVN

2005-05-20 Thread Tom Tromey
ly ported as it is; the core gcj developers hardly ever do any architecture-specific work but instead we just inherit it from GCC. Tom

Re: Developing Harmony

2005-05-20 Thread Tom Tromey
umed by the core? E.g., does the JIT itself rely crucially on exception handling? Garbage collection? The reason I ask is that I'm curious about how minimal a system can be made with JikesRVM. Tom

Re: [arch] VM Candidate : JikesRVM http://jikesrvm.sourceforge.net/

2005-05-20 Thread Tom Tromey
Stefano> compiler intermediate representation instead of having to write a big Stefano> string using C syntax and fire a parser on it. Stefano> Does anybody know if GCC allows such a thing? It already exists -- you're describing gcj. Tom

Re: [arch] mudGE VM ( was Re: [arch] VM Candidate : JC @ http://jcvm.sourceforge.net/)

2005-05-18 Thread Tom van Dijck
nt: Wednesday, May 18, 2005 3:40 PM Subject: Re: [arch] mudGE VM ( was Re: [arch] VM Candidate : JC @ http://jcvm.sourceforge.net/) > Oh, never mind. I didn't RTFM (I did, but missed the top section...) > > geir > > On May 18, 2005, at 9:14 AM, Geir Magnusson Jr. wrote: > &g

Re: Developing Harmony

2005-05-18 Thread Tom Tromey
s-build the VM from another machine that it does work on. This is one way people bring up GCC on a new machine as well. Tom

Re: Against using Java to implement Java (Was: Java)

2005-05-18 Thread Tom Tromey
ble to require compile-time choices. So, in this case, it isn't as if we would have to design an allocation interface that allows all possible choices. It can merely allow the subset we know to be immediately usable. Tom

Re: Testing - TCK, mauve, harmony's own test suite?

2005-05-18 Thread Tom Tromey
ization compatibility tests, and the 'wonka' module which holds the Acunia visual tester (tests AWT functionality). Tom

RE: [arch] VM Candidate : JC @ http://jcvm.sourceforge.net/

2005-05-18 Thread Tom van Dijck
to be notified about what happens to my code and who uses it. Tom van Dijck mudGE Entertainment > -Original Message- > From: Geir Magnusson Jr. [mailto:[EMAIL PROTECTED] > Sent: Wednesday, May 18, 2005 6:35 AM > To: harmony-dev@incubator.apache.org > Subje

Re: Against using Java to implement Java (Was: Java)

2005-05-17 Thread Tom Tromey
reading through it. ORP already solved these problems in a fairly reasonable way. Tom

Re: Developing Harmony

2005-05-17 Thread Tom Tromey
, which is the actual VM. Then you can run your java programs using this image. Once you have the infrastructure for this, setting it up for cross-building (cross architecture or cross OS) is not theoretically hard, merely a SMOP. It looks like JikesRVM already has some support for this: http://jikesrvm.sourceforge.net/userguide/HTML/userguide_8.html Tom

Re: Stop this framework/modularity madness!

2005-05-17 Thread Tom Tromey
e is probably enough knowledge here to succeed at this part of the effort. Rodrigo> I believe the focus should be on deciding if Harmony will star from Rodrigo> other JVM or not. And in addition, deciding what the goals are. You wouldn't want to pick a starting point that doesn't take you where you want to go. Tom

Re: Apache Harmony / GNU Classpath

2005-05-17 Thread Tom Tromey
he Subject. Development proceeds (as with Apache I suppose) according to each developer's interest. Lately those of us at Red Hat have mostly been working to get some specific big java applications working: eclipse, tomcat, ant, their many dependencies, jonas, and OO.o. This mostly seems to mean bug fixing and minor additions here and there. Tom

Re: GC Compatibility (was: Re: State of the World)

2005-05-16 Thread Tom Tromey
ibgcj uess. Usually this just means disabling things. ... But once you do this you run into all the other reasons binary interoperability is hard; my looks into LLVM, ORP, and Kaffe all failed due to disagreement over exception handling. Tom

Re: Developing Harmony

2005-05-16 Thread Tom Tromey
compilation * Configurable VM means it is simpler to target the small machine embedded scenario * Re-use somebody else's compiler framework. For AOT, re-use lessons learned by gcj. Tom [1] http://lists.gnu.org/archive/html/classpath/2004-01/msg00033.html [2] http://www.llvm.org/

Re: State of the World

2005-05-16 Thread Tom Tromey
>>>>> "Ben" == Ben Laurie <[EMAIL PROTECTED]> writes: Ben> Tom Tromey wrote: >> * Fragmentation. I think there are too many free JVMs. In particular >> the "C/C++-based VM" niche is over-full. It ought to be possible, >> though

Re: Java

2005-05-15 Thread Tom Tromey
OS/Hardware. You are correct. Any VM will always need a way to call system functions somehow, and on Linux/Windows/etc, this means C ABI calls. Depending on the approach one chooses, some kinds of APIs are simpler to wrap than others, but I think this is not a major issue. Tom

Re: The topic of the Java Compiler

2005-05-15 Thread Tom Tromey
ng developed, then it is another good choice. Basically the message is, unless a particular license is a hard requirement, there is little reason to write a java compiler. Tom

Re: JIT vs. WAT

2005-05-13 Thread Tom Tromey
GCJ's binary ABI Rodrigo> without been GPL? I'm sure that wouldn't be a problem. I think it is no different from, say, replacing libgcc, which some people do. Tom

Re: The topic of the Java Compiler

2005-05-13 Thread Tom Tromey
of gcc at all. It is written in C++. kjc is also out there and being developed, but I don't know much about it. Tom

Re: JIT vs. WAT

2005-05-12 Thread Tom Tromey
r, GCJ was not "drop-in" compatible with Bob> Sun's javac. You cannot just take an Ant script and replace "javac" Bob> with "gcj" and have it all work. This is the role that the java-gcj-compat package fills. jpackage-style alternatives basically solve all the problems in this area. Tom

Re: Apache Harmony / GNU Classpath

2005-05-12 Thread Tom Tromey
rtified. Change the build, lose the cert. I doubt it matters much where the sources come from, as long as the build passes. Tom

Re: Apache Harmony / GNU Classpath

2005-05-12 Thread Tom Tromey
tc... is thought. Rewriting Classpath's native code in terms of APR should be trivial for a motivated someone. We're talking about 10 KLOC as counted by wc. Tom

Re: Java Security for Harmony

2005-05-11 Thread Tom Tromey
; byte[] representation in a database of known-valid classes, and then only does the full verification if it is not seen. (This is not completely trivial due to class loading oddities, but it could be done by deferring some kinds of type checking, as gcj does.) Tom

mudGE JavaVM.

2005-05-10 Thread Tom van Dijck
ll, uhm... I would be more then happy to share and learn, in case of interest that is. Tom van Dijck Research & Development Playlogic Game Factory www.playlogicgames.com

Re: State of the World

2005-05-10 Thread Tom Tromey
free compilers >> and runtimes properly support the new 1.5 language features. Henri> Are any enums in the JDK being held off on for the same reason? (only Henri> one I noticed was java.math.RoundingMode). There are already other enums on the generics branch. Anything missing there is just because nobody has gotten around to writing it yet. Tom

Re: State of the World

2005-05-10 Thread Tom Tromey
things to compile, but then the stubs fail at runtime. This is a pain because the stubs don't show up as bugs in the API comparison. We generally avoid this except for unusual circumstances, though. Tom

Re: Contributing to project...

2005-05-10 Thread Tom Tromey
My hope is that we Dalibor> can then just plug into JacORB for the backend. Yeah. Also, note that all the missing parts of java.math are new in 1.5. It helps to look at the 1.4 comparison as well, to see what is historically missing and what is just new. Tom

Re: Java Security for Harmony

2005-05-10 Thread Tom Tromey
ractice it is probably necessary to get acceptable performance. Without a verifier you must track the types of everything on the stack and in local variables (if you have a verifier you don't need to do this), and do assignability checks on arguments to all method calls, qualifying reference for a field lookup, etc. Tom

Re: Java Security for Harmony

2005-05-09 Thread Tom Tromey
We have even written the compiler to emit type assertion tables, to duplicate the runtime effects of verification (without the expense). I'm not trying to push gcj here, and this doesn't eliminate other reasons one might prefer JITting... I just wanted to avoid propagating inaccuracies. Tom

State of the World

2005-05-09 Thread Tom Tromey
om the JikesRVM angle... I won't speculate here, though, since I'm not really involved with that project. Maybe it seems like a grim environment for starting a new project. Well, considered on technical grounds alone, it is. One needs a pretty compelling technical story to do better than already existing projects. Tom

Re: Assembled comments from the web

2005-05-07 Thread Tom Tromey
completely independent. You can see some discussion of a few of the issues in this thread: http://lists.gnu.org/archive/html/classpath/2004-01/msg00033.html It would be nice to have some kind of reusable, configurable core VM. Perhaps we could eliminate one of the current areas of divergence this way, by letting (eg) kaffe/sable/jamvm/libgcj share more bits. Tom

Re: Harmony: project purpose

2005-05-07 Thread Tom Tromey
ces. Most of the wire-protocol at least can be Mark>shared. I have some designs for that, but I forgot who is Mark>working on this for gcj. The documents for this still haven't been released; I'll try to push on that again. Tom