1 ; RUN: llc < %s -march=x86 | FileCheck %s -check-prefix=X32
2 ; RUN: llc < %s -march=x86-64 | FileCheck %s -check-prefix=X64
4 ; DAGCombiner crashes during sext folding
6 define <2 x i256> @test_sext1() {
7 %Se = sext <2 x i8> <i8 -100, i8 -99> to <2 x i256>
8 %Shuff = shufflevector <2 x i256> zeroinitializer, <2 x i256> %Se, <2 x i32> <i32 1, i32 3>
11 ; X64-LABEL: test_sext1
17 ; X32-LABEL: test_sext1
28 define <2 x i256> @test_sext2() {
29 %Se = sext <2 x i128> <i128 -2000, i128 -1999> to <2 x i256>
30 %Shuff = shufflevector <2 x i256> zeroinitializer, <2 x i256> %Se, <2 x i32> <i32 1, i32 3>
33 ; X64-LABEL: test_sext2
37 ; X64-NEXT: movq $-1999
39 ; X32-LABEL: test_sext2
47 ; X32-NEXT: movl $-1999
50 define <2 x i256> @test_zext1() {
51 %Se = zext <2 x i8> <i8 -1, i8 -2> to <2 x i256>
52 %Shuff = shufflevector <2 x i256> zeroinitializer, <2 x i256> %Se, <2 x i32> <i32 1, i32 3>
55 ; X64-LABEL: test_zext1
61 ; X32-LABEL: test_zext1
72 define <2 x i256> @test_zext2() {
73 %Se = zext <2 x i128> <i128 -1, i128 -2> to <2 x i256>
74 %Shuff = shufflevector <2 x i256> zeroinitializer, <2 x i256> %Se, <2 x i32> <i32 1, i32 3>
77 ; X64-LABEL: test_zext2
83 ; X32-LABEL: test_zext2