* rx/crt0.S: Initialise the PID address register.

(__pid_base): Define weakly.
This commit is contained in:
Nick Clifton 2011-10-07 10:09:22 +00:00
parent 7bbfea993a
commit fe81c303e0
2 changed files with 25 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2011-10-07 Nick Clifton <nickc@redhat.com>
* rx/crt0.S: Initialise the PID address register.
(__pid_base): Define weakly.
2011-09-29 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* arm/crt0.s: Support 0 heap base response from HeapInfo syscall.

View File

@ -1,4 +1,4 @@
/* Copyright (c) 2008, 2009 Red Hat Incorporated.
/* Copyright (c) 2008, 2009, 2011 Red Hat Incorporated.
All rights reserved.
Redistribution and use in source and binary forms, with or without
@ -50,11 +50,20 @@ _start:
mov #__bsssize, r3
sstr.l
/* Initialise the small data area pointer.
The register used here must agree with the definition of
GP_BASE_REGNUM in gcc/config/rx/rx.h. */
/* Initialize data pointer register(s).
Note: The registers used here should agree with the definition of
GP_BASE_REGNUM in gcc/config/rx/rx.h.
Note: We are assuming that -mint-register has not been used when
compiling the application. */
#ifdef _RX_PID
/* Initialise the constant data pointer and small data pointers. */
mov #__pid_base, r13
mov #__gp, r12
#else
/* Initialise the small data area pointer. */
mov #__gp, r13
#endif
bsr.a __rx_init
#ifdef PROFILE_SUPPORT /* Defined in gcrt0.S. */
@ -129,6 +138,12 @@ __rx_init:
__rx_fini:
bsr.a _rx_run_fini_array
.section .rodata
.balign 4
.global __pid_base
.weak __pid_base
__pid_base:
.section .sdata
.balign 4
.global __gp