Home | History | Annotate | Download | only in GlobalISel
      1 # RUN: llc -mtriple=amdgcn-mesa-mesa3d -run-pass=legalizer %s -o - | FileCheck %s
      2 
      3 ---
      4 name: test_insert_lo32_i64
      5 body: |
      6   bb.0.entry:
      7     liveins: $vgpr0_vgpr1, $vgpr2
      8 
      9     ; CHECK-LABEL: name: test_insert_lo32_i64
     10     ; CHECK: %2:_(s64) = G_INSERT %0, %1(s32), 0
     11     %0:_(s64) = COPY $vgpr0_vgpr1
     12     %1:_(s32) = COPY $vgpr2
     13     %2:_(s64) = G_INSERT %0, %1, 0
     14     S_ENDPGM implicit %2
     15 ...
     16 ---
     17 name: test_insert_hi32_i64
     18 body: |
     19   bb.0.entry:
     20     liveins: $vgpr0_vgpr1, $vgpr2
     21 
     22     ; CHECK-LABEL: name: test_insert_hi32_i64
     23     ; CHECK: %2:_(s64) = G_INSERT %0, %1(s32), 32
     24     %0:_(s64) = COPY $vgpr0_vgpr1
     25     %1:_(s32) = COPY $vgpr2
     26     %2:_(s64) = G_INSERT %0, %1, 32
     27     S_ENDPGM implicit %2
     28 ...
     29 
     30 ---
     31 name: test_insert_dword0_i128
     32 body: |
     33   bb.0.entry:
     34     liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4
     35 
     36     ; CHECK-LABEL: name: test_insert_dword0_i128
     37     ; CHECK: %2:_(s128) = G_INSERT %0, %1(s32), 0
     38     %0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3
     39     %1:_(s32) = COPY $vgpr4
     40     %2:_(s128) = G_INSERT %0, %1, 0
     41     S_ENDPGM implicit %2
     42 ...
     43 
     44 ---
     45 name: test_insert_dword1_i128
     46 body: |
     47   bb.0.entry:
     48     liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4
     49 
     50     ; CHECK-LABEL: name: test_insert_dword1_i128
     51     ; CHECK: %2:_(s128) = G_INSERT %0, %1(s32), 32
     52     %0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3
     53     %1:_(s32) = COPY $vgpr4
     54     %2:_(s128) = G_INSERT %0, %1, 32
     55     S_ENDPGM implicit %2
     56 ...
     57 
     58 ---
     59 name: test_insert_dword2_i128
     60 body: |
     61   bb.0.entry:
     62     liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4
     63 
     64     ; CHECK-LABEL: name: test_insert_dword2_i128
     65     ; CHECK: %2:_(s128) = G_INSERT %0, %1(s32), 64
     66     %0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3
     67     %1:_(s32) = COPY $vgpr4
     68     %2:_(s128) = G_INSERT %0, %1, 64
     69     S_ENDPGM implicit %2
     70 ...
     71 
     72 ---
     73 name: test_insert_dword3_i128
     74 body: |
     75   bb.0.entry:
     76     liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4
     77 
     78     ; CHECK-LABEL: name: test_insert_dword3_i128
     79     ; CHECK: %2:_(s128) = G_INSERT %0, %1(s32), 96
     80     %0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3
     81     %1:_(s32) = COPY $vgpr4
     82     %2:_(s128) = G_INSERT %0, %1, 96
     83     S_ENDPGM implicit %2
     84 ...
     85 ---
     86 name: test_insert_dword0_i96
     87 body: |
     88   bb.0.entry:
     89     liveins: $vgpr0_vgpr1_vgpr2, $vgpr3
     90 
     91     ; CHECK-LABEL: name: test_insert_dword0_i96
     92     ; CHECK: %2:_(s96) = G_INSERT %0, %1(s32), 0
     93     %0:_(s96) = COPY $vgpr0_vgpr1_vgpr2
     94     %1:_(s32) = COPY $vgpr3
     95     %2:_(s96) = G_INSERT %0, %1, 0
     96     S_ENDPGM implicit %2
     97 ...
     98 ---
     99 name: test_insert_dword1_i96
    100 body: |
    101   bb.0.entry:
    102     liveins: $vgpr0_vgpr1_vgpr2, $vgpr3
    103 
    104     ; CHECK-LABEL: name: test_insert_dword1_i96
    105     ; CHECK: %2:_(s96) = G_INSERT %0, %1(s32), 32
    106     %0:_(s96) = COPY $vgpr0_vgpr1_vgpr2
    107     %1:_(s32) = COPY $vgpr3
    108     %2:_(s96) = G_INSERT %0, %1, 32
    109     S_ENDPGM implicit %2
    110 ...
    111 ---
    112 name: test_insert_dword2_i96
    113 body: |
    114   bb.0.entry:
    115     liveins: $vgpr0_vgpr1_vgpr2, $vgpr3
    116 
    117     ; CHECK-LABEL: name: test_insert_dword2_i96
    118     ; CHECK: %2:_(s96) = G_INSERT %0, %1(s32), 64
    119     %0:_(s96) = COPY $vgpr0_vgpr1_vgpr2
    120     %1:_(s32) = COPY $vgpr3
    121     %2:_(s96) = G_INSERT %0, %1, 64
    122     S_ENDPGM implicit %2
    123 ...
    124