qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] TCG helpers that return f16


From: Richard Henderson
Subject: Re: [Qemu-devel] TCG helpers that return f16
Date: Tue, 22 May 2018 07:55:04 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0

On 05/22/2018 07:50 AM, Peter Maydell wrote:
> Hi; I was reading about the x86-64 calling convention and I found
> out that apparently for returns of smaller-than-register types the
> high parts may contain garbage:
> https://stackoverflow.com/questions/36706721/is-a-sign-or-zero-extension-required-when-adding-a-32bit-offset-to-a-pointer-for/36760539#36760539

Yes, that's one reason I didn't want to get involved in returning a "real"
16-bit quantity.

> However, for TCG helper functions, although we allow the helper
> macro to say that the return type is 'f16', in helper-head.h we
> seem to just alias f16 as i32, and in dh_sizemask() we only record
> "is this 64 bits" and "is this signed". Am I missing the place
> where we zero-extend the value we get back from the helper so
> that it's the right thing in TCG's i32 ?

It happens in C, implicit in "typedef uint16_t float16".


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]