===================================================================
@@ -6,7 +6,7 @@
/* { dg-final { scan-assembler "(cltq|movslq)" } } */
/* { dg-final { scan-assembler "pextrb" } } */
/* { dg-final { scan-assembler "pextrw" } } */
-/* { dg-final { scan-assembler "pextrd" } } */
+/* { dg-final { scan-assembler "pextrd" { target { ! x86_64-*-mingw* } } } } */
#include <smmintrin.h>
long long int foo8(__m128i x) { return (char) _mm_extract_epi8(x, 4); }
===================================================================
@@ -16,6 +16,11 @@
#include <string.h>
#include <stdlib.h>
+/* mingw runtime don't provide random(). */
+#ifdef __MINGW32__
+#define random rand
+#endif
+
#define NUM 20
#ifndef MASK
===================================================================
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
/* { dg-options "-O2 -msse2 -mno-vect8-ret-in-mem" { target
i?86-*-solaris2.[89] *-*-vxworks* } } */
+/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
#include <mmintrin.h>
===================================================================
@@ -1,6 +1,6 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-O2 -mfsgsbase" } */
-/* { dg-final { scan-assembler "wrfsbase\[ \t]+(%|)edi" } } */
+/* { dg-final { scan-assembler "wrfsbase\[ \t]+(%|)(edi|ecx)" } } */
#include <immintrin.h>
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fshrink-wrap -fdump-rtl-pro_and_epilogue" } */
+/* { dg-skip-if "No shrink-wrapping preformed" { x86_64-*-mingw* } {
"*" } { "" } } */
#include <string.h>
===================================================================
@@ -14,6 +14,11 @@
#include <stdlib.h>
+/* mingw runtime don't provide random(). */
+#ifdef __MINGW32__
+#define random rand
+#endif
+
#define N 512
static short a1[N], a2[N], a3[N];
static unsigned short b1[N], b2[N], b3[N];
===================================================================
@@ -4,6 +4,8 @@
typedef char uint8_t;
typedef uint32_t;
typedef vo_frame_t;
+__extension__ typedef __SIZE_TYPE__ size_t;
+
struct vo_frame_s
{
uint8_t base[3];
@@ -43,7 +45,7 @@
static int bitstream_init (picture_t * picture, void *start)
{
picture->bitstream_ptr = start;
- return (int) (long) start;
+ return (int) (size_t) start;
}
static slice_xvmc_init (picture_t * picture, int code)
{
@@ -56,7 +58,7 @@
picture->f_motion.ref
[0]
[0]
- = (char) (long) (forward_reference_frame->base + (offset ?
picture->pitches[0] : 0));
+ = (char) (size_t) (forward_reference_frame->base + (offset ?
picture->pitches[0] : 0));
picture->f_motion.ref[0][1] = (offset);
if (picture->picture_structure)
picture->pitches[0] <<= picture->pitches[1] <<= 1;
@@ -91,7 +93,7 @@
mpeg2_xvmc_slice
(mpeg2dec_accel_t * accel, picture_t * picture, int code, uint8_t
buffer,int mba_inc)
{
- xine_xvmc_t * xvmc = (xine_xvmc_t *) (long) bitstream_init
(picture, (void *) (long) buffer);
+ xine_xvmc_t * xvmc = (xine_xvmc_t *) (size_t) bitstream_init
(picture, (void *) (size_t) buffer);
slice_xvmc_init (picture, code);
while (1)
{
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-mno-sse" } */
+/* { dg-additional-options "-mabi=sysv" { target *-*-mingw* } } */
double foo(void) { return 0; } /* { dg-error "SSE disabled" } */
void bar(double x) { }
===================================================================
@@ -4,10 +4,12 @@
/* { dg-options "-O2 -mpreferred-stack-boundary=6
-mincoming-stack-boundary=6" } */
/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-128,\[\\t
\]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler-not "and\[lq\]?\[\\t \]*\\$-64,\[\\t
\]*%\[re\]?sp" } } */
+/* { dg-skip-if "Options about stack-boundary aren't support" {
x86_64-*-mingw* } { "*" } { "" } } */
#include <stddef.h>
#define ALIGNMENT 128
+
typedef int aligned __attribute__((aligned(ALIGNMENT)));
extern void abort(void);
===================================================================
@@ -1,5 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
+
+__extension__ typedef __SIZE_TYPE__ size_t;
+
int
php_filter_parse_int (char const *str, unsigned int str_len, long *ret)
{
@@ -23,7 +26,7 @@
default:;
break;
}
- if ((unsigned long) str < (unsigned long) end)
+ if ((size_t) str < (size_t) end)
{
if ((int const) *str >= 49)
{
@@ -59,7 +62,7 @@
{
return (-1);
}
- while ((unsigned long) str < (unsigned long) end)
+ while ((size_t) str < (size_t) end)
{
if ((int const) *str >= 48)
{
===================================================================
@@ -1,6 +1,7 @@
/* PR target/39082 */
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-O2" } */
+/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
union un
{
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -Wno-psabi -msse2 -mno-avx" } */
+/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
typedef long long __m256i __attribute__ ((__vector_size__ (32),
__may_alias__));
===================================================================
@@ -1,6 +1,6 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-O2 -mfsgsbase" } */
-/* { dg-final { scan-assembler "wrfsbase\[ \t]+(%|)rdi" } } */
+/* { dg-final { scan-assembler "wrfsbase\[ \t]+(%|)(rdi|rcx)" } } */
#include <immintrin.h>
===================================================================
@@ -1,7 +1,8 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } {
"-march=atom" } } */
/* { dg-options "-O2 -fomit-frame-pointer -march=atom" } */
-/* { dg-final { scan-assembler-times "nop" 4 } } */
+/* { dg-final { scan-assembler-times "nop" 4 { target { !
x86_64-*-mingw* } } } } */
+/* { dg-final { scan-assembler-times "nop" 2 { target {
x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler-not "rep" } } */
int
===================================================================
@@ -1,7 +1,8 @@
/* { dg-do compile } */
/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } {
"-march=atom" } } */
/* { dg-options "-O2 -fomit-frame-pointer -march=atom" } */
-/* { dg-final { scan-assembler-times "nop" 6 } } */
+/* { dg-final { scan-assembler-times "nop" 6 { target { !
x86_64-*-mingw* } } } } */
+/* { dg-final { scan-assembler-times "nop" 4 { target {
x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler-not "rep" } } */
int
===================================================================
@@ -8,6 +8,11 @@
#include <string.h>
#include <stdlib.h>
+/* mingw runtime don't provide random(). */
+#ifdef __MINGW32__
+#define random rand
+#endif
+
#define NUM 20
#undef MASK
===================================================================
@@ -1,7 +1,8 @@
// Test for bitfield alignment in structs on IA-32
// { dg-do run }
// { dg-options "-O2" }
-// { dg-options "-mno-align-double -mno-ms-bitfields" { target *-*-interix* } }
+// { dg-additional-options "-mno-align-double -mno-ms-bitfields" {
target *-*-interix* } }
+// { dg-additional-options "-mno-ms-bitfields" { target *-*-mingw* } }
extern void abort (void);
extern void exit (int);
===================================================================
@@ -1,6 +1,8 @@
/* PR target/26223 */
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-mno-80387" } */
+/* { dg-additional-options "-mabi=sysv" { target *-*-mingw* } } */
+
long double foo(long double x) { return x; } /* { dg-error "x87 disabled" } */
long double bar(long double x) { return x; }
===================================================================
@@ -4,7 +4,7 @@
/* { dg-options "-O2 -mpreferred-stack-boundary=6
-mincoming-stack-boundary=6" } */
/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-64,\[\\t
\]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler-not "and\[lq\]?\[\\t \]*\\$-128,\[\\t
\]*%\[re\]?sp" } } */
-
+/* { dg-skip-if "Options about stack-boundary aren't support" {
x86_64-*-mingw* } { "*" } { "" } } */
#include <stddef.h>
#define ALIGNMENT 32
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -mavx -mtune=generic" } */
+/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-32,\[\\t
\]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler "vmovaps\[\\t \]*%ymm" } } */
===================================================================
@@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fomit-frame-pointer -mtune=generic" } */
-/* { dg-final { scan-assembler "rep" } } */
+/* { dg-final { scan-assembler "rep" { target { ! x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler-not "nop" } } */
void
===================================================================
@@ -1,7 +1,8 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } {
"-march=atom" } } */
/* { dg-options "-O2 -fomit-frame-pointer -march=atom" } */
-/* { dg-final { scan-assembler-times "nop" 4 } } */
+/* { dg-final { scan-assembler-times "nop" 4 { target { !
x86_64-*-mingw* } } } } */
+/* { dg-final { scan-assembler-times "nop" 2 { target {
x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler-not "rep" } } */
extern void bar (void);
===================================================================
@@ -1,7 +1,8 @@
/* { dg-do compile } */
/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } {
"-march=atom" } } */
/* { dg-options "-O2 -fomit-frame-pointer -march=atom" } */
-/* { dg-final { scan-assembler-times "nop" 8 } } */
+/* { dg-final { scan-assembler-times "nop" 8 { target { !
x86_64-*-mingw* } } } } */
+/* { dg-final { scan-assembler-times "nop" 6 { target {
x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler-not "rep" } } */
void
===================================================================
@@ -8,7 +8,7 @@
/* { dg-final { scan-assembler-not "cwtl" } } */
/* { dg-final { scan-assembler "pextrb" } } */
/* { dg-final { scan-assembler "pextrw" } } */
-/* { dg-final { scan-assembler "pextrd" } } */
+/* { dg-final { scan-assembler "pextrd" { target { ! x86_64-*-mingw* } } } } */
#include <smmintrin.h>
unsigned int foo8(__m128i x) { return _mm_extract_epi8(x, 4); }
===================================================================
@@ -3,7 +3,7 @@
/* { dg-require-effective-target dfp } */
/* { dg-options "-O -march=x86-64 -mtune=generic -std=gnu99" } */
/* { dg-final { scan-assembler-not "movdqu" } } */
-/* { dg-final { scan-assembler "movdqa" } } */
+/* { dg-final { scan-assembler "movdqa" { target { ! x86_64-*-mingw* } } } } */
extern _Decimal128 foo (_Decimal128, _Decimal128, _Decimal128);
===================================================================
@@ -4,7 +4,7 @@
/* { dg-final { scan-assembler-not "movups" } } */
/* { dg-final { scan-assembler-not "movlps" } } */
/* { dg-final { scan-assembler-not "movhps" } } */
-/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-128,\[\\t
\]*%\[re\]?sp" } } */
+/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-128,\[\\t
\]*%\[re\]?sp" { target { ! x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler "movaps" } } */
typedef float __m128 __attribute__ ((__vector_size__ (16)));
===================================================================
@@ -19,6 +19,11 @@
#define TYPE2 long long
#endif
+/* mingw runtime don't provide random(). */
+#ifdef __MINGW32__
+#define random rand
+#endif
+
signed TYPE1 a[N], b[N], g[N];
unsigned TYPE1 c[N], h[N];
signed TYPE2 d[N], e[N], j[N];
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O3 -mavx -mtune=generic -dp" } */
+/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
typedef double EXPRESS[5];
void Parse_Rel_Factor (EXPRESS Express,int *Terms);
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O0 -mavx -mvzeroupper -dp" } */
+/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
typedef float __m256 __attribute__ ((__vector_size__ (32), __may_alias__));
===================================================================
@@ -1,7 +1,8 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } {
"-march=atom" } } */
/* { dg-options "-O2 -fomit-frame-pointer -march=atom" } */
-/* { dg-final { scan-assembler-times "nop" 6 } } */
+/* { dg-final { scan-assembler-times "nop" 6 { target { !
x86_64-*-mingw* } } } } */
+/* { dg-final { scan-assembler-times "nop" 4 { target {
x86_64-*-mingw* } } } } */
/* { dg-final { scan-assembler-not "rep" } } */
int
===================================================================
@@ -1,6 +1,6 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-O2 -mfsgsbase" } */
-/* { dg-final { scan-assembler "wrgsbase\[ \t]+(%|)edi" } } */
+/* { dg-final { scan-assembler "wrgsbase\[ \t]+(%|)(edi|ecx)" } } */
#include <immintrin.h>
===================================================================
@@ -9,7 +9,7 @@
/* { dg-final { scan-assembler-not "cltq" } } */
/* { dg-final { scan-assembler "pextrb" } } */
/* { dg-final { scan-assembler "pextrw" } } */
-/* { dg-final { scan-assembler "pextrd" } } */
+/* { dg-final { scan-assembler "pextrd" { target { ! x86_64-*-mingw* } } } } */
#include <smmintrin.h>
unsigned long long int foo8(__m128i x) { return _mm_extract_epi8(x, 4); }
===================================================================
@@ -6,7 +6,8 @@
transformed to push+pop. We also want to force unwind info updates. */
/* { dg-options "-Os -fomit-frame-pointer -fasynchronous-unwind-tables" } */
/* { dg-options "-Os -fomit-frame-pointer
-mpreferred-stack-boundary=3 -fasynchronous-unwind-tables" { target
ia32 } } */
-
+/* ms_abi has reserved stack-region. */
+/* { dg-skip-if "" { x86_64-*-mingw* } { "*" } { "" } } */
void f();
void g() { f(); f(); }
===================================================================
@@ -1,7 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -funit-at-a-time" } */
/* { dg-final { scan-assembler "magic\[^\\n\]*eax" { target ia32 } } } */
-/* { dg-final { scan-assembler "magic\[^\\n\]*edi" { target { ! {
ia32 } } } } } */
+/* { dg-final { scan-assembler "magic\[^\\n\]*(edi|ecx)" { target { !
{ ia32 } } } } } */
/* Verify that local calling convention is used. */
static t(int) __attribute__ ((noinline));
===================================================================
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O0 -mavx -mvzeroupper -dp" } */
+/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
#include <immintrin.h>
===================================================================
@@ -1,6 +1,6 @@
/* { dg-do compile { target { ! { ia32 } } } } */
/* { dg-options "-O2 -mfsgsbase" } */
-/* { dg-final { scan-assembler "wrgsbase\[ \t]+(%|)rdi" } } */
+/* { dg-final { scan-assembler "wrgsbase\[ \t]+(%|)(rdi|rcx)" } } */
#include <immintrin.h>
===================================================================
@@ -5,7 +5,7 @@
/* { dg-final { scan-assembler "(movswl|cwtl)" } } */
/* { dg-final { scan-assembler "pextrb" } } */
/* { dg-final { scan-assembler "pextrw" } } */
-/* { dg-final { scan-assembler "pextrd" } } */
+/* { dg-final { scan-assembler "pextrd" { target { ! x86_64-*-mingw* } } } } */
#include <smmintrin.h>
int foo8(__m128i x) { return (char) _mm_extract_epi8(x, 4); }