[cfe-dev] Linker error with -flto

Robert Purves listrp at gmail.com
Wed Jun 23 23:02:54 PDT 2010


$ cat test.c
struct Foo
{
	int x, y;
};

int main( void )
{
	struct Foo f = { 0, 0 };
	return 0;
}

$ llvm-gcc-4.2 test.c
$ llvm-gcc-4.2 test.c -flto
$ clang test.c
$ clang test.c -flto
Intrinsic prototype has incorrect number of arguments!
void (i8*, i8, i64, i32, i1)* @llvm.memset.p0i8.i64
Broken module found, compilation aborted!
Stack dump:
0.	Running pass 'Function Pass Manager' on module 'ld-temp.o'.
1.	Running pass 'Module Verifier' on function '@main'
clang: error: linker command failed due to signal 6 (use -v to see invocation)

$ clang --version
Apple clang version 1.5 (tags/Apple/clang-60)
Target: x86_64-apple-darwin10
Thread model: posix

With debugging info turned on, the error message is different:
$ clang test.c -flto -gdwarf2
ld: in /var/folders/88/88AKX+F62RWmd++8ZOxBkU+++TQ/-Tmp-/cc-qjdqFJ.o, could not parse object file /var/folders/88/88AKX+F62RWmd++8ZOxBkU+++TQ/-Tmp-/cc-qjdqFJ.o: Unknown instruction
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Robert P.





More information about the cfe-dev mailing list