+2016-10-17 Andrew Pinski <apinski@cavium.com>
+
+ * gcc.target/aarch64/aapcs64/test_align-7.c: Use long
+ long instead of long.
+ * gcc.target/aarch64/cinc_common_1.c: Likewise.
+ * gcc.target/aarch64/combine_bfi_1.c: Likewise.
+ * gcc.target/aarch64/fmul_fcvt_1.c: Likewise.
+ * gcc.target/aarch64/mult-synth_4.c: Likewise.
+ * gcc.target/aarch64/pr68102_1.c: Likewise.
+ * gcc.target/aarch64/target_attr_3.c: Likewise.
+
2016-10-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/77988
struct s
{
- long x;
- long y;
+ long long x;
+ long long y;
};
/* This still has size 16, so is still passed by value. */
return x > 100 ? x + 4 : x + 3;
}
-long
-foodi (long x)
+long long
+foodi (long long x)
{
return x > 100 ? x - 2 : x - 1;
}
-long
-bardi (long x)
+long long
+bardi (long long x)
{
return x > 100 ? x + 4 : x + 3;
}
return (x & ~0xff) | (y & 0xff);
}
-long
-f5 (long x, long y)
+long long
+f5 (long long x, long long y)
{
return (x & ~0xffffffffull) | (y & 0xffffffff);
}
}
#define FUNC_DEFD(__a) \
-long \
+long long \
dffoo##__a (double x) \
{ \
return x * __a##.0; \
} \
\
-unsigned long \
+unsigned long long \
udffoo##__a (double x) \
{ \
return x * __a##.0; \
__builtin_abort (); \
if (usffoo##__a (__b) != (unsigned int)(__b * __a)) \
__builtin_abort (); \
- if (lsffoo##__a (__b) != (long)(__b * __a)) \
+ if (lsffoo##__a (__b) != (long long)(__b * __a)) \
__builtin_abort (); \
- if (ulsffoo##__a (__b) != (unsigned long)(__b * __a)) \
+ if (ulsffoo##__a (__b) != (unsigned long long)(__b * __a)) \
__builtin_abort (); \
} while (0)
#define FUNC_TESTD(__a, __b) \
do \
{ \
- if (dffoo##__a (__b) != (long)(__b * __a)) \
+ if (dffoo##__a (__b) != (long long)(__b * __a)) \
__builtin_abort (); \
- if (udffoo##__a (__b) != (unsigned long)(__b * __a)) \
+ if (udffoo##__a (__b) != (unsigned long long)(__b * __a)) \
__builtin_abort (); \
if (sdffoo##__a (__b) != (int)(__b * __a)) \
__builtin_abort (); \
/* { dg-do compile } */
/* { dg-options "-O2 -mcpu=cortex-a57 -save-temps" } */
-long
+long long
foo (int x, int y)
{
- return (long)x * 6L;
+ return (long long)x * 6LL;
}
/* { dg-final { scan-assembler-times "smull\tx\[0-9\]+, w\[0-9\]+, w\[0-9\]+" 1 } } */
typedef __Float64x1_t float64x1_t;
-typedef long int64_t;
+typedef long long int64_t;
extern int64_t bar (float64x1_t f);
and the fix is applied once. */
__attribute__ ((target ("fix-cortex-a53-835769")))
-unsigned long
-test (unsigned long a, double b, unsigned long c,
- unsigned long d, unsigned long *e)
+unsigned long long
+test (unsigned long long a, double b, unsigned long long c,
+ unsigned long long d, unsigned long long *e)
{
double result;
- volatile unsigned long tmp = *e;
+ volatile unsigned long long tmp = *e;
__asm__ __volatile ("// %0, %1"
: "=w" (result)
: "0" (b)
return c * d + d;
}
-unsigned long
-test2 (unsigned long a, double b, unsigned long c,
- unsigned long d, unsigned long *e)
+unsigned long long
+test2 (unsigned long long a, double b, unsigned long long c,
+ unsigned long long d, unsigned long long *e)
{
double result;
- volatile unsigned long tmp = *e;
+ volatile unsigned long long tmp = *e;
__asm__ __volatile ("// %0, %1"
: "=w" (result)
: "0" (b)