X86: When lowering shl_parts, don't emit shift amounts larger than the bit width.
[oota-llvm.git] / test / CodeGen / X86 / pr16807.ll
1 ; RUN: llc < %s -mtriple=x86_64-linux-gnu -mcpu=core-avx-i | FileCheck %s
2
3 define <16 x i16> @f_fu(<16 x i16> %bf) {
4 allocas:
5   %avg.i.i = sdiv <16 x i16> %bf, <i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4, i16 4>
6   ret <16 x i16> %avg.i.i
7 }
8
9 ; CHECK: f_fu
10 ; CHECK: psraw
11 ; CHECK: psrlw
12 ; CHECK: paddw
13 ; CHECK: psraw
14 ; CHECK: psraw
15 ; CHECK: psrlw
16 ; CHECK: paddw
17 ; CHECK: psraw
18 ; CHECK: ret