[LLVMbugs] [Bug 10225] New: Mysterious llvm-ld error "Global metadata operand cannot be function local"
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Wed Jun 29 09:19:03 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10225
Summary: Mysterious llvm-ld error "Global metadata operand
cannot be function local"
Product: new-bugs
Version: 2.9
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: srk31 at srcf.ucam.org
CC: llvmbugs at cs.uiuc.edu
I'm getting the following error on a run of llvm-ld. This is from the 2.9
release, built Release+Debug+Asserts for x86_64 on a FC13 machine.
$ llvm-ld -lpthread -Lout/host/linux-x86/pr/sim/obj/lib/llvm
-Lout/host/linux-x86/pr/sim/obj/lib/llvm -L\$ORIGIN/../lib/llvm
-Lout/host/linux-x86/pr/sim/obj/lib/llvm
out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/SineSource.o.bc
out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/audioloop.o.bc
-l=stagefright -l=log -l=utils -l=binder -o
out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/LINKED/audioloop.bc
Global metadata operand cannot be function local!
metadata !34477
metadata !{null}
Broken module found, compilation aborted!
0 llvm-ld 0x00000000008708cf
1 llvm-ld 0x0000000000872b1a
2 libpthread.so.0 0x0000003b7f60f4a0
3 libc.so.6 0x0000003b7ea328f5 gsignal + 53
4 libc.so.6 0x0000003b7ea340d5 abort + 373
5 llvm-ld 0x000000000082c8e8
6 llvm-ld 0x000000000080852d
llvm::FPPassManager::runOnFunction(llvm::Function&) + 557
7 llvm-ld 0x000000000080862b
llvm::FPPassManager::runOnModule(llvm::Module&) + 75
8 llvm-ld 0x00000000008080b7
llvm::MPPassManager::runOnModule(llvm::Module&) + 503
9 llvm-ld 0x0000000000808237 llvm::PassManagerImpl::run(llvm::Module&)
+ 167
10 llvm-ld 0x00000000004a7d9f llvm::Optimize(llvm::Module*) + 495
11 llvm-ld 0x00000000004ac5f6 main + 1510
12 libc.so.6 0x0000003b7ea1ec5d __libc_start_main + 253
13 llvm-ld 0x00000000004a75f9
Stack dump:
0. Program arguments: llvm-ld -lpthread
-Lout/host/linux-x86/pr/sim/obj/lib/llvm
-Lout/host/linux-x86/pr/sim/obj/lib/llvm -L$ORIGIN/../lib/llvm
-Lout/host/linux-x86/pr/sim/obj/lib/llvm
out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/SineSource.o.bc
out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/audioloop.o.bc
-l=stagefright -l=log -l=utils -l=binder -o
out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/LINKED/audioloop.bc
1. Running pass 'Function Pass Manager' on module
'out/host/linux-x86/pr/sim/obj/EXECUTABLES/audioloop_intermediates/LINKED/audioloop.bc'.
2. Running pass 'Module Verifier' on function
'@_GLOBAL__I__ZN7android10DataSource9getUInt16ExPt'
This is using a Release+Debug+Asserts build of the LLVM 2.9 release.
The input files have all been built in (I think) the standard way. To reproduce
the bug, I guess you have to try it on this input yourself. Here's a tarball
that should have what you need (apologies for the additional chaff):
<http://www.cs.ox.ac.uk/people/stephen.kell/private/llvm-bug-20110629.tar.gz>
Background: I'm trying to build a large source tree (namely Android) as LLVM
bitcode. I'm doing so based on a vanilla build ("lunch sim-eng" in Android
build-speak) that uses gcc/binutils to output native binaries. I've hacked the
build system to generate bitcode alongside these.
In case there's something fishy about how I'm building the bitcode objects,
here's the make -n log, hopefully including mostly (only) relevant stuff.
<http://www.cs.ox.ac.uk/people/stephen.kell/private/llvm-bug-20110629-build-log.txt>
Thanks for any suggestions!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list