I'm facing a problem with constant pool in large functions.<br><br>The LLVM prints constant pool at the beginning of functions.<br><br>In large functions loads can be far from constant pool. GCC resolves this situations by spreading constants throughtout functions. A C test and the code generated by LLVM and GCC are attached.
<br><br>As you can see in the following error the ldr is too far from constant:<br><br>$ arm-linux-gnueabi-as teste-llvm.s  <br>teste-llvm.s: Assembler messages:  teste-llvm.s:1039: <br>Error: bad immediate value for offset (4120) 
<br><br>Any ideas?<br><br><br>Lauro<br>