xref: /llvm-project/llvm/test/CodeGen/AVR/pseudo/LSRWNRd.mir (revision 49b0b5f0fa868bad2622d03e63c79708bf6963fa)
1# RUN: llc -O0 -run-pass=avr-expand-pseudo %s -o - | FileCheck %s
2
3--- |
4  target triple = "avr--"
5  define void @test() {
6  entry:
7    ret void
8  }
9...
10
11---
12name:            test
13body: |
14  bb.0.entry:
15    liveins: $r17r16, $r19r18, $r21r20
16
17    ; CHECK-LABEL: test
18
19    ; CHECK:      $r17 = SWAPRd killed $r17
20    ; CHECK-NEXT: $r16 = SWAPRd killed $r16
21    ; CHECK-NEXT: $r16 = ANDIRdK killed $r16, 15, implicit-def dead $sreg
22    ; CHECK-NEXT: $r16 = EORRdRr killed $r16, $r17, implicit-def dead $sreg
23    ; CHECK-NEXT: $r17 = ANDIRdK $r17, 15, implicit-def dead $sreg
24    ; CHECK-NEXT: $r16 = EORRdRr $r16, $r17, implicit-def $sreg
25    $r17r16 = LSRWNRd $r17r16,  4, implicit-def $sreg
26
27    ; CHECK-NEXT: $r18 = MOVRdRr $r19
28    ; CHECK-NEXT: $r19 = EORRdRr $r19, $r19, implicit-def $sreg
29    $r19r18 = LSRWNRd $r19r18,  8, implicit-def $sreg
30
31    ; CHECK-NEXT: $r20 = MOVRdRr $r21
32    ; CHECK-NEXT: $r20 = SWAPRd killed $r20
33    ; CHECK-NEXT: $r20 = ANDIRdK $r20, 15, implicit-def dead $sreg
34    ; CHECK-NEXT: $r21 = EORRdRr $r21, $r21, implicit-def $sreg
35    $r21r20 = LSRWNRd $r21r20, 12, implicit-def $sreg
36...
37