[LLD][ELF] - A follow up for r350819 ("Support MSP430") : add a test case missing.
authorGeorge Rimar <grimar@accesssoftek.com>
Thu, 10 Jan 2019 15:34:33 +0000 (15:34 +0000)
committerGeorge Rimar <grimar@accesssoftek.com>
Thu, 10 Jan 2019 15:34:33 +0000 (15:34 +0000)
It got lost for some reason.

llvm-svn: 350833

lld/test/ELF/msp430.s [new file with mode: 0644]

diff --git a/lld/test/ELF/msp430.s b/lld/test/ELF/msp430.s
new file mode 100644 (file)
index 0000000..2d06369
--- /dev/null
@@ -0,0 +1,40 @@
+; REQUIRES: msp430
+; RUN: llvm-mc -filetype=obj -triple=msp430-elf %s -o %t
+; RUN: llvm-mc -filetype=obj -triple=msp430-elf %S/Inputs/msp430.s -o %t2
+; RUN: ld.lld --Tdata=0x2000 --Ttext=0x8000 --defsym=_byte=0x21 %t2 %t -o %t3
+; RUN: llvm-objdump -s -d %t3 | FileCheck %s
+
+;; Check handling of basic msp430 relocation types.
+
+  .text
+  .global foo
+foo:
+;; R_MSP430_10_PCREL
+  jmp _start
+
+; CHECK:      Disassembly of section .text:
+; CHECK-NEXT: _start:
+; CHECK-NEXT: 8000: {{.*}} nop
+; CHECK:      foo:
+; CHECK-NEXT: 8004: {{.*}} jmp $-4
+
+;; R_MSP430_16_BYTE
+  call #_start
+
+; CHECK:      call #32768
+
+;; R_MSP430_16_PCREL_BYTE
+  mov #-1, _start
+
+; CHECK:      800a: {{.*}} mov #-1, -12
+
+  .data
+;; R_MSP430_8
+  .byte _byte
+;; R_MSP430_16
+  .word _start
+;; R_MSP430_32
+  .long _start
+
+; CHECK:      Contents of section .data:
+; CHECK-NEXT: 2000 21008000 800000