[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] a5a5f5: fpu/softfloat: int_to_float ensure r
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] a5a5f5: fpu/softfloat: int_to_float ensure r fully initial... |
Date: |
Tue, 15 May 2018 07:59:53 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: a5a5f5e2e437db6c19164b734f838a7bf9e0c5ec
https://github.com/qemu/qemu/commit/a5a5f5e2e437db6c19164b734f838a7bf9e0c5ec
Author: Alex Bennée <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M fpu/softfloat.c
Log Message:
-----------
fpu/softfloat: int_to_float ensure r fully initialised
Reported by Coverity (CID1390635). We ensure this for uint_to_float
later on so we might as well mirror that.
Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: 333583757c5e910b040bef793974773635ce1918
https://github.com/qemu/qemu/commit/333583757c5e910b040bef793974773635ce1918
Author: Peter Maydell <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M fpu/softfloat.c
Log Message:
-----------
fpu/softfloat: Don't set Invalid for float-to-int(MAXINT)
In float-to-integer conversion, if the floating point input
converts exactly to the largest or smallest integer that
fits in to the result type, this is not an overflow.
In this situation we were producing the correct result value,
but were incorrectly setting the Invalid flag.
For example for Arm A64, "FCVTAS w0, d0" on an input of
0x41dfffffffc00000 should produce 0x7fffffff and set no flags.
Fix the boundary case to take the right half of the if()
statements.
This fixes a regression from 2.11 introduced by the softfloat
refactoring.
Cc: address@hidden
Fixes: ab52f973a50
Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Message-id: address@hidden
Commit: bcc531f0364796104df4443d17f99b5fb494eca2
https://github.com/qemu/qemu/commit/bcc531f0364796104df4443d17f99b5fb494eca2
Author: Peter Maydell <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/cpu.c
Log Message:
-----------
target/arm: Fix fp_status_f16 tininess before rounding
In commit d81ce0ef2c4f105 we added an extra float_status field
fp_status_fp16 for Arm, but forgot to initialize it correctly
by setting it to float_tininess_before_rounding. This currently
will only cause problems for the new V8_FP16 feature, since the
float-to-float conversion code doesn't use it yet. The effect
would be that we failed to set the Underflow IEEE exception flag
in all the cases where we should.
Add the missing initialization.
Fixes: d81ce0ef2c4f105
Cc: address@hidden
Reviewed-by: Richard Henderson <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Message-id: address@hidden
Commit: 68130236e30a1ec64363f4915349feee181bfbc1
https://github.com/qemu/qemu/commit/68130236e30a1ec64363f4915349feee181bfbc1
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FMOV (general) for fp16
Adding the fp16 moves to/from general registers.
Cc: address@hidden
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: 8c738d430796edeae5e13d6daf0895c02c62bd54
https://github.com/qemu/qemu/commit/8c738d430796edeae5e13d6daf0895c02c62bd54
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Early exit after unallocated_encoding in disas_fp_int_conv
No sense in emitting code after the exception.
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: 564a0632504fad840491aa9a59453f4e64a316c4
https://github.com/qemu/qemu/commit/564a0632504fad840491aa9a59453f4e64a316c4
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/helper.c
M target/arm/helper.h
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FCVT (scalar, integer) for fp16
Cc: address@hidden
Reviewed-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Commit: 2752728016bef06e7c9cfb961019272859beeca4
https://github.com/qemu/qemu/commit/2752728016bef06e7c9cfb961019272859beeca4
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FCVT (scalar, fixed-point) for fp16
Cc: address@hidden
Reviewed-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Commit: 3d99d931266eaeaf7e83703a53f32232cd6faad7
https://github.com/qemu/qemu/commit/3d99d931266eaeaf7e83703a53f32232cd6faad7
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Introduce and use read_fp_hreg
Cc: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Commit: b8f5171cf01420a9f0ee895c5591e9b9914f391a
https://github.com/qemu/qemu/commit/b8f5171cf01420a9f0ee895c5591e9b9914f391a
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FP data-processing (2 source) for fp16
We missed all of the scalar fp16 binary operations.
Cc: address@hidden
Reviewed-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Commit: 95f9864fde6078e2d2c036a07cc4fe44f199be96
https://github.com/qemu/qemu/commit/95f9864fde6078e2d2c036a07cc4fe44f199be96
Author: Richard Henderson <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FP data-processing (3 source) for fp16
We missed all of the scalar fp16 fma operations.
Cc: address@hidden
Reviewed-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Commit: 7a1929256ea1a03df12625e75ed571c60dca5bfb
https://github.com/qemu/qemu/commit/7a1929256ea1a03df12625e75ed571c60dca5bfb
Author: Alex Bennée <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/helper-a64.c
M target/arm/helper-a64.h
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FCMP for fp16
These where missed out from the rest of the half-precision work.
Cc: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Message-id: address@hidden
[rth: Diagnose lack of FP16 before fp_access_check]
Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: ace97feef3613194900d4eb9ffc6819b840fbaeb
https://github.com/qemu/qemu/commit/ace97feef3613194900d4eb9ffc6819b840fbaeb
Author: Alex Bennée <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FCSEL for fp16
These were missed out from the rest of the half-precision work.
Cc: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Message-id: address@hidden
[rth: Fix erroneous check vs type]
Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: 6ba28ddb9be37bdb67e3e38007a53ccbdcd010df
https://github.com/qemu/qemu/commit/6ba28ddb9be37bdb67e3e38007a53ccbdcd010df
Author: Alex Bennée <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Implement FMOV (immediate) for fp16
All the hard work is already done by vfp_expand_imm, we just need to
make sure we pick up the correct size.
Cc: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Message-id: address@hidden
[rth: Merge unallocated_encoding check with TCGMemOp conversion.]
Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: 905edee9101c54cda5b72286b7f7607cf1c3c4d1
https://github.com/qemu/qemu/commit/905edee9101c54cda5b72286b7f7607cf1c3c4d1
Author: Alex Bennée <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M target/arm/translate-a64.c
Log Message:
-----------
target/arm: Fix sqrt_f16 exception raising
We are meant to explicitly pass fpst, not cpu_env.
Cc: address@hidden
Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Tested-by: Alex Bennée <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Commit: f6fb1f9b319feac09119848d206b07640ddd39e7
https://github.com/qemu/qemu/commit/f6fb1f9b319feac09119848d206b07640ddd39e7
Author: Philippe Mathieu-Daudé <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M hw/sd/sd.c
Log Message:
-----------
sdcard: Correct CRC16 offset in sd_function_switch()
Per the Physical Layer Simplified Spec. "4.3.10.4 Switch Function Status":
The block length is predefined to 512 bits
and "4.10.2 SD Status":
The SD Status contains status bits that are related to the SD Memory Card
proprietary features and may be used for future application-specific usage.
The size of the SD Status is one data block of 512 bit. The content of this
register is transmitted to the Host over the DAT bus along with a 16-bit CRC.
Thus the 16-bit CRC goes at offset 64.
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Commit: ae7651804748c6b479d5ae09aeac4edb9c44f76e
https://github.com/qemu/qemu/commit/ae7651804748c6b479d5ae09aeac4edb9c44f76e
Author: Peter Maydell <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M accel/tcg/cpu-exec.c
M include/qemu/log.h
M util/log.c
Log Message:
-----------
tcg: Optionally log FPU state in TCG -d cpu logging
Usually the logging of the CPU state produced by -d cpu is sufficient
to diagnose problems, but sometimes you want to see the state of
the floating point registers as well. We don't want to enable that
by default as it adds a lot of extra data to the log; instead,
allow it to be optionally enabled via -d fpu.
Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Message-id: address@hidden
Commit: 0275e6b66c0947f83ad0d8dd687eadbcbf0c5ec5
https://github.com/qemu/qemu/commit/0275e6b66c0947f83ad0d8dd687eadbcbf0c5ec5
Author: Peter Maydell <address@hidden>
Date: 2018-05-15 (Tue, 15 May 2018)
Changed paths:
M accel/tcg/cpu-exec.c
M fpu/softfloat.c
M hw/sd/sd.c
M include/qemu/log.h
M target/arm/cpu.c
M target/arm/helper-a64.c
M target/arm/helper-a64.h
M target/arm/helper.c
M target/arm/helper.h
M target/arm/translate-a64.c
M util/log.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20180515'
into staging
target-arm queue:
* Fix coverity nit in int_to_float code
* Don't set Invalid for float-to-int(MAXINT)
* Fix fp_status_f16 tininess before rounding
* Add various missing insns from the v8.2-FP16 extension
* Fix sqrt_f16 exception raising
* sdcard: Correct CRC16 offset in sd_function_switch()
* tcg: Optionally log FPU state in TCG -d cpu logging
# gpg: Signature made Tue 15 May 2018 15:06:09 BST
# gpg: using RSA key 3C2525ED14360CDE
# gpg: Good signature from "Peter Maydell <address@hidden>"
# gpg: aka "Peter Maydell <address@hidden>"
# gpg: aka "Peter Maydell <address@hidden>"
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83 15CF 3C25 25ED 1436 0CDE
* remotes/pmaydell/tags/pull-target-arm-20180515:
tcg: Optionally log FPU state in TCG -d cpu logging
sdcard: Correct CRC16 offset in sd_function_switch()
target/arm: Fix sqrt_f16 exception raising
target/arm: Implement FMOV (immediate) for fp16
target/arm: Implement FCSEL for fp16
target/arm: Implement FCMP for fp16
target/arm: Implement FP data-processing (3 source) for fp16
target/arm: Implement FP data-processing (2 source) for fp16
target/arm: Introduce and use read_fp_hreg
target/arm: Implement FCVT (scalar, fixed-point) for fp16
target/arm: Implement FCVT (scalar, integer) for fp16
target/arm: Early exit after unallocated_encoding in disas_fp_int_conv
target/arm: Implement FMOV (general) for fp16
target/arm: Fix fp_status_f16 tininess before rounding
fpu/softfloat: Don't set Invalid for float-to-int(MAXINT)
fpu/softfloat: int_to_float ensure r fully initialised
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/ad1b4ec39caa...0275e6b66c09
**NOTE:** This service been marked for deprecation:
https://developer.github.com/changes/2018-04-25-github-services-deprecation/
Functionality will be removed from GitHub.com on January 31st, 2019.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] a5a5f5: fpu/softfloat: int_to_float ensure r fully initial...,
GitHub <=