diff options
author | Yi Kong <yikong@google.com> | 2019-02-27 14:18:31 -0800 |
---|---|---|
committer | Yi Kong <yikong@google.com> | 2019-02-27 14:18:31 -0800 |
commit | 35c021c49f44cd4e06875c4b1398a2b3464132bb (patch) | |
tree | 972f829a5ed4f0e4a14f0a713b49a8f0db93a26f /test/ELF/msp430.s | |
parent | 958317e226bf38ef5e647d0b056e8e95eb472c70 (diff) | |
parent | 14aa57da0f92683f0b8bdac0acda485a6f73edc7 (diff) | |
download | lld-35c021c49f44cd4e06875c4b1398a2b3464132bb.tar.gz |
Merge 14aa57da0 for LLVM update to 353983
Change-Id: Iee1792355bab030d81eb4cb645257dbac2537641
Diffstat (limited to 'test/ELF/msp430.s')
-rw-r--r-- | test/ELF/msp430.s | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/test/ELF/msp430.s b/test/ELF/msp430.s new file mode 100644 index 000000000..96820acbc --- /dev/null +++ b/test/ELF/msp430.s @@ -0,0 +1,43 @@ +; REQUIRES: msp430 +; RUN: llvm-mc -filetype=obj -triple=msp430-elf -o %t1.o %s +; RUN: echo -e '.global _start\n _start: nop' | llvm-mc -filetype=obj -triple=msp430-elf -o %t2.o - +; RUN: ld.lld -o %t.exe --Tdata=0x2000 --Ttext=0x8000 --defsym=_byte=0x21 %t2.o %t1.o +; RUN: llvm-objdump -s -d %t.exe | 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 + +; RUN: od -x %t.exe | FileCheck -check-prefix=TRAP %s +; TRAP: 4343 4343 4343 4343 4343 4343 4343 4343 |