diff options
| author | Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> | 2025-10-31 15:22:35 +0900 |
|---|---|---|
| committer | Max Filippov <jcmvbkbc@gmail.com> | 2025-10-31 21:38:53 -0700 |
| commit | 0e71df96e2e34d1d6163bdeab06edecb34fb1c16 (patch) | |
| tree | 5a2a80411cf1061b007afde1d536f4e20410b87c /gcc/rust/parse/rust-parse-impl.h | |
| parent | d0c2849e8a30a24505ce90bb8dde402c45def674 (diff) | |
| download | gcc-0e71df96e2e34d1d6163bdeab06edecb34fb1c16.zip gcc-0e71df96e2e34d1d6163bdeab06edecb34fb1c16.tar.gz gcc-0e71df96e2e34d1d6163bdeab06edecb34fb1c16.tar.bz2 | |
xtensa: Make use of ROUND.S instruction
Due to inconsistencies in the behavior of rounding half, making this
machine instruction available was retracted in a previous commit (5f3b5b0616fe883e86e95d9476371cf87059ca7f),
but it may be useful to have it available if strict implementation of
floating-point arithmetic is not required.
gcc/ChangeLog:
* config/xtensa/xtensa.md
(c_enum "unspec", int_iterator ANY_ROUND): Add UNSPEC_ROUND.
(int_attr m_round): Add a pair of UNSPEC_ROUND and "round".
(int_attr c_round): New integer iterator attribute, that expands
to "flag_unsafe_math_optimizations" in the case of UNSPEC_ROUND,
and to "1" otherwise.
(l<m_round>sfsi2, *l<m_round>sfsi2_2x, *l<m_round>sfsi2_scaled):
Append " && <c_round>" to the conditions.
Diffstat (limited to 'gcc/rust/parse/rust-parse-impl.h')
0 files changed, 0 insertions, 0 deletions
