[llvm-commits] [RFC] Patch 1/3 for the native code compiler of Erlang

Jakob Stoklund Olesen stoklund at 2pi.dk
Tue May 15 13:31:05 PDT 2012


On May 14, 2012, at 3:26 PM, Yiannis Tsiouris <gtsiour at softlab.ntua.gr> wrote:

> On 05/14/2012 06:26 PM, Jakob Stoklund Olesen wrote:
>> 
>> 
>> On May 13, 2012, at 3:31 PM, Yiannis Tsiouris wrote:
>> 
>>> I reproduced the problem by just adding a " CCIfType<[i8, i16, i32],
>>> CCPromoteToType<i64>>," line in RetCC_X86Common in a vanilla LLVM tree
>>> and trying to compile a simple function that uses i32 vregs without a
>>> cc. Is this normal or a bug? I could try to fix it if this is the case.
>> 
>> This looks like something worth tracking down.
>> 
>> /jakob
>> 
> I attach an even smaller testcase that breaks the Expanding Post-RA Pseudo Instrs pass. The test uses a calling convention that promotes types both in CC and RetCC (CallingConvention::HiPE). I also attach the LOG of trying to compile it with llc and -debug (i.e. llc < promote-fail-in-retcc.ll -debug).
> 
> I'm trying to track this down so any hint is more than welcome! :-)

It's probably breaking because it is emitting COPY instructions with mismatched registers, trying to copy an 8-bit register to a 64-bit register.

/jakob

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120515/cdea2835/attachment.html>


More information about the llvm-commits mailing list