label problem. debug info?


With the following code:

void problem(int i)



void test()


int arg = 0;



And compiling with debug info:

$ clang -emit-llvm-bc -x c -o - test.c -g | llvm-ld -native -disable-internalize -o a.out -

I get:

a.out.s:unknown:Undefined local symbol Llabel9


This only happens with -g and with -native.
Should I file this as a clang debug info bug, or is this a LLVM problem?
Do you have any suggestions for a workaround?


This is an LLVM issue, actually I have already filed a bug for it:

The problem is that optimization w/ debug info is not well supported.
Using: 'llvm-ld -disable-opt ...' should solve the problem (but, of course,
disable optimization).

- Daniel