[LLVMdev] Bug in x86 JIT fast emitter.

Evan Cheng evan.cheng at apple.com
Sat Jun 13 14:22:00 PDT 2009


No plans. I recommend you hack on it. :-) Sorry, all features are done  
on demand.

Evan

On Jun 12, 2009, at 1:08 PM, Mark Shannon wrote:

> Evan,
>
> Any plans to add it any time soon?
> It would be really appreciated.
>
> Evan Cheng wrote:
>> X86 JIT does not yet support TLS.
>>
>> Evan
>> On Jun 12, 2009, at 2:48 AM, Mark Shannon wrote:
>>
>>> Hi there,
>>>
>>> I think I've found a bug in the x86 JIT. I get an assertion failure
>>> when
>>> using thread-local variables and the fast emitter.
>>> It only happens with the JIT, the fast emiiter and thread-locals.
>>> (The IR passes the verifier)
>>>
>>> Here's the failure:
>>>
>>> X86CodeEmitter.cpp:516:  
>>> void<unnamed>::Emitter::emitInstruction(const
>>> llvm::MachineInstr&, const llvm::TargetInstrDesc*): Assertion `0 &&
>>> "psuedo instructions should be removed before code emission"'  
>>> failed.
>>>
>>> There is a problem with submitting a bug-report, however.
>>> Since llc has no trouble with thread-locals, I cannot actually
>>> generate
>>> the assertion failure, without my compiler-generator.
>>> I can dump out the IR, but it is rather large.
>>>
>>> So,
>>> Is there a way to get llc to use the same emitter as the JIT, so
>>> that I
>>> can produce a reasonably sized test-case.
>>>
>>> I tried the -fast flag, but it compiles correctly.
>>>
>>> Cheers,
>>> Mark.
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list