aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/MC/AVR/inst-rcall.s
blob: f7818aa9f6e832e5e4ae34c9a497857a8f5d5d47 (plain)
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
; RUN: llvm-mc -triple avr -show-encoding < %s | FileCheck %s
;
; RUN: llvm-mc -filetype=obj -triple avr < %s \
; RUN:     | llvm-objdump -dr - \
; RUN:     | FileCheck --check-prefix=INST %s

foo:
  rcall  .+0
  rcall  .-8
  rcall  .+12
  rcall  .+46
  .short  0xdfea

; CHECK: rcall .Ltmp0+0+2   ; encoding: [A,0b1101AAAA]
; CHECK: rcall .Ltmp1-8+2   ; encoding: [A,0b1101AAAA]
; CHECK: rcall .Ltmp2+12+2  ; encoding: [A,0b1101AAAA]
; CHECK: rcall .Ltmp3+46+2  ; encoding: [A,0b1101AAAA]

; INST-LABEL: <foo>:
; INST-NEXT: ff df    rcall .-2
; INST-NEXT: R_AVR_13_PCREL .text+0x2
; INST-NEXT: ff df    rcall .-2
; INST-NEXT: R_AVR_13_PCREL .text-0x4
; INST-NEXT: ff df    rcall .-2
; INST-NEXT: R_AVR_13_PCREL .text+0x12
; INST-NEXT: ff df    rcall .-2
; INST-NEXT: R_AVR_13_PCREL .text+0x36