/* { dg-do assemble } */ /* { dg-require-effective-target lp64 } */ /* { dg-options "-O1 --save-temps" } */ #pragma GCC push_options #pragma GCC target ("+nothing+simd,cmodel=small") int cal (double a) { double b = 3.2; double c = 2.2; if ((a + b) != c) return 0; else return 1; } #pragma GCC push_options #pragma GCC target ("cmodel=large") int cal2 (double a) { double b = 3.2; double c = 2.2; if ((a + b) != c) return 0; else return 1; } #pragma GCC pop_options int cal3 (double a) { double b = 3.2; double c = 2.2; if ((a + b) != c) return 0; else return 1; } /* { dg-final { scan-assembler-times "adrp" 6 } } */