[LLVMdev] [fwd] LLVA, TAO Intent, Morphun, DualCor
John Criswell
criswell at cs.uiuc.edu
Fri Feb 3 09:36:05 PST 2006
Misha Brukman wrote:
> I don't know the current status of the LLVA project, so I will let the
> current developers chime in. Please send all LLVM and LLVA questions to
> llvmdev at cs.uiuc.edu .
My apologies for the late reply.
>
> ----- Forwarded message from N O S P A M <ti_dak at yahoo.com> -----
>
> Date: Tue, 17 Jan 2006 09:47:32 -0800 (PST)
> From: N O S P A M <ti_dak at yahoo.com>
> Subject: LLVA, TAO Intent, Morphun, DualCor
>
> Hello
> I want to ask about LLVA project:
> 1. Is there any LLVA implementation for PowerPC, MIPS,
> SPARC etc?
It depends on what aspect of LLVA you are refering to, and whether you
mean LLVM or LLVA.
LLVM is the Low Level Virtual Machine (a compiler infastructure). The
LLVM tools will run on most UNIX platforms (I believe there is some
support for Windows as well). The LLVM JIT and static code generators
support x86, Sparc, and PowerPC, and there is some support for Itanium
and Alpha. There is also a C-Backend which allows LLVM to generate
native code for platforms which do not have their own code generators.
See http://llvm.cs.uiuc.edu/docs/GettingStarted.html for more
information on supported platforms.
The LLVA project is a set of research projects that aims to make the
LLVM instruction set the sole interface between the entire software
stack (OS, libraries, applications) and the hardware.
One LLVA project is the LLVA-OS project, which adds extensions to the
original LLVM instruction set to support operating system code. I'm the
primary person working on this project. It currently works only on x86.
Another LLVA project (I think it's an LLVA project, anyway) is the
vector instruction work being done by Rob Bocchino (which is different
from LLVM's current vector support). I'll let Rob comment on what
platforms his work currently supports.
>
> 2. What is the comparison with TAOS or TAO Intent,
> Morphun etc?
>
> http://www.tao-group.com
>
> http://www.synergenix.se/
>
> http://www.mascotcapsule.com/
I am not familiar with these projects; if you give me a brief
description of what they're about, I might be able to give you some
general comparisons between them and LLVA.
>
> 3. There is a strange handheld PDA/PC combo from
> DualCor with 2 types of CPU in 1 system.
>
> http://www.dualcor.com
>
> If they can install Linux on both Xscale (ARM) and VIA
> C7 (X86), is it possible to run LLVA on both CPU?
It should be possible to run the LLVM tools on both processors.
However, LLVM currently does not have an XScale code generator, so you
will need to use the C backend to generate code that runs on the XScale.
JIT compilation would work on the x86, but would not work on the XScale.
Of course, you could write your own XScale backend. Contributions are
welcome.
:)
>
> If LLVA is possible, is it possible to create
> Cluster/Multi processor system with the 2 CPU and run
> the same LLVM program on both CPU?
LLVA is not currently possible, but from the sounds of it, you don't
need it. I think LLVM is what you want.
As far as whether LLVM can run the same bytecode on two different
processors, the answer is: it depends.
If the original program is portable, then the same bytecode will work on
both the XScale and the x86. This generally requires that the program
not need to know pointer size or processor endianness.
If the original program is non-portable (e.g. it relies on the
processor's endianness or pointer size), then the LLVM bytecode will not
work on a machine with different characteristics.
For example, the echo command would be portable, but the telnet command
would not be. The echo command does not use endianness or pointer size,
but the telnet command does.
LLVM bytecode is not like Java bytecode: it does not give you automatic
portability. Portability is up to the application and programming language.
>
> Thank you
> Best regards.
>
> ----- End forwarded message -----
>
Please email llvmdev at cs.uiuc.edu if you have any further questions or
anything here is unclear.
Regards,
-- John T.
--
John T. Criswell
Research Programmer
University of Illinois at Urbana-Champaign
"It's today!" said Piglet. "My favorite day," said Pooh.
More information about the llvm-dev
mailing list