brintos

brintos / llvm-project-archived public Read only

0
0
Text · 738 B · f115bae Raw
43 lines · c
1// RUN: %clang_cc1 -emit-llvm %s -o - | FileCheck %s2 3// PR270854 5typedef unsigned char uchar4  __attribute__ ((vector_size (4)));6 7// CHECK: @add28// CHECK: add <4 x i8> {{.*}}, splat (i8 2)9uchar4 add2(uchar4 v)10{11  return v + 2;12}13 14// CHECK: @sub215// CHECK: sub <4 x i8> {{.*}}, splat (i8 2)16uchar4 sub2(uchar4 v)17{18  return v - 2;19}20 21// CHECK: @mul222// CHECK: mul <4 x i8> {{.*}}, splat (i8 2)23uchar4 mul2(uchar4 v)24{25  return v * 2;26}27 28// CHECK: @div229// CHECK: udiv <4 x i8> {{.*}}, splat (i8 2)30uchar4 div2(uchar4 v)31{32  return v / 2;33}34 35typedef __attribute__(( ext_vector_type(4) )) unsigned char uchar4_ext;36 37// CHECK: @div3_ext38// CHECK: udiv <4 x i8> %{{.*}}, splat (i8 3)39uchar4_ext div3_ext(uchar4_ext v)40{41  return v / 3;42}43