| /* { dg-do run } */ | |
| /* { dg-options "-O" } */ | |
| extern void abort (void); | |
| typedef struct { | |
| short x; | |
| } mytype_t; | |
| mytype_t *__attribute__ ((noinline,weak)) | |
| some_func (void) | |
| { | |
| static mytype_t s; | |
| return &s; | |
| }; | |
| int main (void) | |
| { | |
| int y, y2; | |
| mytype_t *shorter = some_func(); | |
| y = __builtin_arc_aligned (shorter, 2); | |
| if (!y) | |
| abort (); | |
| y2 = __builtin_arc_aligned (shorter, 4); | |
| if (y2) | |
| abort (); | |
| return 0; | |
| } |