]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Unbreak pr110557.cc where long is 32-bit
authorXi Ruoyao <xry111@xry111.site>
Tue, 11 Jul 2023 07:55:54 +0000 (15:55 +0800)
committerXi Ruoyao <xry111@xry111.site>
Tue, 11 Jul 2023 08:08:11 +0000 (16:08 +0800)
On ports with 32-bit long, the test produced excess errors:

    gcc/testsuite/g++.dg/vect/pr110557.cc:12:8: warning: width of
    'Item::y' exceeds its type

Reported-by: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
gcc/testsuite/ChangeLog:

* g++.dg/vect/pr110557.cc: Use long long instead of long for
64-bit type.
(test): Remove an unnecessary cast.

gcc/testsuite/g++.dg/vect/pr110557.cc

index e1fbe1caac498786b42fdcd321677701672da40e..effb67e2df3f8c3b6973d5e2cad965e030d5d4fc 100644 (file)
@@ -1,7 +1,9 @@
 // { dg-additional-options "-mavx" { target { avx_runtime } } }
 
-static inline long
-min (long a, long b)
+typedef long long i64;
+
+static inline i64
+min (i64 a, i64 b)
 {
   return a < b ? a : b;
 }
@@ -9,16 +11,16 @@ min (long a, long b)
 struct Item
 {
   int x : 8;
-  long y : 55;
+  i64 y : 55;
   bool z : 1;
 };
 
-__attribute__ ((noipa)) long
+__attribute__ ((noipa)) i64
 test (Item *a, int cnt)
 {
-  long size = 0;
+  i64 size = 0;
   for (int i = 0; i < cnt; i++)
-    size = min ((long)a[i].y, size);
+    size = min (a[i].y, size);
   return size;
 }