[LLVMdev] A problem on returning value for functions
t.p.northover at gmail.com
Tue Jul 9 05:07:49 PDT 2013
> The headache is when I pass option -O0 to llc, the generated codes are
> correct. However, if I omit -O0 and use default compiling options, the
> instruction "movi r0, #1234" does not show.
It's probably being eliminated as dead code. You want to make sure
that during ISelLowering your RET instruction has %R0 as one of its
operands (check in the -view-isel-dags step).
That's the most likely cause anyway. If not, posting the DAG might
help, or the output of "llc -debug" on an equivalent .ll file.
More information about the llvm-dev