Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/guality/inline-params.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-do run } */ /* IPA-SRA removes the arguments as dead, so we don't see their values, early inlining inlines the functions too early to test the real IPA passes (such as IPA-CP). */ /* { dg-options "-g -fno-early-inlining -fno-ipa-sra" } */ /* { dg-xfail-run-if "" { "*-*-*" } { "-O2" "-O3" "-Os" } } */ #define GUALITY_DONT_FORCE_LIVE_AFTER -1 #ifndef STATIC_INLINE #define STATIC_INLINE /*static*/ #endif #include "guality.h" struct a{ struct b {int a;} b; struct c{ int a;} c; }; __attribute__ ((always_inline)) static inline void t1 (struct b *ab, int b) { GUALCHKXPRVAL ("b", 0xbbb, 0); GUALCHKVAL (ab); } __attribute__ ((always_inline)) static inline void t2 (struct c *ac, char *msg) { GUALCHKVAL (ac); GUALCHKVAL (msg); } __attribute__ ((always_inline)) static inline void t3 (struct a *a) { t1(&a->b, 0xbbb); t2(&a->c, "test"); } struct a a={{0},{1}}; int main (int argc, char *argv[]) { t3(&a); }