binutils-gdb/ld/testsuite/ld-msp430-elf/valid-map.s
Jozef Lawrynowicz e25de718de MSP430 Linker: Define __crt0_init_bss/__crt0_movedata symbols when .lower or .either prefixed sections are present.
ld	* config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
	symbol when .lower.bss or .either.bss sections exist.
	Define __crt0_movedata when .lower.data or .either.data sections exist.
	* testsuite/gas/msp430/either-data-bss-sym.d: New test.
	* testsuite/gas/msp430/low-data-bss-sym.d: New test.
	* testsuite/gas/msp430/either-data-bss-sym.s: New test source.
	* testsuite/gas/msp430/low-data-bss-sym.s: New test source.
	* testsuite/gas/msp430/msp430.exp: Run new tests.
	Enable large code model when running -mdata-region={upper,either}
	tests.
2019-04-17 15:05:08 +01:00

61 lines
992 B
ArmAsm

.file "tester.c"
.text
.global a
.data
.balign 2
.type a, @object
.size a, 2
a:
.short 5
.text
.balign 2
.global foo
.type foo, @function
foo:
; start of function
; framesize_regs: 0
; framesize_locals: 2
; framesize_outgoing: 0
; framesize: 2
; elim ap -> fp 2
; elim fp -> sp 2
; saved regs:(none)
; start of prologue
SUB.W #2, R1
; end of prologue
MOV.W R12, @R1
MOV.W @R1, R12
ADD.W #-2, R12
MOV.W @R12, R12
CMP.W #0, R12 { JEQ .L2
MOV.B #0, R12
BR #.L3
.L2:
MOV.B #1, R12
.L3:
; start of epilogue
ADD.W #2, R1
RET
.size foo, .-foo
.balign 2
.global main
.type main, @function
main:
; start of function
; framesize_regs: 0
; framesize_locals: 0
; framesize_outgoing: 0
; framesize: 0
; elim ap -> fp 2
; elim fp -> sp 0
; saved regs:(none)
; start of prologue
; end of prologue
MOV.W #a, R12
CALL #foo
; start of epilogue
.refsym __crt0_call_exit
RET
.size main, .-main
.ident "GCC: (jozef) 7.3.2"