Every inline assembly function (not statement level) should end with a return statement. Use the rts statement for ordinary C functions, as the following listing shows:
asm void f(void) { add.l d4, d5} // Error, no RTS statement asm void g(void) { add.l d4, d5 rts} // OK
For statement-level returns, refer to the return and naked topics.