xref: /llvm-project/llvm/test/MC/AVR/inst-sts-tiny.s (revision 7a45b13cd726d04139006fa9aea32940d3158b0f)
1; RUN: llvm-mc -triple avr -mattr=sram,tinyencoding -show-encoding < %s | FileCheck %s
2; RUN: llvm-mc -filetype=obj -triple avr -mattr=sram,tinyencoding < %s | llvm-objdump --no-print-imm-hex -dr --mattr=sram,tinyencoding - | FileCheck -check-prefix=CHECK-INST %s
3
4foo:
5  sts 3,        r16
6  sts 127,      r17
7  sts SYMBOL+1, r25
8  sts x,        r25
9  sts r25+1,    r25
10
11; CHECK:  sts 3,        r16           ; encoding: [0x03,0xa8]
12; CHECK:  sts 127,      r17           ; encoding: [0x1f,0xaf]
13; CHECK:  sts SYMBOL+1, r25           ; encoding: [0x90'A',0xa8'A']
14; CHECK:                              ; fixup A - offset: 0, value: SYMBOL+1, kind: fixup_lds_sts_16
15; CHECK:  sts x,        r25           ; encoding: [0x90'A',0xa8'A']
16; CHECK:                              ; fixup A - offset: 0, value: x, kind: fixup_lds_sts_16
17; CHECK:  sts r25+1,    r25           ; encoding: [0x90'A',0xa8'A']
18; CHECK:                              ; fixup A - offset: 0, value: r25+1, kind: fixup_lds_sts_16
19
20; CHECK-INST: sts 3,   r16
21; CHECK-INST: sts 127, r17
22; CHECK-INST: sts 0,   r25
23; CHECK-INST:     R_AVR_LDS_STS_16 SYMBOL+0x1
24; CHECK-INST: sts 0,   r25
25; CHECK-INST:     R_AVR_LDS_STS_16 x
26; CHECK-INST: sts 0,   r25
27; CHECK-INST:     R_AVR_LDS_STS_16 r25+0x1
28