[LLVMdev] multiple return value assembler regression?

Chris Lattner clattner at apple.com
Fri Jun 24 13:45:08 PDT 2011


On Jun 24, 2011, at 9:29 AM, Bagel wrote:

> It appears the syntax for returning multiple values has changed since 2.9.
> Previous to that:
> 	ret  i32 %a, i32 %b
> worked.  The new syntax is something like:
> 	ret  { i32, i32 }{i32 %a, i32 %b}
> but this yields an error:
> mrv-bug.ll:5:24: error: invalid use of function-local name
> 	ret  { i32, i32 }{i32 %a, i32 %b}
> 	                      ^
> If %a and %b are replaced by constants, things work.

This is obsolete and deprecated syntax that is dropped in "llvm 3.0" (and thus on mainline right now).  If you run that through llvm-as|llvm-dis from llvm 2.9, you'll see the preferred syntax.

-Chris



More information about the llvm-dev mailing list