[LLVMdev] llvm-gcc4_2, llvm-gcc4_2-fixed-point
Peter Wiedermann
peter.wiedermann at gmx.at
Tue Mar 20 13:54:49 PDT 2007
hi!
because i read that other people may be interested
in llvm-gcc4_2 in the google-soc thread, here is the
status of my work:
i merged llvm-gcc and the current gcc4_2.
this is the patch from official gcc4_2 to my llvm-gcc4_2:
http://geldspeicher.entenhausen.at/dl/gcc-4_2_to_llvm.patch.gz
comments:
+ i left out most APPLE LOCAL* marked regions of llvm-gcc4 which
were not concerning llvm
+ this patch works at least for "simple" c-programs, but it
isn't done yet.
i will have to track down further errors with the testsuite.
at the time i know of several problems compiling c++ code.
+ this patch was applied to the actual gcc-4_2 checked out a few weeks
ago (i didn't check differences since then)
i prted the fixed-point extensions which are developed
in an gcc_4_3 branch back to llvm-gcc4_2:
http://geldspeicher.entenhausen.at/dl/gcc-llvm4_2_to_fixed-point.patch.gz
comments:
+ the fixed-point support is highly experimental and incomplete,
the operations are mapped to intrinsics.
the calls of the intrinsics are lowered in the virtual machine, i have
no patch for this part, because i don't like the current solution.
kind regards
peter
ps.:
there is a particular problem i couldn't solve, which does
not matter as long as this file is not linked to an executable:
gcc/config/i386/crtfastmath.c:
line 104:
asm volatile ("fxsave %0" : "=m" (fxsave) : "m" (fxsave));
the problem occurs during compilation of llvm-gcc4_2.
llvm cannot handle the struct arguments at this
level, the following errormsg is the result:
cc1: .../llvm/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp:2211: llvm::MVT::ValueType llvm::TargetLowering::getValueType(const llvm::Type*) const: Assertion `0 && "Unknown type!"' failed.
at the moment i did comment the line out, but i would like to
here your opinions
More information about the llvm-dev
mailing list