llvm-project

Форк
0
/
test_insert_subreg.mir 
36 строк · 1.2 Кб
1
#RUN: not --crash llc -mtriple=aarch64 -o - -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
2
# REQUIRES: aarch64-registered-target
3

4
---
5
name:            test_insert_subreg
6
legalized:       true
7
regBankSelected: false
8
selected:        false
9
tracksRegLiveness: true
10
liveins:
11
body:             |
12
  bb.0:
13
    liveins: $s0, $h1, $q2
14

15
    %0:fpr32 = COPY $s0
16

17
    ; FIXME: we can't diagnose this case because the ARM backend treats fp16
18
    ; values as being ssub regs, creating a contradiction in the sizes.
19
    ; CHECK-NOT: *** Bad machine code:
20
    %1:fpr128 = IMPLICIT_DEF
21
    %2:fpr128 = INSERT_SUBREG %1:fpr128, %0:fpr32, %subreg.hsub
22

23
    ; CHECK: *** Bad machine code: INSERT_SUBREG expected inserted value to have equal or lesser size than the subreg it was inserted into ***
24
    %3:fpr128 = IMPLICIT_DEF
25
    %4:fpr128 = INSERT_SUBREG %3:fpr128, %0:fpr32, %subreg.dsub
26

27
    ; CHECK-NOT: *** Bad machine code:
28
    %7:fpr128 = IMPLICIT_DEF
29
    %8:fpr128 = INSERT_SUBREG %7:fpr128, %0:fpr32, %subreg.ssub
30

31
    ; CHECK-NOT: *** Bad machine code:
32
    %9:fpr128 = COPY $q2
33
    %10:fpr128 = IMPLICIT_DEF
34
    %11:fpr128 = INSERT_SUBREG %10:fpr128, %9.ssub, %subreg.ssub
35

36
...
37

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.