OSDN Git Service

PR target/39558
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / powerpc / altivec-cell-7.c
1 /* { dg-do compile  } */
2 /* { dg-require-effective-target powerpc_altivec_ok } */
3 /* { dg-options "-O2 -maltivec -mabi=altivec -mcpu=cell" } */
4 /* { dg-final { scan-assembler-times "vor" 2 } } */
5 #include <altivec.h>
6
7 /* Make sure that lvlx and lvrx are not combined into one insn and
8    we still get a vor. */
9
10 vector unsigned char
11 lvx_float (long off, float *p)
12 {
13     vector unsigned char l, r;
14
15     l = (vector unsigned char) vec_lvlx (off, p);
16     r = (vector unsigned char) vec_lvrx (off, p);
17     return vec_or(l, r);
18 }
19
20 vector unsigned char
21 lvxl_float (long off, float *p)
22 {
23     vector unsigned char l, r;
24
25     l = (vector unsigned char) vec_lvlxl (off, p);
26     r = (vector unsigned char) vec_lvrxl (off, p);
27     return vec_or(l, r);
28 }