Compiling tamarin-tracing on linux

Steven Johnson stejohns at adobe.com
Sun Jan 6 16:43:31 PST 2008


Tamarin-central (TC) is up to date on Linux, but most of the dev work on
Tamarin-tracing (TT) has been done on Mac OS X and Windows, so the Linux
build has gotten a little stale -- apologies for that, it's not our
intention, just a side-effect of the primary dev environments that a handful
of people at Adobe have been using. (Feel free to submit your Linux fixes as
a patch!) As to your segfault, I don't know offhand, but I suspect it should
be something relatively minor, as TT already works on OS X and actually uses
fewer OS-specific tricks than TC does. We'll try to look at it soon and get
a working Linux version out.

TT is intended to pass the same test suites as TC, and should (with just a
few exceptions), but as you've noticed is quite a bit slower that Tamarin.
We're concentrating our efforts on improving this (and you can expect
signficant progress on this front soon), but for now the times you see are
not unexpected. In the long run, we are pretty confident that TT will
achieve parity (at least) with TC, with a much lower code and memory-usage
footprint, but for now, it's pretty pokey. I'd recommend running the tests
with a Release or Release-Debugger build, which generally can complete in
5-10 minutes on a recent Intel machine.



On 1/6/08 1:27 PM, "Zbynek Winkler" <zbynek.winkler at gmail.com> wrote:

> Hello,
> 
> I've read some papers about trace tree code generation and I wanted to
> check out tamarin-tracing. I tried to compile it on Debian testing
> with
> 
> g++ (GCC) 4.2.3 20071123 (prerelease) (Debian 4.2.2-4)
> 
> I found the */manifest.mk files not up to date so I made some fixes. I
> also had to fix some warnings (as errors) about unused variables and
> such. I got to a point of having avmshell executable.
> 
> However when I run it I get a seg fault. Backtrace from gdb is:
> (gdb) bt
> #0  0x080a4929 in nanojit::LIns::resv ()
> #1  0x08098fa5 in nanojit::Assembler::findRegFor ()
> #2  0x0809fbc8 in nanojit::Assembler::gen ()
> #3  0x080a2010 in nanojit::Assembler::assemble ()
> #4  0x08071526 in avmplus::Interpreter::inner ()
> #5  0x08074c32 in avmplus::Interpreter::interpScript ()
> #6  0x0805ba1a in avmplus::AvmCore::initTopLevel ()
> #7  0x08049a4b in avmshell::Shell::main ()
> #8  0x08049d5a in main ()
> 
> Is tamarin-tracing to be expected to work on Linux? The Makefile in
> platform/unix/ is not up to date either. How everyone compiles
> tamarin-tracing? I was not able to create a debug build because there
> is only AvmDebugWin.cpp and nothing corresponding to linux. Is the
> development going on windows first?
> 
> Some problems I've found seem to be fixed in tamarin-central. What is
> the relationship between these two repositories? I thought
> tamarin-tracing is based on tamarin-central but it seems that some
> files might have been reverted to some older state...
> 
> And finally, is there a faster way to test the built executable?
> Running test/runtests.py seems to be taking forever... but at the end
> I got 3 (unexpected) failures for tamarin-central (it took 69 min).
> 
> Thanks.
> 
> Zbynek



More information about the Tamarin-devel mailing list