]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Fix TYPE_PRECISION use in hashable_expr_equal_p
authorRichard Biener <rguenther@suse.de>
Fri, 23 Jun 2023 08:06:08 +0000 (10:06 +0200)
committerRichard Biener <rguenther@suse.de>
Mon, 26 Jun 2023 11:02:35 +0000 (13:02 +0200)
While the checks look unnecessary they probably are quick and
thus done early.  The following avoids using TYPE_PRECISION
on VECTOR_TYPEs by making the code match the comment which
talks about precision and signedness.  An alternative would
be to only retain the ERROR_MARK and TYPE_MODE checks or
use TYPE_PRECISION_RAW (but I like that least).

* tree-ssa-scopedtables.cc (hashable_expr_equal_p):
Use element_precision.

gcc/tree-ssa-scopedtables.cc

index 528ddf2a2abc2340d95044353431f2be75c2f7b5..e698ef973438c0243bf7f99e690d639afda33fda 100644 (file)
@@ -574,7 +574,7 @@ hashable_expr_equal_p (const struct hashable_expr *expr0,
       && (TREE_CODE (type0) == ERROR_MARK
          || TREE_CODE (type1) == ERROR_MARK
          || TYPE_UNSIGNED (type0) != TYPE_UNSIGNED (type1)
-         || TYPE_PRECISION (type0) != TYPE_PRECISION (type1)
+         || element_precision (type0) != element_precision (type1)
          || TYPE_MODE (type0) != TYPE_MODE (type1)))
     return false;