[PATCH][AARCH64]Make arm_align_max_stack_pwr.c and arm_align_max_pwr.c compile
testcase, instead of execution. gcc/testsuite/ 2015-09-03 Renlin Li <renlin.li@arm.com> * gcc.target/aarch64/arm_align_max_pwr.c: Make it a compile test case, check the assembly. * gcc.target/aarch64/arm_align_max_stack_pwr.c: Likewise. From-SVN: r227459
This commit is contained in:
parent
1807ffc1a5
commit
3743a2ccd8
@ -1,3 +1,9 @@
|
||||
2015-09-03 Renlin Li <renlin.li@arm.com>
|
||||
|
||||
* gcc.target/aarch64/arm_align_max_pwr.c: Make it a compile test case,
|
||||
check the assembly.
|
||||
* gcc.target/aarch64/arm_align_max_stack_pwr.c: Likewise.
|
||||
|
||||
2015-09-03 Martin Sebor <msebor@redhat.com>
|
||||
|
||||
PR c/66516
|
||||
|
@ -1,15 +1,23 @@
|
||||
/* { dg-do run } */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O1" } */
|
||||
|
||||
#define align (1ul << __ARM_ALIGN_MAX_PWR)
|
||||
static int x __attribute__ ((aligned (align)));
|
||||
static int y __attribute__ ((aligned (align)));
|
||||
|
||||
extern void foo (int *x, int *y);
|
||||
extern int bar (int x, int y);
|
||||
|
||||
int
|
||||
main ()
|
||||
dummy ()
|
||||
{
|
||||
assert ((((unsigned long)&x) & (align - 1)) == 0);
|
||||
int result;
|
||||
|
||||
return 0;
|
||||
foo (&x, &y);
|
||||
result = bar (x, y);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-assembler-times "zero\t4" 2 } } */
|
||||
/* { dg-final { scan-assembler "zero\t268435452" } } */
|
||||
|
@ -1,15 +1,20 @@
|
||||
/* { dg-do run } */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O1" } */
|
||||
|
||||
#define align (1ul << __ARM_ALIGN_MAX_STACK_PWR)
|
||||
extern void foo (int *x);
|
||||
extern int bar (int x);
|
||||
|
||||
int
|
||||
main ()
|
||||
dummy ()
|
||||
{
|
||||
int x __attribute__ ((aligned (align)));
|
||||
int result;
|
||||
|
||||
assert ((((unsigned long)&x) & (align - 1)) == 0);
|
||||
return 0;
|
||||
foo (&x);
|
||||
result = bar (x);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-assembler "and\tx\[0-9\]+, x\[0-9\]+, -65536" } } */
|
||||
|
Loading…
Reference in New Issue
Block a user