Make the tests big-endian friendly.

gcc/testsuite/

	Make the tests big-endian friendly.

	* gcc.target/aarch64/aapcs64/test_25.c: Update.
	* gcc.target/aarch64/aapcs64/va_arg-1.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-12.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-2.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-3.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-4.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-5.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-6.c: Ditto.
	* gcc.target/aarch64/aapcs64/va_arg-7.c: Ditto.

From-SVN: r211851
This commit is contained in:
Yufeng Zhang 2014-06-20 16:52:29 +00:00 committed by Yufeng Zhang
parent 0cbf438b11
commit 676d89dd0f
10 changed files with 76 additions and 29 deletions

View File

@ -1,3 +1,17 @@
2014-06-20 Yufeng Zhang <yufeng.zhang@arm.com>
Make the tests big-endian friendly.
* gcc.target/aarch64/aapcs64/test_25.c: Update.
* gcc.target/aarch64/aapcs64/va_arg-1.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-12.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-2.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-3.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-4.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-5.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-6.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-7.c: Ditto.
2014-06-20 Yury Gribov <y.gribov@samsung.com>
Max Ostapenko <m.ostapenko@partner.samsung.com>

View File

@ -42,20 +42,20 @@ void init_data ()
s2.df[0] = 123.456;
s2.df[1] = 234.567;
s2.df[2] = 345.678;
s3.v[0] = (vf2_t){ 19.f, 20.f, 21.f, 22.f };
s3.v[1] = (vf2_t){ 23.f, 24.f, 25.f, 26.f };
s4.v[0] = (vf2_t){ 27.f, 28.f, 29.f, 30.f };
s4.v[1] = (vf2_t){ 31.f, 32.f, 33.f, 34.f };
s4.v[2] = (vf2_t){ 35.f, 36.f, 37.f, 38.f };
s3.v[0] = (vf2_t){ 19.f, 20.f };
s3.v[1] = (vf2_t){ 23.f, 24.f };
s4.v[0] = (vf2_t){ 27.f, 28.f };
s4.v[1] = (vf2_t){ 31.f, 32.f };
s4.v[2] = (vf2_t){ 35.f, 36.f };
}
#include "abitest.h"
#else
ARG_NONFLAT (struct x0, s0, Q0, f32in64)
ARG (struct x0, s0, D0)
ARG (struct x2, s2, D1)
ARG (struct x1, s1, Q4)
ARG (struct x3, s3, D5)
ARG (struct x4, s4, STACK)
ARG_NONFLAT (int, 0xdeadbeef, X0, i32in64)
ARG (int, 0xdeadbeef, W0)
LAST_ARG (double, 456.789, STACK+24)
#endif

View File

@ -30,14 +30,14 @@ void init_data ()
#include "abitest.h"
#else
ARG ( int , 0xff , X0, LAST_NAMED_ARG_ID)
ARG ( int , 0xff , W0, LAST_NAMED_ARG_ID)
DOTS
ANON_PROMOTED(unsigned char , 0xfe , unsigned int, 0xfe , X1, 1)
ANON_PROMOTED( signed char , sc , signed int, sc_promoted, X2, 2)
ANON_PROMOTED(unsigned short , 0xdcba, unsigned int, 0xdcba , X3, 3)
ANON_PROMOTED( signed short , ss , signed int, ss_promoted, X4, 4)
ANON (unsigned int , 0xdeadbeef, X5, 5)
ANON ( signed int , 0xcafebabe, X6, 6)
ANON_PROMOTED(unsigned char , 0xfe , unsigned int, 0xfe , W1, 1)
ANON_PROMOTED( signed char , sc , signed int, sc_promoted, W2, 2)
ANON_PROMOTED(unsigned short , 0xdcba, unsigned int, 0xdcba , W3, 3)
ANON_PROMOTED( signed short , ss , signed int, ss_promoted, W4, 4)
ANON (unsigned int , 0xdeadbeef, W5, 5)
ANON ( signed int , 0xcafebabe, W6, 6)
ANON (unsigned long long, 0xba98765432101234ULL, X7, 7)
ANON ( signed long long, 0xa987654321012345LL , STACK, 8)
ANON ( __int128, qword.i , STACK+16, 9)
@ -46,5 +46,9 @@ void init_data ()
ANON ( long double , 98765432123456789.987654321L, Q2, 12)
ANON ( vf2_t, vf2 , D3, 13)
ANON ( vi4_t, vi4 , Q4, 14)
#ifndef __AAPCS64_BIG_ENDIAN__
LAST_ANON ( int , 0xeeee, STACK+32,15)
#else
LAST_ANON ( int , 0xeeee, STACK+36,15)
#endif
#endif

View File

@ -45,16 +45,20 @@ void init_data ()
#include "abitest.h"
#else
PTR(struct z, a, X0, 0)
ARG(int, 0xdeadbeef, X1, 1)
ARG(int, 0xcafebabe, X2, 2)
ARG(int, 0xdeadbabe, X3, 3)
ARG(int, 0xcafebeef, X4, 4)
ARG(int, 0xbeefdead, X5, 5)
ARG(int, 0xbabecafe, X6, LAST_NAMED_ARG_ID)
ARG(int, 0xdeadbeef, W1, 1)
ARG(int, 0xcafebabe, W2, 2)
ARG(int, 0xdeadbabe, W3, 3)
ARG(int, 0xcafebeef, W4, 4)
ARG(int, 0xbeefdead, W5, 5)
ARG(int, 0xbabecafe, W6, LAST_NAMED_ARG_ID)
DOTS
PTR_ANON(struct z, b, X7, 7)
PTR_ANON(struct z, c, STACK, 8)
#ifndef __AAPCS64_BIG_ENDIAN__
ANON(int, 0xbabedead, STACK+8, 9)
#else
ANON(int, 0xbabedead, STACK+12, 9)
#endif
LAST_ANON(double, 123.45, D0, 10)
#endif

View File

@ -30,7 +30,7 @@ void init_data ()
#include "abitest.h"
#else
ARG ( int , 0xff , X0, 0)
ARG ( int , 0xff , W0, 0)
ARG ( float , 1.0f , S0, 1)
ARG ( float , 1.0f , S1, 2)
ARG ( float , 1.0f , S2, 3)
@ -43,17 +43,30 @@ void init_data ()
ANON ( __int128, qword.i , X2, 8)
ANON ( signed long long, 0xa987654321012345LL , X4, 9)
ANON ( __int128, qword.i , X6, 10)
#ifndef __AAPCS64_BIG_ENDIAN__
ANON_PROMOTED(unsigned char , 0xfe , unsigned int, 0xfe , STACK, 11)
ANON_PROMOTED( signed char , sc , signed int, sc_promoted, STACK+8, 12)
ANON_PROMOTED(unsigned short , 0xdcba, unsigned int, 0xdcba , STACK+16, 13)
ANON_PROMOTED( signed short , ss , signed int, ss_promoted, STACK+24, 14)
ANON (unsigned int , 0xdeadbeef, STACK+32, 15)
ANON ( signed int , 0xcafebabe, STACK+40, 16)
#else
ANON_PROMOTED(unsigned char , 0xfe , unsigned int, 0xfe , STACK+4, 11)
ANON_PROMOTED( signed char , sc , signed int, sc_promoted, STACK+12, 12)
ANON_PROMOTED(unsigned short , 0xdcba, unsigned int, 0xdcba , STACK+20, 13)
ANON_PROMOTED( signed short , ss , signed int, ss_promoted, STACK+28, 14)
ANON (unsigned int , 0xdeadbeef, STACK+36, 15)
ANON ( signed int , 0xcafebabe, STACK+44, 16)
#endif
ANON (unsigned long long, 0xba98765432101234ULL, STACK+48, 17)
ANON_PROMOTED( float , fp , double, fp_promoted, STACK+56, 18)
ANON ( double , 9876543.212345, STACK+64, 19)
ANON ( long double , 98765432123456789.987654321L, STACK+80, 20)
ANON ( vf2_t, vf2 , STACK+96, 21)
ANON ( vi4_t, vi4 , STACK+112,22)
#ifndef __AAPCS64_BIG_ENDIAN__
LAST_ANON ( int , 0xeeee, STACK+128,23)
#else
LAST_ANON ( int , 0xeeee, STACK+132,23)
#endif
#endif

View File

@ -80,7 +80,15 @@ void init_data ()
PTR_ANON (struct x2, y2, STACK+24, 9)
ANON (union x3, y3, STACK+32, 10)
PTR_ANON (union x4, y4, STACK+40, 11)
#ifndef __AAPCS64_BIG_ENDIAN__
ANON (int , 1, STACK+48, 12)
ANON (struct x5, y5, STACK+64, 13)
LAST_ANON(int , 2, STACK+80, 14)
#else
ANON (int , 1, STACK+52, 12)
#endif
ANON (struct x5, y5, STACK+64, 13)
#ifndef __AAPCS64_BIG_ENDIAN__
LAST_ANON(int , 2, STACK+80, 14)
#else
LAST_ANON(int , 2, STACK+84, 14)
#endif
#endif

View File

@ -67,7 +67,7 @@ void init_data ()
#include "abitest.h"
#else
ARG (int , 1, X0, LAST_NAMED_ARG_ID)
ARG (int , 1, W0, LAST_NAMED_ARG_ID)
DOTS
/* HFA or HVA passed in fp/simd registers or on stack. */
ANON (struct hfa_fx1_t , hfa_fx1 , S0 , 0)
@ -89,5 +89,9 @@ void init_data ()
PTR_ANON (struct non_hfa_ffs_t , non_hfa_ffs , STACK+120, 18)
ANON (struct non_hfa_ffs_2_t, non_hfa_ffs_2, STACK+128, 19)
ANON (union non_hfa_union_t, non_hfa_union, STACK+144, 20)
#ifndef __AAPCS64_BIG_ENDIAN__
LAST_ANON(int , 2 , STACK+152, 30)
#else
LAST_ANON(int , 2 , STACK+156, 30)
#endif
#endif

View File

@ -33,7 +33,7 @@ void init_data ()
#include "abitest.h"
#else
ARG (int, 1, X0, LAST_NAMED_ARG_ID)
ARG (int, 1, W0, LAST_NAMED_ARG_ID)
DOTS
/* HFA passed in fp/simd registers or on stack. */
ANON (struct hfa_dx4_t , hfa_dx4 , D0 , 0)

View File

@ -30,7 +30,7 @@ void init_data ()
#include "abitest.h"
#else
ARG (int, 1, X0, LAST_NAMED_ARG_ID)
ARG (int, 1, W0, LAST_NAMED_ARG_ID)
DOTS
ANON (struct hfa_ffs_t , hfa_ffs , S0 , 0)
ANON (union hfa_union_t, hfa_union, S4 , 1)

View File

@ -15,7 +15,7 @@ _Complex __int128 complex_qword = 567890 + 678901i;
#include "abitest.h"
#else
ARG (int, 1, X0, LAST_NAMED_ARG_ID)
ARG (int, 1, W0, LAST_NAMED_ARG_ID)
DOTS
/* Complex floating-point types are passed in fp/simd registers. */
ANON (_Complex float , 12.3f + 23.4fi , S0, 0)
@ -23,9 +23,9 @@ _Complex __int128 complex_qword = 567890 + 678901i;
ANON (_Complex long double, 56789.01234L + 67890.12345Li, Q4, 2)
/* Complex integral types are passed in general registers or via reference. */
ANON (_Complex short , (short)12345 + (short)23456i, X1, 10)
ANON (_Complex short , (_Complex short) (12345 + 23456i), X1, 10)
ANON (_Complex int , 34567 + 45678i , X2, 11)
PTR_ANON (_Complex __int128 , complex_qword , X3, 12)
LAST_ANON(int , 1 , X4, 20)
LAST_ANON(int , 1 , W4, 20)
#endif