how to execute a *.ll with a thread_local global variable?

hi guys,
i wrote a small program that can load the *.ll file, parse it and execute
it.
but there is a thread_local global variable.
during execution, it says:
Cannot allocate thread local storage on this arch!
UNREACHABLE executed at /root/llvm/lib/Target/X86/X86JITInfo.cpp:585!.

it seems that i did not initialize the executionEngine right or i shouldnot
use InitializeNativeTarget()?
i don't know how to solve it. does anyone have the same problem?