| /* { dg-do run } */ | |
| /* { dg-options "-O2" } */ | |
| /* { dg-skip-if "" { ! { arm_thumb1 } } } */ | |
| int __attribute__((noclone, noinline)) | |
| foo (int a, long long b) { | |
| /* Used for enforcing registers stacking. */ | |
| asm volatile ("" : : : "r0", "r1", "r2", "r3", | |
| "r8", "r9", "r10", "r11", "r12"); | |
| return (int) b; | |
| } | |
| int main () | |
| { | |
| if (foo (1, 0x1000000000000003LL) != 3) | |
| __builtin_abort (); | |
| __builtin_exit (0); | |
| } |