]> sourceware.org Git - newlib-cygwin.git/commitdiff
* rx/crt0.S: Initialise the PID address register.
authorNick Clifton <nickc@redhat.com>
Fri, 7 Oct 2011 10:09:22 +0000 (10:09 +0000)
committerNick Clifton <nickc@redhat.com>
Fri, 7 Oct 2011 10:09:22 +0000 (10:09 +0000)
(__pid_base): Define weakly.

libgloss/ChangeLog
libgloss/rx/crt0.S

index ff129e66c1080954666a65b86269c5f8362c6f62..88c3c49132a3425154738fac71d5b16b9182ff3b 100644 (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.
index 26955f9914cc9285b9bcf0010b0f22ceb1e557e9..222742352d4830da1c5440a93300b084e8b1bd14 100644 (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
This page took 0.040133 seconds and 5 git commands to generate.