20040112-1.c: Fix defaulting to int.

* gcc.target/i386/20040112-1.c: Fix defaulting to int.
	* gcc.target/i386/avxfp-1.c: Likewise.
	* gcc.target/i386/avxfp-2.c: Likewise.
	* gcc.target/i386/cadd.c: Likewise.
	* gcc.target/i386/cmov2.c: Likewise.
	* gcc.target/i386/cmov3.c: Likewise.
	* gcc.target/i386/cmov4.c: Likewise.
	* gcc.target/i386/cold-attribute-1.c: Likewise.
	* gcc.target/i386/cvt-1.c: Likewise.
	* gcc.target/i386/fpcvt-1.c: Likewise.
	* gcc.target/i386/fpcvt-2.c: Likewise.
	* gcc.target/i386/fpcvt-3.c: Likewise.
	* gcc.target/i386/local.c: Likewise.
	* gcc.target/i386/memcpy-2.c: Likewise.
	* gcc.target/i386/memcpy-3.c: Likewise.
	* gcc.target/i386/memset-1.c: Likewise.
	* gcc.target/i386/minmax-1.c: Likewise.
	* gcc.target/i386/minmax-2.c: Likewise.
	* gcc.target/i386/pr45352-2.c: Likewise.
	* gcc.target/i386/pr46253.c: Likewise.
	* gcc.target/i386/pr53623.c: Likewise.
	* gcc.target/i386/pr60902.c: Likewise.
	* gcc.target/i386/pr57003.c: Likewise.
	* gcc.target/i386/sse-14.c: Likewise.
	* gcc.target/i386/sse-19.c: Likewise.
	* gcc.target/i386/sse-22.c: Likewise.
	* gcc.target/i386/sse4a-extract.c: Likewise.
	* gcc.target/i386/sse4a-insert.c: Likewise.
	* gcc.target/i386/ssefp-1.c: Likewise.
	* gcc.target/i386/ssefp-2.c: Likewise.
	* gcc.target/i386/testimm-10.c: Likewise.
	* gcc.target/i386/vectorize4-avx.c: Likewise.
	* gcc.target/i386/980709-1.c: Fix implicit declarations.
	* gcc.target/i386/avx-pr57233.c: Likewise.
	* gcc.target/i386/avx2-pr57233.c: Likewise.
	* gcc.target/i386/avx2-vpop-check.h: Likewise.
	* gcc.target/i386/avx256-unaligned-load-7.c: Likewise.
	* gcc.target/i386/avx256-unaligned-store-7.c: Likewise.
	* gcc.target/i386/crc32-4.c: Likewise.
	* gcc.target/i386/pr20204.c: Likewise.
	* gcc.target/i386/pr23570.c: Likewise.
	* gcc.target/i386/pr26449-1.c: Likewise.
	* gcc.target/i386/pr28839.c: Likewise.
	* gcc.target/i386/pr37101.c: Likewise.
	* gcc.target/i386/pr61923.c: Likewise.
	* gcc.target/i386/shrink_wrap_1.c: Likewise.
	* gcc.target/i386/sse2-pr57233.c: Likewise.
	* gcc.target/i386/vect-abs-s16.c: Likewise.
	* gcc.target/i386/vect-abs-s32.c: Likewise.
	* gcc.target/i386/vect-abs-s8.c: Likewise.
	* gcc.target/i386/xop-pr57233.c: Likewise.
	* gcc.target/i386/xop-rotate2-vector.c: Likewise.
	* gcc.target/i386/cold-attribute-2.c: Fix defaulting to int.  Fix
	implicit declarations.
	* gcc.target/i386/xop-shift1-vector.c: Fix typo.
	* gcc.target/i386/xop-shift2-vector.c: Likewise.
	* gcc.target/i386/xop-shift3-vector.c: Likewise.

From-SVN: r215939
This commit is contained in:
Marek Polacek 2014-10-06 13:29:42 +00:00 committed by Marek Polacek
parent 9918374125
commit 1a3e2d6925
57 changed files with 147 additions and 26 deletions

View File

@ -1,3 +1,63 @@
2014-10-06 Marek Polacek <polacek@redhat.com>
* gcc.target/i386/20040112-1.c: Fix defaulting to int.
* gcc.target/i386/avxfp-1.c: Likewise.
* gcc.target/i386/avxfp-2.c: Likewise.
* gcc.target/i386/cadd.c: Likewise.
* gcc.target/i386/cmov2.c: Likewise.
* gcc.target/i386/cmov3.c: Likewise.
* gcc.target/i386/cmov4.c: Likewise.
* gcc.target/i386/cold-attribute-1.c: Likewise.
* gcc.target/i386/cvt-1.c: Likewise.
* gcc.target/i386/fpcvt-1.c: Likewise.
* gcc.target/i386/fpcvt-2.c: Likewise.
* gcc.target/i386/fpcvt-3.c: Likewise.
* gcc.target/i386/local.c: Likewise.
* gcc.target/i386/memcpy-2.c: Likewise.
* gcc.target/i386/memcpy-3.c: Likewise.
* gcc.target/i386/memset-1.c: Likewise.
* gcc.target/i386/minmax-1.c: Likewise.
* gcc.target/i386/minmax-2.c: Likewise.
* gcc.target/i386/pr45352-2.c: Likewise.
* gcc.target/i386/pr46253.c: Likewise.
* gcc.target/i386/pr53623.c: Likewise.
* gcc.target/i386/pr60902.c: Likewise.
* gcc.target/i386/pr57003.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.
* gcc.target/i386/sse-19.c: Likewise.
* gcc.target/i386/sse-22.c: Likewise.
* gcc.target/i386/sse4a-extract.c: Likewise.
* gcc.target/i386/sse4a-insert.c: Likewise.
* gcc.target/i386/ssefp-1.c: Likewise.
* gcc.target/i386/ssefp-2.c: Likewise.
* gcc.target/i386/testimm-10.c: Likewise.
* gcc.target/i386/vectorize4-avx.c: Likewise.
* gcc.target/i386/980709-1.c: Fix implicit declarations.
* gcc.target/i386/avx-pr57233.c: Likewise.
* gcc.target/i386/avx2-pr57233.c: Likewise.
* gcc.target/i386/avx2-vpop-check.h: Likewise.
* gcc.target/i386/avx256-unaligned-load-7.c: Likewise.
* gcc.target/i386/avx256-unaligned-store-7.c: Likewise.
* gcc.target/i386/crc32-4.c: Likewise.
* gcc.target/i386/pr20204.c: Likewise.
* gcc.target/i386/pr23570.c: Likewise.
* gcc.target/i386/pr26449-1.c: Likewise.
* gcc.target/i386/pr28839.c: Likewise.
* gcc.target/i386/pr37101.c: Likewise.
* gcc.target/i386/pr61923.c: Likewise.
* gcc.target/i386/shrink_wrap_1.c: Likewise.
* gcc.target/i386/sse2-pr57233.c: Likewise.
* gcc.target/i386/vect-abs-s16.c: Likewise.
* gcc.target/i386/vect-abs-s32.c: Likewise.
* gcc.target/i386/vect-abs-s8.c: Likewise.
* gcc.target/i386/xop-pr57233.c: Likewise.
* gcc.target/i386/xop-rotate2-vector.c: Likewise.
* gcc.target/i386/cold-attribute-2.c: Fix defaulting to int. Fix
implicit declarations.
* gcc.target/i386/xop-shift1-vector.c: Fix typo.
* gcc.target/i386/xop-shift2-vector.c: Likewise.
* gcc.target/i386/xop-shift3-vector.c: Likewise.
2014-10-06 Marek Polacek <polacek@redhat.com>
* gcc.dg/20001012-1.c: Fix defaulting to int.

View File

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler "testb" } } */
void
ftn (char *sp)
{
char status;

View File

@ -13,6 +13,7 @@ extern __inline__ int test_and_set_bit(int nr, volatile void * addr)
struct buffer_head {
unsigned long b_state;
};
void __wait_on_buffer (struct buffer_head *);
extern void lock_buffer(struct buffer_head * bh)
{
while (test_and_set_bit(2 , &bh->b_state))

View File

@ -4,6 +4,8 @@
#include "avx-check.h"
int do_main (void);
static void
avx_test (void)
{

View File

@ -4,6 +4,8 @@
#include "avx2-check.h"
int do_main (void);
static void
avx2_test (void)
{

View File

@ -6,6 +6,7 @@ TYPE a[SIZE];
TYPE b[SIZE];
TYPE c[SIZE];
volatile TYPE c_ref[SIZE];
extern int memcmp (const void *, const void *, size_t);
__attribute__ ((__noinline__))
void

View File

@ -10,6 +10,7 @@ char **ep;
char **fp;
char **mp;
char **lp;
extern int strcmp (const char *, const char *);
__attribute__ ((noinline))
void

View File

@ -8,6 +8,7 @@
char **ep;
char **fp;
extern int strcmp (const char *, const char *);
__attribute__ ((noinline))
void

View File

@ -3,12 +3,14 @@
/* { dg-final { scan-assembler "vmaxsd" } } */
/* { dg-final { scan-assembler "vminsd" } } */
double x;
void
t()
{
x=x>5?x:5;
}
double x;
void
q()
{
x=x<5?x:5;

View File

@ -3,12 +3,14 @@
/* { dg-final { scan-assembler "vmaxsd" } } */
/* { dg-final { scan-assembler "vminsd" } } */
double x;
void
q()
{
x=x<5?5:x;
}
double x;
void
q1()
{
x=x>5?5:x;

View File

@ -6,6 +6,7 @@ extern void abort (void);
/* Conditional increment is best done using sbb $-1, val. */
int t[]={0,0,0,0,1,1,1,1,1,1};
void
q()
{
int sum=0;
@ -16,6 +17,7 @@ q()
if (sum != 6)
abort ();
}
int
main()
{
int i;

View File

@ -3,6 +3,7 @@
/* { dg-final { scan-assembler "sbb" } } */
/* This conditional move is fastest to be done using sbb. */
int
t(unsigned int a, unsigned int b)
{
return (a<=b?5:-5);

View File

@ -3,6 +3,7 @@
/* { dg-final { scan-assembler "cmov\[^3\]" } } */
/* This conditional move is fastest to be done using cmov. */
int
t(int a, int b)
{
return (a<=b?5:-5);

View File

@ -6,6 +6,7 @@
int ARCHnodes;
int *nodekind;
float *nodekindf;
void
t()
{
int i;

View File

@ -2,11 +2,12 @@
/* { dg-options "-O2" } */
#include <string.h>
static inline
__attribute__ ((cold))
__attribute__ ((cold)) void
my_cold_memset (void *a, int b,int c)
{
memset (a,b,c);
}
void
t(void *a,int b,int c)
{
if (a)

View File

@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 --param=builtin-expect-probability=100" } */
#include <string.h>
void cold_hint (void);
int
t(int c)
{
if (__builtin_expect (c, 0))

View File

@ -2,6 +2,9 @@
/* { dg-options "-O2 -mno-sse4.2 -mno-crc32" } */
/* { dg-final { scan-assembler "__builtin_ia32_crc32di" } } */
unsigned long long __builtin_ia32_crc32di (unsigned long long x,
unsigned long long y);
unsigned long long
crc32d (unsigned long long x, unsigned long long y)
{

View File

@ -5,6 +5,7 @@
int a,a1;
double b;
float b1;
void
t()
{
a=b;

View File

@ -2,6 +2,7 @@
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler-not "cvtss2sd" } } */
float a,b;
int
main()
{
a=b*3.0;

View File

@ -2,6 +2,7 @@
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler-not "cvtss2sd" } } */
float a,b;
int
main()
{
return a<0.0;

View File

@ -3,6 +3,7 @@
/* { dg-final { scan-assembler-not "cvtss2sd" } } */
extern double fabs (double);
float a,b;
int
main()
{
a=fabs(b)+1.0;

View File

@ -4,7 +4,7 @@
/* { dg-final { scan-assembler "magic\[^\\n\]*(edi|ecx)" { target { ! { ia32 } } } } } */
/* Verify that local calling convention is used. */
static t(int) __attribute__ ((noinline));
static void t(int) __attribute__ ((noinline));
extern volatile int i;
void m(void)
@ -12,7 +12,7 @@ void m(void)
t(i);
}
static t(int a)
static void t(int a)
{
asm("magic %0"::"g"(a));
}

View File

@ -2,6 +2,7 @@
/* { dg-options "-O2" } */
void *a;
void *b;
void
t(unsigned int c)
{
if (c<10)

View File

@ -2,6 +2,7 @@
/* { dg-options "-O2" } */
void *a;
void *b;
void
t(int c)
{
if (c<10)

View File

@ -36,6 +36,7 @@ static union {
char A = 'A';
int
main ()
{
int off, len, i;

View File

@ -3,6 +3,7 @@
/* { dg-final { scan-assembler "test" } } */
/* { dg-final { scan-assembler-not "cmp" } } */
#define max(a,b) (((a) > (b))? (a) : (b))
int
t(int a)
{
return (max(a,1));

View File

@ -3,6 +3,7 @@
/* { dg-final { scan-assembler "test" } } */
/* { dg-final { scan-assembler-not "cmp" } } */
#define max(a,b) (((a) > (b))? (a) : (b))
unsigned int
t(unsigned int a)
{
return (max(a,1));

View File

@ -1,6 +1,8 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
extern int memcmp (const void *, const void *, __SIZE_TYPE__);
void *x (void *pdst, const void *psrc, unsigned int pn)
{
register void *return_dst = pdst;

View File

@ -71,6 +71,9 @@ sse_swap_rowf (float *r1, float *r2, int n)
}
}
void swap_index (int *, int, int);
void sse_add_rowf (float *, float *, float, int);
void
ludcompf (float *m, int nw, int *prow, int n)
{

View File

@ -3,6 +3,7 @@
typedef short __v8hi __attribute__ ((__vector_size__ (16)));
typedef long long __m128i __attribute__ ((__vector_size__ (16)));
extern int memcmp (const void *, const void *, __SIZE_TYPE__);
void sse2_test (void)
{

View File

@ -3,6 +3,7 @@
static int ready[10];
void abort (void);
int b (void);
void test_once (int t,int t1)
{
int i, repeat;

View File

@ -20,6 +20,7 @@ typedef struct _ClientResource
} ClientResourceRec;
static ClientResourceRec clientTable[256];
int Hash (int, unsigned int);
void
RebuildTable (int client)

View File

@ -2,8 +2,8 @@
/* { dg-options "-O1 -mtune=amdfam10 -fexpensive-optimizations -fgcse -foptimize-register-move -freorder-blocks -fschedule-insns2 -funswitch-loops -fgcse-las -fselective-scheduling2 -fsel-sched-pipelining -funroll-all-loops" } */
typedef char uint8_t;
typedef uint32_t;
typedef vo_frame_t;
typedef int uint32_t;
typedef int vo_frame_t;
__extension__ typedef __SIZE_TYPE__ size_t;
struct vo_frame_s
@ -47,7 +47,7 @@ static int bitstream_init (picture_t * picture, void *start)
picture->bitstream_ptr = start;
return (int) (size_t) start;
}
static slice_xvmc_init (picture_t * picture, int code)
static void slice_xvmc_init (picture_t * picture, int code)
{
int offset;
struct vo_frame_s *forward_reference_frame;

View File

@ -1,7 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O -g -mf16c -mtune=generic -dp" } */
typedef __m256i __attribute__ ((__vector_size__ (32)));
typedef int __m256i __attribute__ ((__vector_size__ (32)));
__m256i bar (void);
void foo (void)

View File

@ -4,7 +4,7 @@
#include <stdint.h>
typedef (*inst_t)(int64_t rdi, int64_t rsi, int64_t rdx);
typedef int (*inst_t)(int64_t rdi, int64_t rsi, int64_t rdx);
int16_t code[256];
inst_t dispatch[256];

View File

@ -21,7 +21,7 @@ baz (unsigned long x)
return d;
}
__attribute__ ((ms_abi, noinline, noclone))
__attribute__ ((ms_abi, noinline, noclone)) void
foo (void)
{
unsigned d;

View File

@ -5,6 +5,7 @@ extern void exit (int);
int x;
void
foo()
{
static int count;

View File

@ -19,6 +19,7 @@ struct ext4_map_blocks
int m_flags;
};
int ext4_da_map_blocks_ei_0;
void fn2 (int, int);
void fn1 (int p1, struct ext4_map_blocks *p2)
{
int ret;

View File

@ -20,6 +20,7 @@ extern rtx c_readstr (const char *, enum machine_mode);
extern rtx convert_to_mode (enum machine_mode, rtx, int);
extern rtx expand_mult (enum machine_mode, rtx, rtx, rtx, int);
extern rtx force_reg (enum machine_mode, rtx);
extern unsigned char mode_size_inline (enum machine_mode);
extern void *memset (void *__s, int __c, size_t __n);
rtx

View File

@ -68,13 +68,13 @@
{ return func (A, B, C, imm1, imm2, imm3); }
#define test_3v(func, op1_type, op2_type, op3_type, imm) \
_CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I) \
int _CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I) \
{ func (A, B, C, imm); }
#define test_3vx(func, op1_type, op2_type, op3_type, imm1, imm2) \
_CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I, int const L) \
int _CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I, int const L) \
{ func (A, B, C, imm1, imm2); }
#define test_4(func, type, op1_type, op2_type, op3_type, op4_type, imm) \
@ -93,8 +93,8 @@
{ return func (A, B, C, D, imm1, imm2, imm3); }
#define test_4v(func, op1_type, op2_type, op3_type, op4_type, imm) \
_CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, op4_type D, int const I) \
int _CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, op4_type D, int const I) \
{ func (A, B, C, D, imm); }

View File

@ -13,6 +13,7 @@ __m128i bar (char x) {
return _mm_set_epi8 (x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
}
int
main() {
int i, j;
union u { __m128i v; char c[16]; };

View File

@ -67,13 +67,13 @@
{ return func (A, B, C, imm1, imm2, imm3); }
#define test_3v(func, op1_type, op2_type, op3_type, imm) \
_CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I) \
int _CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I) \
{ func (A, B, C, imm); }
#define test_3vx(func, op1_type, op2_type, op3_type, imm1, imm2) \
_CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I, int const L) \
int _CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, int const I, int const L) \
{ func (A, B, C, imm1, imm2); }
#define test_4(func, type, op1_type, op2_type, op3_type, op4_type, imm) \
@ -93,8 +93,8 @@
#define test_4v(func, op1_type, op2_type, op3_type, op4_type, imm) \
_CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, op4_type D, int const I) \
int _CONCAT(_,func) (op1_type A, op2_type B, \
op3_type C, op4_type D, int const I) \
{ func (A, B, C, D, imm); }

View File

@ -4,6 +4,8 @@
#include "sse2-check.h"
int do_main (void);
static void
sse2_test (void)
{

View File

@ -37,7 +37,7 @@ sse4a_test_extrqi (long long in)
return (v_out.i[0]);
}
static chk (long long i1, long long i2)
static int chk (long long i1, long long i2)
{
int n_fails =0;
if (i1 != i2)

View File

@ -38,7 +38,7 @@ sse4a_test_inserti (long long in1, long long in2)
return (v_out.i[0]);
}
static chk (long long i1, long long i2)
static int chk (long long i1, long long i2)
{
int n_fails =0;
if (i1 != i2)

View File

@ -3,12 +3,14 @@
/* { dg-final { scan-assembler "maxsd" } } */
/* { dg-final { scan-assembler "minsd" } } */
double x;
void
t()
{
x=x>5?x:5;
}
double x;
void
q()
{
x=x<5?x:5;

View File

@ -3,12 +3,14 @@
/* { dg-final { scan-assembler "maxsd" } } */
/* { dg-final { scan-assembler "minsd" } } */
double x;
void
q()
{
x=x<5?5:x;
}
double x;
void
q1()
{
x=x>5?5:x;

View File

@ -142,6 +142,7 @@ test8bit (void)
}
void
test1bit (void) {
m256d = _mm512_extractf64x4_pd (m512d, 256); /* { dg-error "the last argument must be a 1-bit immediate" } */
m256d = _mm512_mask_extractf64x4_pd (m256d, mmask8, m512d, 256); /* { dg-error "the last argument must be a 1-bit immediate" } */
@ -160,6 +161,7 @@ test1bit (void) {
m512i = _mm512_maskz_inserti64x4 (mmask8, m512i, m256i, 256); /* { dg-error "the last argument must be a 1-bit immediate" } */
}
void
test2bit (void) {
m128 = _mm512_extractf32x4_ps(m512, 256); /* { dg-error "the last argument must be a 2-bit immediate" } */
m128 = _mm512_mask_extractf32x4_ps(m128, mmask8, m512, 256); /* { dg-error "the last argument must be a 2-bit immediate" } */
@ -178,6 +180,7 @@ test2bit (void) {
m512i = _mm512_maskz_inserti32x4 (mmask16, m512i, m128i, 256); /* { dg-error "the last argument must be a 2-bit immediate" } */
}
void
test4bit (void) {
m512d = _mm512_getmant_pd (m512d, 1, 64); /* { dg-error "the immediate argument must be a 4-bit immediate" } */
m512d = _mm512_mask_getmant_pd (m512d, mmask8, m512d, 1, 64); /* { dg-error "the immediate argument must be a 4-bit immediate" } */

View File

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -msse2 -mno-sse3 -fdump-tree-vect-details" } */
int abs (int);
void test (short* a, short* b)
{

View File

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -msse2 -mno-sse3 -fdump-tree-vect-details" } */
int abs (int);
void test (int* a, int* b)
{

View File

@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -msse2 -mno-sse3 -fdump-tree-vect-details" } */
int abs (int);
void test (char* a, char* b)
{

View File

@ -3,6 +3,7 @@
extern double sqrt (double __x);
void
calc_freq (int *dest)
{
float tmp_out[257];

View File

@ -4,6 +4,8 @@
#include "xop-check.h"
int do_main (void);
static void
xop_test (void)
{

View File

@ -5,6 +5,7 @@
/* { dg-options "-O2 -mxop -mno-avx2 -ftree-vectorize" } */
extern void exit (int);
extern void right_rotate (void);
typedef long __m128i __attribute__ ((__vector_size__ (16), __may_alias__));

View File

@ -27,7 +27,7 @@ left_shift32 (void)
int main ()
{
left_shfit32 ();
left_shift32 ();
exit (0);
}

View File

@ -27,7 +27,7 @@ right_sign_shift32 (void)
int main ()
{
right_sign_shfit32 ();
right_sign_shift32 ();
exit (0);
}

View File

@ -27,7 +27,7 @@ right_uns_shift32 (void)
int main ()
{
right_uns_shfit32 ();
right_uns_shift32 ();
exit (0);
}