1  /* Test AAPCS layout (alignment).  */
       2  
       3  /* { dg-do run { target arm_eabi } } */
       4  /* { dg-require-effective-target arm32 } */
       5  /* { dg-options "-O" } */
       6  
       7  #ifndef IN_FRAMEWORK
       8  #define TESTFILE "align1.c"
       9  
      10  typedef __attribute__((aligned (8))) int alignedint;
      11  
      12  alignedint a = 11;
      13  alignedint b = 13;
      14  alignedint c = 17;
      15  alignedint d = 19;
      16  alignedint e = 23;
      17  alignedint f = 29;
      18  
      19  #include "abitest.h"
      20  #else
      21    ARG (alignedint, a, R0)
      22    /* Attribute suggests R2, but we should use only natural alignment:  */
      23    ARG (alignedint, b, R1)
      24    ARG (alignedint, c, R2)
      25    ARG (alignedint, d, R3)
      26    ARG (alignedint, e, STACK)
      27    /* Attribute would suggest STACK + 8 but should be ignored:  */
      28    LAST_ARG (alignedint, f, STACK + 4)
      29  #endif