pr35907.c
来自「用于进行gcc测试」· C语言 代码 · 共 60 行
C
60 行
/* PR target/35907 *//* { dg-do run { target powerpc*-*-* } } *//* { dg-require-effective-target powerpc_altivec_ok } *//* { dg-options "-O2 -maltivec" } */#include "altivec_check.h"#define vector __attribute__((vector_size (16)))union{ vector int k; int c[16];} u, v, w;vector int m;void __attribute__((noinline))bar (void *i, vector int j){ asm volatile ("" : : "r" (i), "r" (&j) : "memory");}int __attribute__((noinline))foo (int i, vector int j){ char *p = __builtin_alloca (64 + i); m += u.k; v.k = m; w.k = j; if (__builtin_memcmp (&v.c, &w.c, 16) != 0) __builtin_abort (); j += u.k; bar (p, j); j += u.k; bar (p, j); return 0;}voidtest (void){ vector int l; int i; for (i = 0; i < 4; i++) u.c[i] = i; l = u.k; if (foo (64, l)) __builtin_abort (); l += u.k; if (foo (64, l)) __builtin_abort ();}intmain (){ altivec_check (); test (); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?