A Problem about LLVM Backend Port

I am porting llvm backend to our own target backend, which is based on MIPS arch. But I come across a problem when I run “llc -march=(our processor name) sum.ll” at the DAGtoDAG stage:
”LLVM ERROR: can’t select i32=FrameIndex<0> [ID] = 3 “

— zyn

This means your backend does not natively support this SDNode. You have to use the DAG Legalizer to either promote, expand, or customize it.

See http://llvm.org/docs/CodeGenerator.html#selectiondag-legalizetypes-phase

Hope this helps,
Ziqiang

I am porting llvm backend to our own target backend, which is based on MIPS arch. But I come across a problem when I run “llc -march=(our processor name) sum.ll” at the DAGtoDAG stage:
”LLVM ERROR: can’t select i32=FrameIndex<0> [ID] = 3 “

Have you added any code to YourPortTargetLowering::LowerOperation() to
custom lower FrameIndex nodes?