aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/ext/altivec-7.C
blob: 038335433f427ea0c42de165f3ffdd081904029b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/* Test for AltiVec type overloading and name mangling.  */
/* { dg-do compile { target powerpc*-*-* } } */
/* { dg-require-effective-target powerpc_altivec_ok } */
/* { dg-options "-maltivec" } */

#include <altivec.h>

void foo(vector unsigned char) { }
void foo(vector signed char) { }
void foo(vector bool     char) { }
void foo(vector unsigned short) { }
void foo(vector signed short) { }
void foo(vector bool short) { }
void foo(vector unsigned int) { }
void foo(vector signed int) { }
void foo(vector bool int) { }
void foo(vector float) { }
void foo(vector pixel) { }
void foo(int) { }
void foo(unsigned int) { }
void foo(float) { }

/* { dg-final { scan-assembler "_Z3fooDv16_h" } } */
/* { dg-final { scan-assembler "_Z3fooDv16_a" } } */
/* { dg-final { scan-assembler "_Z3fooDv16_U6__boolc" } } */
/* { dg-final { scan-assembler "_Z3fooDv8_t" } } */
/* { dg-final { scan-assembler "_Z3fooDv8_s" } } */
/* { dg-final { scan-assembler "_Z3fooDv8_U6__bools" } } */
/* { dg-final { scan-assembler "_Z3fooDv4_j" } } */
/* { dg-final { scan-assembler "_Z3fooDv4_i" } } */
/* { dg-final { scan-assembler "_Z3fooDv4_U6__booli" } } */
/* { dg-final { scan-assembler "_Z3fooDv4_f" } } */
/* { dg-final { scan-assembler "_Z3fooDv8_u7__pixel" } } */
/* { dg-final { scan-assembler "_Z3fooi" } } */
/* { dg-final { scan-assembler "_Z3fooj" } } */
/* { dg-final { scan-assembler "_Z3foof" } } */