Re: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-03-18 Thread Richard Henderson
On 3/18/21 12:03 PM, Taylor Simpson wrote: Here's an example from float_convs from single: f32(-0x1.31f75000p-40:0xab98fba8) Softfloat:to uint64: 0 (INEXACT ) Hexagon:to uint64: 0 (INVALID) Ahh, so an ieee conformance issue in hexagon -- failure to defer the sign check til

RE: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-03-18 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Thursday, March 18, 2021 10:36 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: phi...@redhat.com; alex.ben...@linaro.org; laur...@vivier.eu; > a...@rev.ng; Brian Cain > Subject: Re: [PATCH v8 16/35] He

Re: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-03-18 Thread Richard Henderson
On 3/18/21 8:11 AM, Taylor Simpson wrote: Actually, softfloat raises inexact instead of invalid. Is there a way to override? Not true: switch (p.cls) { case float_class_snan: case float_class_qnan: s->float_exception_flags = orig_flags | float_flag_invalid;

RE: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-03-18 Thread Taylor Simpson
qemu-devel@nongnu.org > >> Cc: phi...@redhat.com; alex.ben...@linaro.org; laur...@vivier.eu; > >> a...@rev.ng; Brian Cain > >> Subject: Re: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) > >> utility functions > >> > >> On 2/7/21 9:46

Re: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-03-18 Thread Richard Henderson
/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions On 2/7/21 9:46 PM, Taylor Simpson wrote: +uint64_t conv_sf_to_8u(float32 in, float_status *fp_status); +uint32_t conv_sf_to_4u(float32 in, float_status *fp_status); +int64_t conv_sf_to_8s(float32 in, float_status *fp_status); +int32_t

RE: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-03-17 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Sunday, February 14, 2021 2:57 PM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: phi...@redhat.com; alex.ben...@linaro.org; laur...@vivier.eu; > a...@rev.ng; Brian Cain > Subject: Re: [PATCH v8 16/35] He

Re: [PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-02-14 Thread Richard Henderson
On 2/7/21 9:46 PM, Taylor Simpson wrote: > +uint64_t conv_sf_to_8u(float32 in, float_status *fp_status); > +uint32_t conv_sf_to_4u(float32 in, float_status *fp_status); > +int64_t conv_sf_to_8s(float32 in, float_status *fp_status); > +int32_t conv_sf_to_4s(float32 in, float_status *fp_status); > +

[PATCH v8 16/35] Hexagon (target/hexagon/conv_emu.[ch]) utility functions

2021-02-07 Thread Taylor Simpson
Signed-off-by: Taylor Simpson --- target/hexagon/conv_emu.h | 31 target/hexagon/conv_emu.c | 177 ++ 2 files changed, 208 insertions(+) create mode 100644 target/hexagon/conv_emu.h create mode 100644 target/hexagon/conv_emu.c diff --git