diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/vmx/gcc-bug-b.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/vmx/gcc-bug-b.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/vmx/gcc-bug-b.c b/gcc/testsuite/gcc.dg/vmx/gcc-bug-b.c new file mode 100644 index 0000000000..e893ff1813 --- /dev/null +++ b/gcc/testsuite/gcc.dg/vmx/gcc-bug-b.c @@ -0,0 +1,23 @@ +/* { dg-do compile } */ +#include <altivec.h> +vector unsigned char u8a, u8b, u8c, u8d, *u8ptr; +vector signed short s16a, s16b, s16c, s16d; +vector unsigned short u16a, u16b, u16c, u16d; +vector unsigned int u32a, u32b, u32c, u32d; +vector float f32a, f32b, f32c, f32d, f32e; +int i, j, *p; + +void test() +{ + u8c = vec_add(u8a, u8b); + f32c = vec_ceil(f32a); + f32d = vec_vcfux(u32a, 31U); + s16c = vec_splat_s16(-16); + u8d = vec_vsldoi(u8a, u8b, 15); + f32e = vec_vmaddfp(f32a, f32b, f32c); + + vec_dss(3); + vec_dssall(); + vec_mtvscr(u8a); + u16a = vec_mfvscr(); +} |