Home | History | Annotate | Download | only in PowerPC
      1 ; RUN: llc -O0 -fast-isel=false -mcpu=ppc64 < %s | FileCheck %s
      2 
      3 target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v128:128:128-n32:64"
      4 target triple = "powerpc64le-unknown-linux-gnu"
      5 
      6 define <16 x i8> @foo() nounwind ssp {
      7   %1 = shufflevector <16 x i8> <i8 0, i8 1, i8 2, i8 3, i8 4, i8 5, i8 6, i8 7, i8 8, i8 9, i8 10, i8 11, i8 12, i8 13, i8 14, i8 15>, <16 x i8> <i8 16, i8 17, i8 18, i8 19, i8 20, i8 21, i8 22, i8 23, i8 24, i8 25, i8 26, i8 27, i8 28, i8 29, i8 30, i8 31>, <16 x i32> <i32 0, i32 5, i32 10, i32 15, i32 20, i32 25, i32 30, i32 3, i32 8, i32 13, i32 18, i32 23, i32 28, i32 1, i32 6, i32 11>
      8   ret <16 x i8> %1
      9 }
     10 
     11 ; CHECK: .LCPI0_0:
     12 ; CHECK: .byte 31
     13 ; CHECK: .byte 26
     14 ; CHECK: .byte 21
     15 ; CHECK: .byte 16
     16 ; CHECK: .byte 11
     17 ; CHECK: .byte 6
     18 ; CHECK: .byte 1
     19 ; CHECK: .byte 28
     20 ; CHECK: .byte 23
     21 ; CHECK: .byte 18
     22 ; CHECK: .byte 13
     23 ; CHECK: .byte 8
     24 ; CHECK: .byte 3
     25 ; CHECK: .byte 30
     26 ; CHECK: .byte 25
     27 ; CHECK: .byte 20
     28 ; CHECK: .LCPI0_1:
     29 ; CHECK: .byte 0
     30 ; CHECK: .byte 1
     31 ; CHECK: .byte 2
     32 ; CHECK: .byte 3
     33 ; CHECK: .byte 4
     34 ; CHECK: .byte 5
     35 ; CHECK: .byte 6
     36 ; CHECK: .byte 7
     37 ; CHECK: .byte 8
     38 ; CHECK: .byte 9
     39 ; CHECK: .byte 10
     40 ; CHECK: .byte 11
     41 ; CHECK: .byte 12
     42 ; CHECK: .byte 13
     43 ; CHECK: .byte 14
     44 ; CHECK: .byte 15
     45 ; CHECK: .LCPI0_2:
     46 ; CHECK: .byte 16
     47 ; CHECK: .byte 17
     48 ; CHECK: .byte 18
     49 ; CHECK: .byte 19
     50 ; CHECK: .byte 20
     51 ; CHECK: .byte 21
     52 ; CHECK: .byte 22
     53 ; CHECK: .byte 23
     54 ; CHECK: .byte 24
     55 ; CHECK: .byte 25
     56 ; CHECK: .byte 26
     57 ; CHECK: .byte 27
     58 ; CHECK: .byte 28
     59 ; CHECK: .byte 29
     60 ; CHECK: .byte 30
     61 ; CHECK: .byte 31
     62 ; CHECK: foo:
     63 ; CHECK: addis [[REG1:[0-9]+]], 2, .LCPI0_2@toc@ha
     64 ; CHECK: addi [[REG2:[0-9]+]], [[REG1]], .LCPI0_2@toc@l
     65 ; CHECK: lvx [[REG3:[0-9]+]], 0, [[REG2]]
     66 ; CHECK: vperm {{[0-9]+}}, [[REG3]], {{[0-9]+}}, {{[0-9]+}}
     67