elf-movt.s   [plain text]


@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi | FileCheck -check-prefix=ASM %s
@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi -filetype=obj -o - | \
@ RUN:    elf-dump --dump-section-data | FileCheck -check-prefix=OBJ %s
	.syntax unified
	.text
	.globl	barf
	.align	2
	.type	barf,%function
barf:                                   @ @barf
@ BB#0:                                 @ %entry
	movw	r0, :lower16:GOT-(.LPC0_2+8)
	movt	r0, :upper16:GOT-(.LPC0_2+8)
.LPC0_2:
@ ASM:          movw    r0, :lower16:(GOT-(.LPC0_2+8))
@ ASM-NEXT:     movt    r0, :upper16:(GOT-(.LPC0_2+8))

@@ make sure that the text section fixups are sane too
@ OBJ:                 '.text'
@ OBJ-NEXT:            'sh_type', 0x00000001
@ OBJ-NEXT:            'sh_flags', 0x00000006
@ OBJ-NEXT:            'sh_addr', 0x00000000
@ OBJ-NEXT:            'sh_offset', 0x00000034
@ OBJ-NEXT:            'sh_size', 0x00000008
@ OBJ-NEXT:            'sh_link', 0x00000000
@ OBJ-NEXT:            'sh_info', 0x00000000
@ OBJ-NEXT:            'sh_addralign', 0x00000004
@ OBJ-NEXT:            'sh_entsize', 0x00000000
@ OBJ-NEXT:            '_section_data', 'f00f0fe3 f40f4fe3'

@ OBJ:              Relocation 0
@ OBJ-NEXT:         'r_offset', 0x00000000
@ OBJ-NEXT:         'r_sym'
@ OBJ-NEXT:         'r_type', 0x2d

@ OBJ:              Relocation 1
@ OBJ-NEXT:         'r_offset', 0x00000004
@ OBJ-NEXT:         'r_sym'
@ OBJ-NEXT:         'r_type', 0x2e