Rockbox

Tasklist

FS#10292 - Compile Rockbox simulator with LLVM

Attached to Project: Rockbox
Opened by Maurus Cuelenaere (mcuelenaere) - Sunday, 07 June 2009, 22:32 GMT
Last edited by Maurus Cuelenaere (mcuelenaere) - Sunday, 07 June 2009, 22:32 GMT
Task Type Patches
Category Simulator
Status New
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No

Details

This patch enables you to compile the Rockbox simulator with LLVM (you still need to alter the Makefile yourself though).

However, it fails at linking stage with 'file not recognized: File truncated' errors.
This task depends upon

Comment by Maurus Cuelenaere (mcuelenaere) - Monday, 08 June 2009, 21:55 GMT
Somehow, I got LLVM to link; but I needed to ranlib libfirmware.a, libspeex-voice.a and libuisimulator.a.

edit:
use the standard 'ar' utility instead of 'llvm-ar' to fix this

edit2:
LLVM fails at apps/plugins/rockboy/save.c with this error:

cc1: /build/buildd/llvm-2.2/lib/VMCore/Constants.cpp:1862: static llvm::Constant* llvm::ConstantExpr::getGetElementPtr(llvm::Constant*, llvm::Value* const*, unsigned int): Assertion `Ty && "GEP indices invalid!"' failed.
/home/mcuelenaere/rockbox/apps/plugins/rockboy/save.c:155: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.

edit3:
I filed a bug report: http://llvm.org/bugs/show_bug.cgi?id=4349

edit4:
Both LLVM bugs 4349 and 3518 should be fixed so I'll be re-testing this with SVN versions of LLVM-GCC
Comment by Maurus Cuelenaere (mcuelenaere) - Friday, 30 October 2009, 12:00 GMT
Update: using LLVM 2.6 the simulator compiles fine, it still needs the above mentioned changes though (llvm.diff and using standard 'ar' instead of 'llvm-ar').
Comment by Maurus Cuelenaere (mcuelenaere) - Friday, 30 October 2009, 12:07 GMT
This is a fix for apps/settings.h compilation under LLVM.

Loading...