I tested it and it was fine. I never knew this could be used like this.

Thank you!

在 2023/11/20 上午8:47, Xi Ruoyao 写道:
No functional change, just a cleanup.

gcc/ChangeLog:

        * config/loongarch/loongarch.md (lrint_allow_inexact): Remove.
        (<lrint_pattern><ANYF:mode><ANYFI:mode>2): Check if <LRINT>
        == UNSPEC_FTINT instead of <lrint_allow_inexact>.
---
  gcc/config/loongarch/loongarch.md | 5 +----
  1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/gcc/config/loongarch/loongarch.md 
b/gcc/config/loongarch/loongarch.md
index 78ed63f2132..1e019815451 100644
--- a/gcc/config/loongarch/loongarch.md
+++ b/gcc/config/loongarch/loongarch.md
@@ -585,9 +585,6 @@ (define_int_attr lrint_pattern [(UNSPEC_FTINT "lrint")
  (define_int_attr lrint_submenmonic [(UNSPEC_FTINT "")
                                    (UNSPEC_FTINTRM "rm")
                                    (UNSPEC_FTINTRP "rp")])
-(define_int_attr lrint_allow_inexact [(UNSPEC_FTINT "1")
-                                     (UNSPEC_FTINTRM "0")
-                                     (UNSPEC_FTINTRP "0")])
;; Iterator and attributes for bytepick.d
  (define_int_iterator bytepick_w_ashift_amount [8 16 24])
@@ -2384,7 +2381,7 @@ (define_insn "<lrint_pattern><ANYF:mode><ANYFI:mode>2"
        (unspec:ANYFI [(match_operand:ANYF 1 "register_operand" "f")]
                      LRINT))]
    "TARGET_HARD_FLOAT &&
-   (<lrint_allow_inexact>
+   (<LRINT> == UNSPEC_FTINT
      || flag_fp_int_builtin_inexact
      || !flag_trapping_math)"
    "ftint<lrint_submenmonic>.<ANYFI:ifmt>.<ANYF:fmt> %0,%1"

Reply via email to