[ARM] Generate 8.1-m CSINC, CSNEG and CSINV instructions.
[llvm-core.git] / test / CodeGen / Thumb2 / 2013-03-06-vector-sext-operand-scalarize.ll
blob974fade64f0b8df2de35c964848ed59f17b68eef
1 ; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s
3 ; Testing that these don't crash/assert. The loop vectorizer can end up
4 ; with odd constructs like this. The code actually generated is incidental.
5 define <1 x i64> @test_zext(i32 %a) nounwind {
6 ; CHECK-LABEL: test_zext:
7   %Cmp = icmp uge i32 %a, 42
8   %vec = insertelement <1 x i1> zeroinitializer, i1 %Cmp, i32 0
9   %Se = zext <1 x i1> %vec to <1 x i64>
10   ret <1 x i64> %Se
13 define <1 x i64> @test_sext(i32 %a) nounwind {
14 ; CHECK-LABEL: test_sext:
15   %Cmp = icmp uge i32 %a, 42
16   %vec = insertelement <1 x i1> zeroinitializer, i1 %Cmp, i32 0
17   %Se = sext <1 x i1> %vec to <1 x i64>
18   ret <1 x i64> %Se