File: inst-st.s

package info (click to toggle)
llvm-toolchain-15 1%3A15.0.6-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,554,644 kB
  • sloc: cpp: 5,922,452; ansic: 1,012,136; asm: 674,362; python: 191,568; objc: 73,855; f90: 42,327; lisp: 31,913; pascal: 11,973; javascript: 10,144; sh: 9,421; perl: 7,447; ml: 5,527; awk: 3,523; makefile: 2,520; xml: 885; cs: 573; fortran: 567
file content (94 lines) | stat: -rw-r--r-- 2,038 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
; RUN: llvm-mc -triple avr -mattr=sram -show-encoding < %s | FileCheck %s
; RUN: llvm-mc -filetype=obj -triple avr -mattr=sram < %s \
; RUN:     | llvm-objdump -d --mattr=sram - | FileCheck --check-prefix=INST %s


foo:
  ; Normal

  st X,  r10
  st X,  r17

  st Y,  r30
  st Y,  r19

  st Z,  r10
  st Z,  r2

  ; Postincrement

  st X+,  r10
  st X+,  r17

  st Y+,  r30
  st Y+,  r19

  st Z+,  r10
  st Z+,  r2

  ; Predecrement

  st -X,  r10
  st -X,  r17

  st -Y,  r30
  st -Y,  r19

  st -Z,  r10
  st -Z,  r2

; Normal

; CHECK: st X,   r10                  ; encoding: [0xac,0x92]
; CHECK: st X,   r17                  ; encoding: [0x1c,0x93]

; CHECK: st Y,   r30                  ; encoding: [0xe8,0x83]
; CHECK: st Y,   r19                  ; encoding: [0x38,0x83]

; CHECK: st Z,   r10                  ; encoding: [0xa0,0x82]
; CHECK: st Z,   r2                   ; encoding: [0x20,0x82]


; Postincrement

; CHECK: st X+,  r10                  ; encoding: [0xad,0x92]
; CHECK: st X+,  r17                  ; encoding: [0x1d,0x93]

; CHECK: st Y+,  r30                  ; encoding: [0xe9,0x93]
; CHECK: st Y+,  r19                  ; encoding: [0x39,0x93]

; CHECK: st Z+,  r10                  ; encoding: [0xa1,0x92]
; CHECK: st Z+,  r2                   ; encoding: [0x21,0x92]


; Predecrement

; CHECK: st -X,  r10                  ; encoding: [0xae,0x92]
; CHECK: st -X,  r17                  ; encoding: [0x1e,0x93]

; CHECK: st -Y,  r30                  ; encoding: [0xea,0x93]
; CHECK: st -Y,  r19                  ; encoding: [0x3a,0x93]

; CHECK: st -Z,  r10                  ; encoding: [0xa2,0x92]
; CHECK: st -Z,  r2                   ; encoding: [0x22,0x92]

; INST: st X, r10
; INST: st X, r17
; INST: std Y+0, r30
; INST: std Y+0, r19
; INST: std Z+0, r10
; INST: std Z+0, r2

; INST: st X+, r10
; INST: st X+, r17
; INST: st Y+, r30
; INST: st Y+, r19
; INST: st Z+, r10
; INST: st Z+, r2

; INST: st -X, r10
; INST: st -X, r17
; INST: st -Y, r30
; INST: st -Y, r19
; INST: st -Z, r10
; INST: st -Z, r2