[LLVMdev] Unreachable executed with fast Regalloc and Sparc backend

Venkatraman Govindaraju venkatra at cs.wisc.edu
Fri Jan 7 12:36:26 PST 2011


Hello,

  When I run LLC with option "-O0 -march=sparc" on following testcase,
fast register allocator crashes with "UNREACHABLE executed" error. LLC
generates code successfully with other standard register allocators
available.


$ cat call.ll

define void @test() nounwind {
entry:
  %0 = tail call i32 (...)* @foo() nounwind
  tail call void (...)* @bar() nounwind
  ret void
}

declare i32 @foo(...)

declare void @bar(...)

$ llc -march=sparc -O0 call.ll
Instruction uses an allocated register
UNREACHABLE executed at
/scratch/venkatra/projects/llvm/src/llvm/lib/CodeGen/RegAllocFast.cpp:339!
...


Thanks,
Venkatraman



More information about the llvm-dev mailing list