Nagaraju Mekala via llvm-dev
2019-Jun-27 11:04 UTC
[llvm-dev] Node emitted out of order - late
Hi All, I am porting an embedded 32bit RISC processor to LLVM-8. I was able to compile few basic applications successfully but for a particular application I am seeing below error: llvm-project/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp:317: unsigned int llvm::InstrEmitter::getVR(llvm::SDValue, llvm::DenseMap<llvm::SDValue, unsigned int>&): Assertion `I !VRBaseMap.end() && "Node emitted out of order - late"' failed I tried debugging it and found that CopyToReg is trying to use virtual register and somehow matching with "VRBaseMap.end()" as a result it is crashing. Can someone please help me out from this? I am really struck on this. Thanks in advance Nagaraju
Nagaraju Mekala via llvm-dev
2019-Jun-28 07:03 UTC
[llvm-dev] Node emitted out of order - late
Here is the simple testcase which is reproducing the error
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#include <ctype.h>
#include "aes.h"
int encfile(FILE *fin, FILE *fout, aes *ctx, char* fn)
{ char inbuf[16], outbuf[16];
unsigned long flen;
unsigned long i=0, l=0;
fillrand(outbuf, 16);
fseek(fin, 0, SEEK_END);
fgetpos(fin, &flen);
fseek(fin, 0, SEEK_SET);
fwrite(outbuf, 1, 16, fout);
return 0;
}
t9: i32 = FrameIndex<0>
clang-8: llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp:317: unsigned
int llvm::InstrEmitter::getVR(llvm::SDValue,
llvm::DenseMap<llvm::SDValue, unsigned int>&): Assertion `I
!VRBaseMap.end() && "Node emitted out of order - late"'
failed.
Thanks,
Nagaraju
On Thu, Jun 27, 2019 at 4:34 PM Nagaraju Mekala
<nagaraju.mekala87 at gmail.com> wrote:>
> Hi All,
>
> I am porting an embedded 32bit RISC processor to LLVM-8.
> I was able to compile few basic applications successfully but for a
> particular application I am seeing below error:
>
> llvm-project/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp:317:
> unsigned int llvm::InstrEmitter::getVR(llvm::SDValue,
> llvm::DenseMap<llvm::SDValue, unsigned int>&): Assertion `I !>
VRBaseMap.end() && "Node emitted out of order - late"'
failed
>
> I tried debugging it and found that CopyToReg is trying to use virtual
> register and somehow matching with "VRBaseMap.end()" as a result
it is
> crashing.
>
> Can someone please help me out from this?
> I am really struck on this.
>
> Thanks in advance
> Nagaraju