Commit 6018b746 by Steve Ellcey Committed by Steve Ellcey

re PR testsuite/24962 (gcc.target/ia64/20030811-1.c (test for excess errors) fails with -milp32)

	PR testsuite/24962
	* gcc.target/ia64/20030811-1.c: Change 'long' to 'long long'.

From-SVN: r110034
parent 692eeb34
2006-01-20 Steve Ellcey <sje@cup.hp.com>
PR testsuite/24962
* gcc.target/ia64/20030811-1.c: Change 'long' to 'long long'.
2006-01-20 Richard Guenther <rguenther@suse.de>
Steven Bosscher <stevenb.gcc@gmail.com>
......@@ -2,23 +2,23 @@
/* { dg-do compile } */
/* { dg-options "-O2 -frename-registers" } */
static inline unsigned long
static inline unsigned long long
foo (void)
{
unsigned long x;
unsigned long long x;
__asm__ __volatile__ ("" : "=r" (x) :: "memory");
return x;
}
static inline void
bar (unsigned long x, unsigned long y)
bar (unsigned long long x, unsigned long long y)
{
__asm__ __volatile__ ("" :: "r"(x), "r"(y) : "memory");
}
static inline void
baz (unsigned long x, unsigned long y, unsigned long z, unsigned long p,
unsigned long q)
baz (unsigned long long x, unsigned long long y, unsigned long long z,
unsigned long long p, unsigned long long q)
{
__asm__ __volatile__ ("" :: "r" (q << 2) : "memory");
__asm__ __volatile__ ("" :: "r" (z) : "memory");
......@@ -28,10 +28,10 @@ baz (unsigned long x, unsigned long y, unsigned long z, unsigned long p,
__asm__ __volatile__ ("" :: "r" (y), "r" (p) : "memory");
}
static inline unsigned long
ffz (unsigned long x)
static inline unsigned long long
ffz (unsigned long long x)
{
unsigned long r;
unsigned long long r;
__asm__ ("" : "=r" (r) : "r" (x & (~x - 1)));
return r;
}
......@@ -41,19 +41,19 @@ void die (const char *, ...) __attribute__ ((noreturn));
void
test (void *x)
{
unsigned long a, c;
unsigned long long a, c;
a = foo ();
bar (0xc000000000000000, 0x660);
bar (0xa00000000000c000, 0x539);
baz (2, 1, 0xa000000000008000,
({ unsigned long b;
b = ({ unsigned long d; __asm__ ("" : "=r" (d) : "r" (x)); d; })
+ 0x10000000000661;
bar (0xc000000000000000LL, 0x660);
bar (0xa00000000000c000LL, 0x539);
baz (2, 1, 0xa000000000008000LL,
({ unsigned long long b;
b = ({ unsigned long long d; __asm__ ("" : "=r" (d) : "r" (x)); d; })
+ 0x10000000000661LL;
b;
}),
14);
c = ffz (0x1fffffffffffffff);
c = ffz (0x1fffffffffffffffLL);
if (c < 51 || c > 61)
die ("die", c - 1);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment