http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45804

--- Comment #2 from Felipe Contreras <felipe.contreras at gmail dot com> 
2010-09-27 19:02:19 UTC ---
(In reply to comment #1)
> This particular case is invalid.  
> 
> The ARM ABI requires that short and char result types are extended to 32 bits
> (using signed or unsigned extension as appropriate) before being returned. 
> Since the compiler can't see inside the asm block to work out what is being
> done it cannot remove the uxth instruction on the result.

What do you mean by "returned"? This is an inline function, so it depends
entirely on what the referencing code is doing whether or not this value is
returned, as function return.

Say:

if ((read16_be(data) & 0xfffe) == 0xfff8)

> This does not mean that some of your x-refed reports are invalid though.

Come again?

Reply via email to