Home | History | Annotate | Download | only in X86
      1 ; RUN: llc < %s -march=x86-64 | FileCheck %s
      2 
      3 define <2 x i256> @test_shl(<2 x i256> %In) {
      4   %Amt = insertelement <2 x i256> undef, i256 -1, i32 0
      5   %Out = shl <2 x i256> %In, %Amt
      6   ret <2 x i256> %Out
      7 
      8   ; CHECK-LABEL: test_shl
      9   ; CHECK:       movq $0
     10   ; CHECK-NEXT:  movq $0
     11   ; CHECK-NEXT:  movq $0
     12   ; CHECK-NEXT:  movq $0
     13   ; CHECK-NEXT:  movq $0
     14   ; CHECK-NEXT:  movq $0
     15   ; CHECK-NEXT:  movq $0
     16   ; CHECK-NEXT:  movq $0
     17   ; CHECK:       retq
     18 }
     19 
     20 define <2 x i256> @test_srl(<2 x i256> %In) {
     21   %Amt = insertelement <2 x i256> undef, i256 -1, i32 0
     22   %Out = lshr <2 x i256> %In, %Amt
     23   ret <2 x i256> %Out
     24 
     25   ; CHECK-LABEL: test_srl
     26   ; CHECK:       movq $0
     27   ; CHECK-NEXT:  movq $0
     28   ; CHECK-NEXT:  movq $0
     29   ; CHECK-NEXT:  movq $0
     30   ; CHECK-NEXT:  movq $0
     31   ; CHECK-NEXT:  movq $0
     32   ; CHECK-NEXT:  movq $0
     33   ; CHECK-NEXT:  movq $0
     34   ; CHECK:       retq
     35 }
     36 
     37 define <2 x i256> @test_sra(<2 x i256> %In) {
     38   %Amt = insertelement <2 x i256> undef, i256 -1, i32 0
     39   %Out = ashr <2 x i256> %In, %Amt
     40   ret <2 x i256> %Out
     41 
     42   ; CHECK-LABEL: test_sra
     43   ; CHECK:       sarq $63
     44 }
     45