llvm

Anyone have experience with LLVM?

Does anyone have experience with LLVM, llvm-gcc, or Clang? The whole idea behind llvm seems very intriguing to me and I'm interested in seeing how it performs. I just don't want to dump a whole lot of time into trying the tools out if the tools are not ready for production. If you have experience with the tools, what do you think of t...

LLVM vs GCC MIPS code generation, any benchmarks?

I'm interested in knowing what is "best" free/OSS compiler for MIPS code, GCC or LLVM, or is there anything even better than those? I'm interested in knowing more about fast and memory constrained generated Assembly code than code size. In other words, does llvm-opt do the job better than gcc -O3? ...

Best Compiler Destination

I've got a few languages I've been building as interpreters. When I'm ready to take "that next step", what options are best for non-native compiled formats... what are the pros and cons of each? I've been looking at compiling to CLR or LLVM, and contemplated C-midcompile a few times, but I'm not completely certain. A few features I'm ...

What are the differences between LLVM and java?

I dont understand the difference between LLVM and the java (bytecode), what are they? -edit- by 'what are they' i mean the differences between LLVM and java (bytecode) not what are LLVM and java. ...

How would you re-use C opcode implementations when writing a JIT with LLVM ?

In the llvm tutorials and examples, the compiler outputs LLVM IR by making calls like this return Builder.CreateAdd(L, R, "addtmp"); but many interpreters are written like this: switch (opcode) { case ADD: result = L + R; break; ... How would you extract each of these code snippets to make a JIT ...

Debugging with Clang

I'd like to use clang on my Xcode iPhone project. However this is the getting started guide: http://clang.llvm.org/get_started.html I've been working with Xcode for a year but this is far far far from being understandable to me! Can anyone explain in plain english how to install and use Clang with my existing iPhone project? I am not f...

What is LLVM and How is replacing Python VM with LLVM increasing speeds 5x?

Google is sponsoring an Open Source project to increase the speed of Python by 5x. Unladen-Swallow seems to have a good project plan Why is concurrency such a hard problem? Is LLVM going to solve the concurrency problem? Are there solutions other than Multi-core for Hardware advancement? ...

Does VMs like LLVM or PARROT allows usage of same library from multiple languages?

Is it possible to use one framework written in one Parrot (LLVM) language in any other Parrot (LLVM) language? (Like usage of .NET Framework from any CLR language)... ...

Opinions on Unladen Swallow?

What are your opinions and expectations on Google's Unladen Swallow? From their project plan: We want to make Python faster, but we also want to make it easy for large, well-established applications to switch to Unladen Swallow. Produce a version of Python at least 5x faster than CPython. Python application performanc...

Questions for compiling to LLVM

I've been playing around with LLVM hoping to learn how to use it. However, my mind is boggled by the level of complexity of the interface. Take for example their Fibonacci function int fib(int x) { if(x<=2) return 1; return fib(x-1) + fib(x-2); } To get this to output LLVM IR, it takes 61 lines of code!!! They a...

llvm vs c-- ; how can llvm fundamentally not be better for haskell than c-- ?

I've been excited about llvm being low enough to model any system, and saw it as promising that Apple was adopting it; but then again Apple doesn't specifically support Haskell; and, some think that Haskell would be better off with c-- : That LLVM'ers haven't solved the problem of zero-overhead garbage collection isn't too surpris...

Objective-C Singletons and LLVM/clang leak warnings

I'm using the singleton pattern in several places in an application, and I'm getting memory leak errors from clang when analyzing the code. static MyClass *_sharedMyClass; + (MyClass *)sharedMyClass { @synchronized(self) { if (_sharedMyClass == nil) [[self alloc] init]; } return _sharedMyClass; } // clang error: Object ...

LLVM what is it and how can i use it to cross platform compilations

I was reading here and there about llvm that can be used to ease the pain of cross platform compilations in c++ , i was trying to read the documents but i didn't understand how can i use it in real life development problems can someone please explain me in simple words how can i use it ? ...

How can I implement a string data type in LLVM?

I have been looking at LLVM lately, and I find it to be quite an interesting architecture. However, looking through the tutorial and the reference material, I can't see any examples of how I might implement a string data type. There is a lot of documentation about integers, reals, and other number types, and even arrays, functions and ...

Error with iPhone Toolchain: libc.dylib unknown flags (type) of section 4 (__TEXT,__dof_magmalloc) in load command 0

Hi all. I seem to be having some issues with building the latest Toolchain for developing for the iPhone. When building llvm-gcc, as per the instructions on the iphone-dev group page, I keep hitting this error: /usr/local/bin/arm-apple-darwin-ld: /usr/local/share/iphone-filesystem/usr/lib/libc.dylib unknown flags (type) of section 4 (__...

Anyone managed to get iphone-dev compiled for FW3 under Leopard?

Now that firmware 3 is out, has anyone managed to get the iphone-dev toolchain compiled under Leopard at all? I suspect it's a little early for such things perhaps but I appear to be having quite a few problems getting the toolchain compiled (llvm-gcc specifically). ...

Passing a gcc flag through makefile

Hi, I am trying to build a pass using llvm and I have finished building llvm and its associated components. However, when I run make after following all the steps to build a pass including the makefile, I get the following error: *relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile wit...

What is the purpose of the %"alloca point" line which occurs in llvm code?

I've been looking at some LLVM assembly produced by llvm-gcc lately and I've noticed a recurring statement of which I'm not sure its purpose. For example, the following C program: int main(void) { void (*f)(void) = (0x21332); f(); } When compiled with "llvm-gcc -emit-llvm -S" will produce the following code (irrelevant parts re...

Xcode 3.2 + LLVM = no local symbols when debugging

I have a project for Mac OS X 10.5 that I'm building on 10.6 using Xcode 3.2. When I use GCC 4.2 for Debug build and hit a breakpoint, Xcode debugger displays local variable information normally. If I choose LLVM GCC 4.2 or Clang LLVM, when I hit breakpoint, local symbols are not available, and GDB says No symbol 'self' in current contex...

LLVM - linking problem

I am writing a LLVM code generator for the language Timber, the current compiler emits C-code. My problem is that I need to call C functions from the generated LLVM files, for example the compiler has a real-time garbage collector and i need to call functions to notify when new objects are allocated on the heap. I have no idea on how to ...