Commit 69bb863a by Kai Tietz Committed by Kai Tietz

pr14092-1.c: Mark intptr_t typedef to use extension.

	* gcc.dg/pr14092-1.c: Mark intptr_t typedef to use extension.
	* gcc.dg/pr24683.c: Avoid warning about casting constant string.
	* gcc.dg/pr52549.c: Add LLP64 case.
	* gcc.dg/pr53701.c: Use for uintptr_t typedef __UINTPTR_TYPE__.
	* gcc.dg/pr56510.c: Adjust for LLP64 targets.
	* gcc.dg/torture/pr51071-2.c: Likewise.
	* gcc.dg/tree-ssa/vrp72.c: Likewise.
	* gcc.dg/tree-ssa/vrp73.c: Likewise.
	* gcc.dg/tree-ssa/vrp75.c: Likewise.
	* gcc.dg/torture/pr53922.c: Skike for mingw-targets.
	* gcc.dg/weak/weak-1.c: Likewise.
	* gcc.dg/weak/weak-2.c: Likewise.
	* gcc.dg/weak/weak-3.c: Likewise.
	* gcc.dg/weak/weak-4.c: Likewise.
	* gcc.dg/weak/weak-5.c: Likewise.
	* gcc.dg/weak/weak-15.c: Likewise.
	* gcc.dg/weak/weak-16.c: Likewise.

From-SVN: r196540
parent b7aa4e9a
2013-03-08 Kai Tietz <ktietz@redhat.com> 2013-03-08 Kai Tietz <ktietz@redhat.com>
* gcc.dg/pr14092-1.c: Mark intptr_t typedef to use extension.
* gcc.dg/pr24683.c: Avoid warning about casting constant string.
* gcc.dg/pr52549.c: Add LLP64 case.
* gcc.dg/pr53701.c: Use for uintptr_t typedef __UINTPTR_TYPE__.
* gcc.dg/pr56510.c: Adjust for LLP64 targets.
* gcc.dg/torture/pr51071-2.c: Likewise.
* gcc.dg/tree-ssa/vrp72.c: Likewise.
* gcc.dg/tree-ssa/vrp73.c: Likewise.
* gcc.dg/tree-ssa/vrp75.c: Likewise.
* gcc.dg/torture/pr53922.c: Skike for mingw-targets.
* gcc.dg/weak/weak-1.c: Likewise.
* gcc.dg/weak/weak-2.c: Likewise.
* gcc.dg/weak/weak-3.c: Likewise.
* gcc.dg/weak/weak-4.c: Likewise.
* gcc.dg/weak/weak-5.c: Likewise.
* gcc.dg/weak/weak-15.c: Likewise.
* gcc.dg/weak/weak-16.c: Likewise.
* c-c++-common/pr54486.c: Skip test for mingw-targets. * c-c++-common/pr54486.c: Skip test for mingw-targets.
2013-03-07 Jakub Jelinek <jakub@redhat.com> 2013-03-07 Jakub Jelinek <jakub@redhat.com>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
/* Define this so that we are more portable. The testcase in the /* Define this so that we are more portable. The testcase in the
PR failed on 64-bit hosts. */ PR failed on 64-bit hosts. */
typedef __INTPTR_TYPE__ intptr_t; __extension__ typedef __INTPTR_TYPE__ intptr_t;
typedef struct _PLCI { typedef struct _PLCI {
unsigned char x; unsigned char x;
......
/* { dg-do compile { target fpic } } */ /* { dg-do compile { target fpic } } */
/* { dg-options "-O2 -fPIC" } */ /* { dg-options "-O2 -fPIC" } */
int *block; const int *block;
void final(unsigned int j) void final(unsigned int j)
{ {
unsigned int i; unsigned int i;
unsigned char *data = (unsigned char *)"\0"; const unsigned char *data = (const unsigned char *)"\0";
for (i = 0; i < 8; i++) for (i = 0; i < 8; i++)
for (; j + 63 < 1; j += 64) for (; j + 63 < 1; j += 64)
block = (int *) &data[j]; block = (const int *) &data[j];
} }
...@@ -10,4 +10,9 @@ _mark (int obj, int i, char *a) ...@@ -10,4 +10,9 @@ _mark (int obj, int i, char *a)
{ {
(char *)&(((int *)(obj)) [i]) - a; (char *)&(((int *)(obj)) [i]) - a;
} }
#elif __SIZEOF_POINTER__ == __SIZEOF_LONG_LONG__
__extension__ _mark (long long obj, int i, char *a)
{
(char *)&(((int *)(obj)) [i]) - a;
}
#endif #endif
/* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */ /* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */
/* { dg-options "-O3 -fselective-scheduling2 -fsel-sched-pipelining" } */ /* { dg-options "-O3 -fselective-scheduling2 -fsel-sched-pipelining" } */
typedef unsigned short int uint16_t; typedef unsigned short int uint16_t;
typedef unsigned long int uintptr_t; __extension__ typedef __UINTPTR_TYPE__ uintptr_t;
typedef struct GFX_VTABLE typedef struct GFX_VTABLE
{ {
int color_depth; int color_depth;
......
...@@ -2,11 +2,12 @@ ...@@ -2,11 +2,12 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O2 -g" } */ /* { dg-options "-O2 -g" } */
__extension__ typedef __INTPTR_TYPE__ intptr_t;
struct S { unsigned long s1; void **s2[0]; }; struct S { unsigned long s1; void **s2[0]; };
void **a, **b, **c, **d, **e, **f; void **a, **b, **c, **d, **e, **f;
static void ** static void **
baz (long x, long y) baz (intptr_t x, intptr_t y)
{ {
void **s = f; void **s = f;
*f = (void **) (y << 8 | (x & 0xff)); *f = (void **) (y << 8 | (x & 0xff));
......
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-fno-delete-null-pointer-checks" } */ /* { dg-options "-fno-delete-null-pointer-checks" } */
__extension__ typedef __UINTPTR_TYPE__ uintptr_t;
extern struct module __this_module; extern struct module __this_module;
static inline void static inline void
trace_module_get (struct module *mod, unsigned long ip) { } trace_module_get (struct module *mod, uintptr_t ip) { }
struct module; struct module;
static inline __attribute__((no_instrument_function)) static inline __attribute__((no_instrument_function))
int try_module_get(struct module *module) int try_module_get(struct module *module)
...@@ -16,7 +18,7 @@ int try_module_get(struct module *module) ...@@ -16,7 +18,7 @@ int try_module_get(struct module *module)
__label__ __here; __label__ __here;
asm(""); asm("");
__here: __here:
trace_module_get(module, (unsigned long)&&__here); trace_module_get(module, (uintptr_t)&&__here);
} }
else else
ret = 0; ret = 0;
......
/* { dg-do run } */ /* { dg-do run } */
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-skip-if "No undefined" { *-*-mingw* } { "*" } { "" } } */
/* { dg-skip-if "No undefined weak" { hppa*-*-hpux* && { ! lp64 } } { "*" } { "" } } */ /* { dg-skip-if "No undefined weak" { hppa*-*-hpux* && { ! lp64 } } { "*" } { "" } } */
/* { dg-options "-Wl,-undefined,dynamic_lookup" { target *-*-darwin* } } */ /* { dg-options "-Wl,-undefined,dynamic_lookup" { target *-*-darwin* } } */
......
/* { dg-options "-O2" } */ /* { dg-options "-O2" } */
typedef __INTPTR_TYPE__ intptr_t;
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val) static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val)
{ {
*(volatile uint64_t *)(long)addr = val; *(volatile uint64_t *)(intptr_t)addr = val;
}; };
static inline uint64_t cvmx_read64_uint64(uint64_t addr) static inline uint64_t cvmx_read64_uint64(uint64_t addr)
{ {
return *(volatile uint64_t *)(long)addr; return *(volatile uint64_t *)(intptr_t)addr;
}; };
static inline void cvmx_write_csr(uint64_t csr_addr, uint64_t val) static inline void cvmx_write_csr(uint64_t csr_addr, uint64_t val)
......
/* { dg-options "-O2" } */ /* { dg-options "-O2" } */
__extension__ typedef __INTPTR_TYPE__ intptr_t;
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val) static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val)
{ {
*(volatile uint64_t *)(long)addr = val; *(volatile uint64_t *)(intptr_t)addr = val;
}; };
static inline uint64_t cvmx_read64_uint64(uint64_t addr) static inline uint64_t cvmx_read64_uint64(uint64_t addr)
{ {
return *(volatile uint64_t *)(long)addr; return *(volatile uint64_t *)(intptr_t)addr;
}; };
static inline void cvmx_write_csr(uint64_t csr_addr, uint64_t val) static inline void cvmx_write_csr(uint64_t csr_addr, uint64_t val)
......
/* { dg-options "-O2" } */ /* { dg-options "-O2" } */
__extension__ typedef __INTPTR_TYPE__ intptr_t;
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val) static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val)
{ {
*(volatile uint64_t *)(long)addr = val; *(volatile uint64_t *)(intptr_t)addr = val;
}; };
static inline uint64_t cvmx_read64_uint64(uint64_t addr) static inline uint64_t cvmx_read64_uint64(uint64_t addr)
{ {
return *(volatile uint64_t *)(long)addr; return *(volatile uint64_t *)(intptr_t)addr;
}; };
static inline void cvmx_write_csr(uint64_t csr_addr, uint64_t val) static inline void cvmx_write_csr(uint64_t csr_addr, uint64_t val)
{ {
......
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-options "-fno-common" } */ /* { dg-options "-fno-common" } */
/* { dg-skip-if "" { *-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?a" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?b" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?b" } } */
......
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-options "-fno-common" } */ /* { dg-options "-fno-common" } */
/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?a" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?a" } } */
/* { dg-final { scan-assembler-not "weak\[^ \t\]*\[ \t\]_?b" } } */ /* { dg-final { scan-assembler-not "weak\[^ \t\]*\[ \t\]_?b" } } */
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
/* { dg-options "-fno-common -Os" } */ /* { dg-options "-fno-common -Os" } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?kallsyms_token_index" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?kallsyms_token_index" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?kallsyms_token_table" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?kallsyms_token_table" } } */
/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
extern int kallsyms_token_index[] __attribute__((weak)); extern int kallsyms_token_index[] __attribute__((weak));
extern int kallsyms_token_table[] __attribute__((weak)); extern int kallsyms_token_table[] __attribute__((weak));
......
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-options "-fno-common" } */ /* { dg-options "-fno-common" } */
/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1a" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1b" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1b" } } */
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
/* { dg-require-alias "" } */ /* { dg-require-alias "" } */
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-options "-fno-common -Waddress" } */ /* { dg-options "-fno-common -Waddress" } */
/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1a" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1b" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?ffoo1b" } } */
......
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-options "-fno-common" } */ /* { dg-options "-fno-common" } */
/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1a" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1b" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1b" } } */
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
/* { dg-require-weak "" } */ /* { dg-require-weak "" } */
/* { dg-require-alias "" } */ /* { dg-require-alias "" } */
/* { dg-options "-fno-common" } */ /* { dg-options "-fno-common" } */
/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1a" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1b" } } */ /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1b" } } */
......
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