[cfe-dev] Build failure on PowerPC and PowerPC64.

Richard Pennington rich at pennware.com
Sat Feb 4 19:45:31 PST 2012

On Saturday, February 04, 2012 11:13:23 AM Richard Pennington wrote:
> I updated to TOT today and now get the following on ppc and ppc64:
> Making all in c/
> make[3]: Entering directory `/home/rich/ellcc/libecc/obj/ppc64/linux/c'
> ../../../../../bin/ppc64-linux-ecc   -c -fno-builtin -Werror -MD -MP -O1 -g
> - I../../../../src/c/include -I../../../../src/c/locale
> ../../../../src/c/gen/isnanl.c
> ecc: warning: unknown platform, assuming -mfloat-abi=soft
> ecc: /home/rich/ellcc/llvm/lib/Target/TargetData.cpp:366: unsigned int
> llvm::TargetData::getAlignmentInfo(llvm::AlignTypeEnum, uint32_t, bool,
> llvm::Type*) const: Assertion `AlignType == VECTOR_ALIGN && "Unknown
> alignment type!"' failed.
> 0  ecc             0x0000000001f4070f
> 1  ecc             0x0000000001f4124a
> 2  libpthread.so.0 0x0000003ecca0eeb0
> 3  libc.so.6       0x0000003ecbe330c5 gsignal + 53
> ...
> All the other targets I tried workd (arm, i386, mips, microblaze, x86_64).

I tracked it down to incomplete target data for 128 bit floats: f128 wasn't 
defined, which caused compilation errors. This uncovered a larger problem. The 
ppc long double format isn't supported by APFloat.cpp. This makes things like 
hex float constants fail. I'll think about it and figure out what to do 


More information about the cfe-dev mailing list